(ucs-set-table-for-input): Disable when using unify-on-decoding.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
a8a1c0ee
RS
12005-04-16 Richard M. Stallman <rms@gnu.org>
2
3 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
4 (set_message): Call with_echo_area_buffer with WHICH = 0.
5 (set_message_1): Erase the echo area buffer first thing.
6 (echo_area_display): Don't clear echo_message_buffer.
7
f3cf04d3
YM
82005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9
10 * Makefile.in (mac.o): Depend on charset.h and coding.h.
11
12 * mac.c: Include charset.h and coding.h.
13 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
14 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New
15 function.
16 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
17
18 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
19
20 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
21
22 * macterm.c (x_autoselect_window_p): Remove variable.
23 (last_window): New variable.
24 (XTreassert_line_highlight, x_change_line_highlight): Remove
25 declarations.
26 (mac_focus_changed, x_detect_focus_change): New functions and
27 declarations.
28 (XTextExtents16, front_emacs_window): Remove function.
29 (mac_focus_frame): New function.
30 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
31 (mac_check_for_quit_char): Use it instead of front_emacs_window.
32 (x_scroll_bar_report_motion): Obtain window from control owner.
33 (x_make_frame_invisible): Set window manager size hint.
34 (do_mouse_moved): Remove function.
35 (XTread_socket): Move its contents here. Generate select-window
36 event on mouse movement if needed. Use x_detect_focus_change on
37 activate/deactivate events. Don't deiconify frame or invalidate
38 window rectangle when dnd items are dropped. Don't
39 activate/deactivate root control.
40 (frame_highlight, frame_unhighlight): Activate/deactivate root
41 control here.
42 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
43
44 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
45 New extern.
46
9e5b2858
LT
472005-04-15 Luc Teirlinck <teirllm@auburn.edu>
48
49 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
50 (lisp): Use it.
51 (SOME_MACHINE_LISP): Add tooltip.
52
42c6741e
YM
532005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
54
55 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h. Don't
56 include TextEncodingConverter.h.
57 (mac_system_script_code, Vmac_system_locale): New variables.
58 (syms_of_mac): Defvar them.
59 (mac_get_system_locale): New function.
60
61 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]: Use
62 ENCODE_SYSTEM to encode title bar string.
63 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
64 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]: Use
65 CFStringGetSystemEncoding to get system default string encoding.
66
67 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
68 TextEncodingConverter.h.
69
0614c575
ST
702005-04-13 Steven Tamm <steventamm@mac.com>
71
7e26f91b
KS
72 * macterm.c (syms_of_macterm): Remove redundant definition of
73 mac-pass-control-to-system.
0614c575 74
203eb0aa
SM
752005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
76
77 * window.c (Fset_window_configuration): Be careful when you choose
78 among several possible points for the new_current_buffer.
79
a56e6111
YM
802005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
81
82 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
83 poll_for_input_1. Set interrupt_input_pending to 1 instead.
b7461be9
YM
84 (Qlanguage_change) [MAC_OS]: New variable.
85 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
203eb0aa 86 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
b7461be9
YM
87
88 * macterm.c (mac_keyboard_text_encoding)
89 (current_mac_keyboard_text_encoding): Remove variables.
7e26f91b
KS
90 (XTread_socket): Store language-change event if keyboard script change
91 is detected. Don't convert input to `mac_keyboard_text_encoding'.
203eb0aa 92 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
b7461be9 93
7e26f91b 94 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
a56e6111 95
6695c528
RS
962005-04-10 Richard M. Stallman <rms@gnu.org>
97
98 * emacs.c (standard_args): Rename --bare-bones to --quick.
99 Add -D aka --basic-display.
100
101 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
102
18e2d91f
RS
1032005-04-09 Richard M. Stallman <rms@gnu.org>
104
105 * keymap.c (where_is_internal): Convert a string used as event type
106 into "(any string)".
107
108 * lread.c (Vloads_in_progress): Not static.
109
110 * fns.c (Vloads_in_progress): Add extern.
111 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
112
1132005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
114
115 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
116
1cf21850
LK
1172005-04-09 Lute Kamstra <lute@gnu.org>
118
119 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
120 within the accessible part of the buffer.
121
bfd93240
KS
1222005-04-09 Kim F. Storm <storm@cua.dk>
123
124 * lread.c (readevalloop): Add args START and END as region in
125 current buffer to read. Callers changed.
126 When specified, narrow to this region only when reading,
127 not during eval. Track next point to read from during eval.
128 Also restore point to "real" buffer position before eval.
129 (Feval_region): Don't save excursion and restriction here, and
130 don't narrow to region. Just pass region to readevalloop.
131 Note: Point is now preserved even when PRINTFLAG is nil.
132
9ba27690
KS
1332005-04-08 Kim F. Storm <storm@cua.dk>
134
135 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
136
73f0d996
KS
1372005-04-06 Kim F. Storm <storm@cua.dk>
138
139 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
140
369f76bb
YM
1412005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
142
143 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
144 (Fmac_get_preference): Doc fix.
145
203eb0aa
SM
146 * macfns.c (Fx_create_frame, x_create_tip_frame):
147 Add "fontset-mac" to fallback font/fontsets.
369f76bb 148
2ba613a6
KS
1492005-04-04 Kim F. Storm <storm@cua.dk>
150
4d5ddddc
KS
151 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
152
2ba613a6
KS
153 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
154 Call it again after autoload.
155
1673df2e
JD
1562005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
157
158 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
159 mallopt.
160
161 * ralloc.c (r_alloc_init): Ditto.
162
41639988
KH
1632005-04-01 Kenichi Handa <handa@m17n.org>
164
1cf21850
LK
165 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
166 (Vascii_eqv_table): Extern them.
41639988
KH
167
168 * casetab.c (set_case_table): If standard is nonzero, setup
169 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
170
171 * search.c (looking_at_1): Use current_buffer->case_canon_table,
172 not DOWNCASE_TABLE.
173 (string_match_1): Likewise.
174 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
175 Vascii_downcase_table.
176 (fast_string_match_ignore_case): Likewise.
177 (search_buffer): Fix checking of boyer-moore usability.
203eb0aa
SM
178 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
179 No need of tranlating characters in PAT. Fix calculation of
41639988
KH
180 simple_translate.
181
6ca53601
SM
1822005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
183
184 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
185 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
186 Use XtNtopShadowPixel and XtNbottomShadowPixel.
187 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
188 really work and that breaks with some versions of Xaw3d.
189
fafbb99d 1902005-03-31 Kenichi Handa <handa@m17n.org>
bf762c98
KH
191
192 * coding.c (syms_of_coding): Fix previous change.
193
6ca53601
SM
1942005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
195
196 * fileio.c (search_embedded_absfilename): Fix last change.
197
bf762c98
KH
1982005-03-25 Kenichi Handa <handa@m17n.org>
199
200 * coding.c (syms_of_coding): Suggest to use set-coding-category in
201 the docstring of coding-category-list.
202
f793f885
KS
2032005-03-31 Kim F. Storm <storm@cua.dk>
204
205 * keyboard.c (Qmouse_fixup_help_message): New var.
206 (syms_of_keyboard): Intern and staticpro it.
207 (show_help_echo): Apply mouse-fixup-help-message to help string.
208
c364fe19
KS
2092005-03-30 Kim F. Storm <storm@cua.dk>
210
211 * xdisp.c (display_line): Allow multiple overlay arrows in window.
212
c70a4df6
SM
2132005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
214
215 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
216 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
217 (Ffile_name_absolute_p): Use it.
218 (search_embedded_absfilename): New fun, extracted from
219 Fsubstitute_in_file_name. Use file_name_absolute_p.
220 Free the pw data after use.
221 (Fsubstitute_in_file_name): Use it.
222 After cutting a prefix, re-check file-name-handler.
223
6e7d0438
JR
2242005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
225
6ca53601 226 * w32term.h (x_output): Add focus_state.
6e7d0438
JR
227
228 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
229 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
230
65671706
SM
2312005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
232
233 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
234 Use Fexit_minibuffer.
235 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
236
0de4dad4
SM
2372005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
238
781da985
SM
239 * dired.c (Ffile_attributes): Add a missing gcpro.
240
0de4dad4
SM
241 * alloc.c (make_number): The arg can be bigger than `int'.
242 * lisp.h (make_number): Make prototype more precise.
243
244 * process.c, dired.c (Vfile_name_coding_system)
245 (Vdefault_file_name_coding_system):
246 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
247 (Vdefault_file_name_coding_system): Remove unused declarations.
248
ff18668f
JD
2492005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
250
251 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
252 if it failed to pop up (Gnome "show pointer on ctrl" option makes
253 menus fail to pop up).
254
0de4dad4 2552005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
66347da7
SM
256
257 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
0de4dad4 258 Just prepend a backslash without replacing the NBSP by an SPC.
66347da7 259
8df0ffbe
KS
2602005-03-22 Kim F. Storm <storm@cua.dk>
261
262 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
263 * dispextern.h (lookup_derived_face): Fix prototype.
264 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
265
266 * xdisp.c (handle_single_display_spec): Derive left-fringe and
267 right-fringe face from fringe face.
268
269 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
270 Derive face from fringe face.
271
6ca30ba4
JD
2722005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
273
274 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
275
d615870a
DK
2762005-03-22 David Kastrup <dak@gnu.org>
277
278 * textprop.c (Fnext_char_property_change)
66347da7 279 (Fprevious_char_property_change): Allow marker as limit.
d615870a
DK
280 (Fnext_single_char_property_change)
281 (Fprevious_single_char_property_change): Check that limit is a
282 number in strings.
283 (Fnext_single_char_property_change): Coerce position to integer.
284 (Fprevious_single_char_property_change): Same here.
285
32b939ea
TTN
2862005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
287
288 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
289
6027e473
SM
2902005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
291
292 * frame.c (Fignore_event): Remove.
293 (syms_of_frame): Don't defsubr it.
294
295 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
296 redundant `ignore-event'.
297
730f4d72
EZ
2982005-03-19 Eli Zaretskii <eliz@gnu.org>
299
300 * unexec.c (write_segment, unexec): Move these functions to avoid
301 forward references (which cause errors with "gcc -gcoff").
302
c7f6afd5
JD
3032005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
304
6027e473 305 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
9188be47 306 that it doesn't become "tooltip". The specbind is enough.
8d5980cf 307
c7f6afd5
JD
308 * xrdb.c (x_load_resources): Use different char *helv when I18N
309 is present.
310
db328182
KH
3112005-03-17 Kenichi Handa <handa@m17n.org>
312
66347da7 313 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
db328182 314
211f2210
SM
3152005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
316
317 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
318 Use xic_create_fontsetname even for non-Motif menus.
319 Don't forget to free the fontsetname.
320
321 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
322
c7bd5d57
RS
3232005-03-17 Richard M. Stallman <rms@gnu.org>
324
325 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
326
327 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
328 (Fmake_symbolic_link): Use G to read the new file name.
329
330 * callint.c (Finteractive): Document G option.
331 (Fcall_interactively): Implement G option.
332
333 * buffer.c (buffer_lisp_local_variables): New function,
334 broken out from Fbuffer_local_variables.
335 (clone_per_buffer_values): Use buffer_lisp_local_variables.
336
888953f1
SM
3372005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
338
3c916d65
SM
339 * xfns.c (xic_create_fontsetname): Add `motif' argument.
340 Always return a freshly allocated string.
341 (xic_create_xfontset): Adjust call.
342
343 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
344 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
345 (dump_realized_face): Fix warning.
346
9f9e5275
SM
347 * emacs.c (Fkill_emacs): YAILOM.
348
888953f1
SM
349 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
350
48502d68
YM
3512005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
352
353 * mac.c (HASHKEY_TERMINAL): Remove.
354 (HASHKEY_MAX_NID): New macro.
355 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
356 argument.
888953f1 357 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
48502d68
YM
358 (xrm_create_database, xrm_q_put_resource)
359 (xrm_merge_string_database, xrm_q_get_resource_1)
360 (xrm_q_get_resource): Change resource database representation so
361 that it may not use multiple hash tables for a single database.
362 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
363
d5161e8c
SM
3642005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
365
11a646cd
SM
366 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
367
368 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
369 locale-coding-system, as was already done for WINDOWSNT.
370
d5161e8c
SM
371 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
372 translation for chars in the 0-255 range.
373
568b6e41
LK
3742005-03-16 Lute Kamstra <lute@gnu.org>
375
376 * floatfns.c (Ffloor): Doc fix.
377
469fb3cf
YM
3782005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
379
380 * mac.c: Include macterm.h instead of directly including Carbon.h.
381 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
382 (Qarray, Qdictionary): New variables.
383 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
384 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
385 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
386 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
387 in callback for CFDictionaryApplyFunction.
388 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
389 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
390 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
391 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
392 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
393 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
394 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
3d454340 395 (skip_white_space, parse_comment, parse_include_file)
469fb3cf
YM
396 (parse_binding, parse_component, parse_resource_name, parse_value)
397 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
398 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
d5161e8c
SM
399 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
400 New functions.
469fb3cf
YM
401
402 * macfns.c (mac_get_rdb_resource): Remove function.
403 (x_get_string_resource): Use xrm_get_resource.
404
405 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
406
407 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
408 name_list_element.
409 (mac_make_rdb): Create resource database from preferences and
410 argument string.
411 (mac_term_init): Save resource database to cddr part of
412 name_list_element.
413
414 * macterm.h (xrm_merge_string_database, xrm_get_resource)
415 (xrm_get_preference_database): Add externs.
416 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
417 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
418 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
419
420 * process.c (init_process): Change `#ifdef DARWIN' to `#if
421 defined (DARWIN) || defined (MAC_OSX)'
422
423 * s/darwin.h (DARWIN): Don't define.
424
6a3fac90
YM
4252005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
426
427 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
428 Remove unused variables.
429 (syms_of_macfns): Don't initialize them. Likewise for
430 Qface_set_after_frame_default. Defvar and initialize
431 Vx_window_horizontal_drag_shape.
432 (x_set_mouse_color): Change mouse pointer shape.
433 (mac_window) [!MAC_OSX]: Create root control.
469fb3cf 434 (Fx_create_frame): Remove initializations of mouse pointer shapes.
6a3fac90
YM
435 (hourglass_started): New function (from xfns.c).
436 (start_hourglass, cancel_hourglass): Put function body in #ifdef
437 MAC_OSX.
438 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
439 indicator for each non-tooltip frame if needed, and show it.
d5161e8c 440 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
6a3fac90
YM
441
442 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
443 Controls.h. Use ThemeCursor instead of CursHandle.
444
d5161e8c
SM
445 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
446 Remove functions and declarations.
447 (mac_set_colors): Take argument for saving background color.
448 All callers changed.
6a3fac90
YM
449 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
450 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
451 background color.
452 (x_update_end, mac_do_track_drag): Don't reset background color.
d5161e8c
SM
453 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
454 Use SetThemeCursor.
6a3fac90
YM
455 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
456 indicator control to the upper-right corner of the window.
457 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
458 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
459 (do_window_update): Update controls after updating content area.
460 (mac_handle_window_event): Remove unused extern.
461 (XTread_socket): Check both control handle and control part code
462 to determine whether a scroll bar is clicked. Activate/deactivate
463 root control instead of contained scroll bar controls.
464 (make_mac_terminal_frame): Use ThemeCursor constants.
465
d5161e8c
SM
466 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
467 New member hourglass_control.
6a3fac90 468 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
d5161e8c 469 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
6a3fac90 470
a7321976
YM
4712005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
472
473 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
6a3fac90 474 coincides with that in Apple X11 except `clear', `enter' on
a7321976
YM
475 laptops, and fn + `enter' on laptops.
476
f7b758bd
SM
4772005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
478
479 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
480 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
481 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
482
483 * xfns.c (xic_defaut_fontset): New constant.
484 (xic_create_fontsetname): New function.
485 Extracted from create_frame_xic. Try to generate a slightly
486 better fontset.
487 (xic_create_xfontset): Use it.
488 (create_frame_xic): Simplify.
489
dac24db4
SM
4902005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
491
492 * fileio.c (Fmake_symbolic_link): Fix last change.
493
e0402468
RS
4942005-03-11 Richard M. Stallman <rms@gnu.org>
495
496 * fileio.c (Frename_file, Fadd_name_to_file)
497 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
498 expand the basename of FILE relative to it.
499
fa815b14
KH
5002005-03-11 Kenichi Handa <handa@m17n.org>
501
502 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
503 before calling setup_coding_system so that autoloading of a coding
504 system work.
505
817d354b
JD
5062005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
507
68a505ef
JD
508 * xfns.c (hourglass_started): New function.
509
510 * dispextern.h: Declare hourglass_started.
511
512 * keyboard.c (Fexecute_extended_command): Restart hourglass
513 after call to Fcompleting_read if already started.
514
817d354b
JD
515 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
516 GTK main loop is entered in xterm.c, thus doing the redraw.
517
b0a6f45c
KS
5182005-03-10 Kim F. Storm <storm@cua.dk>
519
520 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
521
ee5d57b0
KH
5222005-03-08 Kenichi Handa <handa@m17n.org>
523
524 * frame.c (x_set_font): Call set_default_ascii_font if an
525 available font is found.
526
527 * fontset.c (set_default_ascii_font): New function.
dac24db4 528 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
ee5d57b0
KH
529
530 * fontset.h (set_default_ascii_font): Extern it.
531
f30c4a5c
KS
5322005-03-07 Kim F. Storm <storm@cua.dk>
533
3fb26a86
KS
534 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
535 (clear_image_cache_count): New var.
536 (redisplay_internal): Don't clear face and image caches in the
537 middle of redisplay; do it afterwards.
538
a54595d4
KS
539 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
540
f30c4a5c
KS
541 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
542 is valid. If not, clear phys_cursor_on_p and return.
543
3d182f9d
AS
5442005-03-07 Andreas Schwab <schwab@suse.de>
545
546 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
547
85d964de
RS
5482005-03-06 Richard M. Stallman <rms@gnu.org>
549
550 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
551
552 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
553 (Feval, Ffuncall): Use CHECK_CONS_LIST.
554
555 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
556
557 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
558 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
559
3ff96c81
JL
5602005-03-05 Juri Linkov <juri@jurta.org>
561
562 * emacs.c (USAGE1): Replace Info node name "command arguments"
563 with "emacs invocation".
564 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
565 allow arguments `--color' and `MODE' to be separated by space.
566 Add --no-blinking-cursor, -nbc.
567 (standard_args): Add -nbc, --no-blinking-cursor.
568
64eb0083
TTN
5692005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
570
571 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
572 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
573 * fileio.c (Fexpand_file_name) [VMS]:
574 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
575 * doc.c (munge_doc_file_name) [VMS]: Likewise.
576 (Fsnarf_documentation): Call munge_doc_file_name.
577
ad708ae5
TTN
5782005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
579
580 * s/vms.h (FILE_SYSTEM_CASE): New macro.
581 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
582 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
583
ba025f6d
YM
5842005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
585
586 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
587 defined (MAC_OSX) && defined (HAVE_CARBON)'.
ad708ae5 588
dac24db4 589 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
ba025f6d
YM
590
591 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
592 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
dac24db4 593 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
ba025f6d
YM
594 (mac_clear_font_name_table): Move extern to macterm.h.
595
596 * macfns.c (install_window_handler): Move extern to macterm.h.
597 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
598 valid. Don't check !NILP (dir) because it is already checked with
599 CHECK_STRING.
600 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
dac24db4 601 specifying the default location and obtaining the selected filename.
ba025f6d
YM
602
603 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
604
2313f861 605 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
ba025f6d
YM
606 are included via Carbon.h.
607
dac24db4
SM
608 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
609 Define USE_CARBON_EVENTS to 1.
2313f861 610 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
ba025f6d
YM
611 (x_free_frame_resources): Call remove_window_handler for
612 non-tooltip windows.
613 [TARGET_API_MAC_CARBON]: Don't include headers that are included
614 via Carbon.h.
615 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
616 (mac_do_receive_dragUPP): New variables.
617 (mac_handle_service_event, init_service_handler): Put declarations
618 and definitions in #ifdef MAC_OSX.
619 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
620 drag-and-drop handler functions and register them.
621 (remove_window_handler): New function.
dac24db4
SM
622 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
623 Use fsspec_to_posix_pathname.
ba025f6d
YM
624 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
625 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
dac24db4
SM
626 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
627 Set default cursors.
ba025f6d
YM
628 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
629 init_service_handler or init_quit_char_handler.
630 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
631
632 * macterm.h (install_window_handler, remove_window_handler)
633 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
634 (mac_clear_font_name_table): New externs.
ad708ae5 635
c1558952
TTN
6362005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
637
638 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
639 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
640 (Fexpand_file_name): Likewise.
641
fa439170
TTN
6422005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
643
644 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
645 no longer special-case VMS. Add bogus return value.
646
db2dacf6
KS
6472005-03-02 Kim F. Storm <storm@cua.dk>
648
649 * dispextern.h (XASSERTS): Define to 0 if not already defined.
650 (xassert) [!XASSERTS]: Define dummy version.
651
0870514c
KS
6522005-03-02 Kim F. Storm <storm@cua.dk>
653
654 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
655 Reported by David Kastrup.
656
6b640092
KS
6572005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
658
659 * xdisp.c (get_next_display_element): Fix control and escape
660 glyph from display vector.
661
f4a5a485
SM
6622005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
663
664 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
665
85d964de
RS
6662005-02-27 Richard M. Stallman <rms@gnu.org>
667
668 * xdisp.c (fast_find_position): Rename END to BEG.
669 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
670
6e8db3ea
JD
6712005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
672
f4a5a485 673 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
6e8db3ea
JD
674 gtk_window_resize and x_wm_set_size_hint.
675
0f465b55
KS
6762005-02-25 Kim F. Storm <storm@cua.dk>
677
678 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
679
680 * xdisp.c (init_from_display_pos): Don't read past end of
681 it->overlay_strings array.
682
845a78b4
LK
6832005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
684
685 * buffer.c (syms_of_buffer): Fix typo.
686
b02c3eed
LK
6872005-02-23 Lute Kamstra <lute@gnu.org>
688
689 * buffer.c (Foverlay_buffer): Doc fix.
690
c8500765
KS
6912005-02-22 Kim F. Storm <storm@cua.dk>
692
b686dd59
KS
693 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
694 and symbol keys in alists and hash tables.
695
c8500765
KS
696 * xdisp.c (fast_find_position): Fix search for start of overlay.
697
81c85b53
KS
6982005-02-21 Kim F. Storm <storm@cua.dk>
699
700 * window.c (window_scroll_pixel_based): When scrolling backwards,
701 handle partial visible line at end of window even when we hit PT.
702
f4a5a485 7032005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
9df747e1
SM
704
705 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
706
0dd5a842
KS
7072005-02-21 Kim F. Storm <storm@cua.dk>
708
709 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
710 I think those asserts are bogus if buffer contains invisible text
711 or images.
712
19e05d1f
KS
7132005-02-21 David Kastrup <dak@gnu.org>
714
715 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
716
0fba9f25
KS
7172005-02-20 Kim F. Storm <storm@cua.dk>
718
719 * xdisp.c (pos_visible_p): Be sure to move to the specified
720 position. Always get the full ascent / descent of the
721 corresponding row, to return reliable rtop and rbot values.
722 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
723 Must look one character back, as back_to_previous_line_start
724 returns position after the newline.
725 (move_it_vertically_backward): Fix heuristic for when to move further
726 back in case line_height * 2/3 is larger than window height.
727 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
728 as it does not do anything anymore. Add arg current_matrix_p to
729 use current matrix rather than desired matrix when set.
730 (try_cursor_movement): Don't scroll to make cursor row fully
731 visible if cursor didn't move. This avoids unexpected recentering
732 in case of blinking cursor or accepting process output.
733 Use current matrix to check cursor row visibility.
734 (redisplay_window): Fix whether to recenter or move to top in case
735 cursor line is taller than window height.
736 (find_first_unchanged_at_end_row): Stop search if we reach a row
737 which not enabled (instead of abort).
738
b1c2adc3
KS
7392005-02-18 Kim F. Storm <storm@cua.dk>
740
c2ee48fb
KS
741 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
742 to be nil in a :box attribute value list; customize prints that
743 as lisp value when no box color is specified.
744
b1c2adc3
KS
745 * .gdbinit (pitx, pit): Pretty print display iterator.
746 (prowx, prow): Pretty print glyph row.
747 (pcursorx, pcursor): Pretty print a window cursor.
748 (pwinx, pwin): Pretty print struct window.
749
f102186f
SM
7502005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
751
752 * alloc.c (BLOCK_BYTES): Harmless typo.
753
9b516537
AS
7542005-02-17 Andreas Schwab <schwab@suse.de>
755
756 * xfns.c (hack_wm_protocols): Use correct type for last parameter
757 of XGetWindowProperty to avoid aliasing issues.
758 (Fx_window_property): Likewise.
759
760 * xselect.c (Fx_disown_selection_internal): Use union of struct
f4a5a485 761 input_event and struct selection_input_event to avoid aliasing issues.
9b516537
AS
762
763 * xterm.c (handle_one_xevent): Use union of struct input_event and
764 struct selection_input_event to avoid aliasing issues.
765 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
766
886b1418
KS
7672005-02-17 Kim F. Storm <storm@cua.dk>
768
769 * dispextern.h (enum it_method): New enum.
770 (GET_FROM_*): Its members.
771 (struct it): Change member method from function pointer to enum.
772
773 * xdisp.c (check_it, init_from_display_pos, handle_stop)
774 (setup_for_ellipsis, handle_single_display_spec)
775 (handle_composition_prop, next_overlay_string)
776 (get_overlay_strings, reseat_1, reseat_to_string)
777 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
778 (in_display_vector_p, display_line, get_next_display_element):
779 Change it->method from function pointer to enum.
780 (get_next_element): New array to map it->method to function.
781 (get_next_display_element): Use it.
782 (set_iterator_to_next): Use switch instead of if/else chain.
783
99ee2c6a 7842005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
52c7f9ee
JR
785
786 * w32select.c: Summary: Thorough rework to implement Unicode
787 clipboard operations and delayed rendering.
788
789 Drop last_clipboard_text and related code, keep track of
f4a5a485 790 ownership via clipboard_owner instead. Drop old #if0 sections.
52c7f9ee
JR
791
792 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
793 (clipboard_owner, modifying_clipboard, cfg_coding_system)
794 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
795 (current_coding_system, current_requires_encoding)
f4a5a485
SM
796 (current_num_nls, current_clipboard_type, current_lcid):
797 New static variables.
52c7f9ee
JR
798
799 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
800 (render, render_all, run_protected, lisp_error_handler)
801 (owner_callback, create_owner, setup_config)
f4a5a485
SM
802 (enum_locale_callback, cp_from_locale, coding_from_cp):
803 New local functions.
52c7f9ee
JR
804
805 (term_w32select, globals_of_w32select): New global functions.
806
807 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
808 clipboard_owner instead. Use delayed rendering and provide
809 all text formats. Provide CF_LOCALE if necessary.
810
811 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
812 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
813 available. Force DOS line-ends for decoding.
814
815 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
816
817 (syms_of_w32select): Init and register new variables.
818
819 * w32.h: Add prototypes for globals_of_w32select and
820 term_w32select. Make the neighboring K&R declarations into
821 prototypes, too.
822
823 * emacs.c: Include w32.h to get function prototypes.
824 (main): Call globals_of_w32select.
825
886b1418 826 * w32.c (term_ntproc): Call term_w32select.
52c7f9ee
JR
827
828 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
829
86e61586
KS
8302005-02-16 Kim F. Storm <storm@cua.dk>
831
832 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
833 at end of display vector.
834
6407f07b
RS
8352005-02-15 Richard M. Stallman <rms@gnu.org>
836
837 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
838 for mode and header lines.
839
840 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
841
842 * keymap.h (describe_map_tree): Change decl.
843
844 * keyboard.c (command_loop_1): Always use safe_run_hooks
845 to run Qdeferred_action_function.
846
847 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
848 (describe_map, describe_vector): Likewise. When it's 1,
849 don't omit shadowed bindings, instead mark them as shadowed.
850
851 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
852 for describe_map_tree. Pass 1 for MENTION_SHADOW.
853
854 * data.c (Fsetq_default): Allow no arg case.
855
3bb917bf
KH
8562005-02-14 Kenichi Handa <handa@m17n.org>
857
858 * coding.c (encode_coding_string): Always return a unibyte string.
859 If NOCOPY is nonzero and there's no need of encoding, make STR
860 unibyte directly.
861
862 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
863 multibyte string, signal an error instead of aborting.
864
e31d908f
DN
8652005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
866
867 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
868
48e029b6
KS
8692005-02-12 Kim F. Storm <storm@cua.dk>
870
871 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
872
c10bb00a
KS
8732005-02-10 Kim F. Storm <storm@cua.dk>
874
875 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
876 if it moves outside window or it doesn't display text.
877
9ca0f64a
KS
8782005-02-09 Kim F. Storm <storm@cua.dk>
879
880 * undo.c (Fprimitive_undo): Check that undo function does not
881 switch buffer.
882
b8d6f4af
JD
8832005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
884
885 * xselect.c (selection_data_to_lisp_data): For the special case
886 type == XA_ATOM, data contains array of int, not array of Atom.
d5161e8c
SM
887 (x_property_data_to_lisp, selection_data_to_lisp_data):
888 Comment update: data must be array of int for format == 32.
b8d6f4af 889
3419757d
SM
8902005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
891
892 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
893
3a441526
JD
8942005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
895
fc34503b
JD
896 * xfns.c (Fx_change_window_property): Use long array when format is 32.
897 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
898 convert long array returned from XGetWindowProperty to an int array.
bae45dc3
JD
899 (x_set_tool_bar_lines): Check that width and height is greater than
900 zero before clearing area.
fc34503b
JD
901
902 * xselect.c (x_reply_selection_request): Pass long array to
903 XChangeProperty so that 64 bit longs are handeled correctly.
904 (x_get_window_property): If format is 32 and long is bigger than 32
905 bits convert data from XGetWindowProperty from long array to int array.
906 (lisp_data_to_selection_data): When the input is a vector and the
907 format is 32, allocate a long array even if long is bigger than 32 bits.
908 (x_fill_property_data): Use char, short and long as the man page
909 for XChangeProperty specifies. This way the data returned is OK for
910 both 32 and 64 bit machines.
911 (x_handle_dnd_message): Calculate size correctly even for 64 bit
912 machines.
913 (Fx_send_client_event): Undo change from 2005-02-05,
914 x_fill_property_data now handles that case.
915
3419757d 916 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3a441526
JD
917 reason for the approach in the code.
918
82ec225b
KS
9192005-02-07 Kim F. Storm <storm@cua.dk>
920
921 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
922
ba2c991c
RS
9232005-02-06 Richard M. Stallman <rms@gnu.org>
924
925 * eval.c (Frun_hook_with_args)
926 (Frun_hook_with_args_until_success)
927 (Frun_hook_with_args_until_failure): Doc fixes.
928
e120ea40
AS
9292005-02-05 Andreas Schwab <schwab@suse.de>
930
3419757d 931 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
e120ea40 932
31f16913
JD
9332005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
934
935 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
936 the longs in a XClientMessageEvent correctly when long is 64 bits.
937
6082a820
EZ
9382005-02-05 Eli Zaretskii <eliz@gnu.org>
939
940 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
941 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
942
0e95095b
JD
9432005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
944
945 * xmenu.c (menubar_selection_callback): Force out GTK buffered
946 events so the menu event comes after them. This is to prevent sit-for
947 from exiting on buffered events directly after a menu selection,
948 lisp code for Help => About Emacs uses sit-for.
949
950 * gtkutil.c (create_menus): Connect selection-done event instead of
951 the deactivate event to deactivate_cb. This will make the last
952 leave event come before the call to deactivate_cb, so the leave
953 event does not make sit-for exit after a menu selection.
954
5bb6a3c1
KS
9552005-02-03 Kim F. Storm <storm@cua.dk>
956
957 * dispnew.c (build_frame_matrix_from_leaf_window)
958 [!GLYPH_DEBUG]: Fix xassert.
959
960 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
961
962 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
963
e9859e26
YM
9642005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
965
966 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
967 the compiling OS version.
968
969 * macfns.c (x_create_tip_frame): Likewise.
970
3419757d 971 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
e9859e26 972
4e07258f
RS
9732005-02-03 Richard M. Stallman <rms@gnu.org>
974
975 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
976
977 * xdisp.c (echo_area_display): Clear echo_message_buffer.
978
979 * buffer.c (Fbury_buffer): Doc fix.
980
4a34b529
ST
9812005-02-02 Steven Tamm <steventamm@mac.com>
982
7e26f91b 983 * macfns.c (unwind_create_frame): Fix compile error due to
f6c62d96 984 xassert being uncondition, but predicate is.
7e26f91b 985 * dispnew.c (update_window): Fix compile error due to
f6c62d96 986 xassert being uncondition, but predicate is.
4a34b529 987
d78f30b8
MB
9882005-02-02 Miles Bader <miles@gnu.org>
989
990 * dispextern.h (xassert): Enable unconditionally.
991
b044278d
KS
9922005-02-02 Kim F. Storm <storm@cua.dk>
993
994 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
995
56072160
KH
9962005-02-02 Kenichi Handa <handa@m17n.org>
997
998 * casefiddle.c (casify_object): Enable changing characters of
999 different byte length.
1000 (casify_region): Fix loop condition, args to replace_range_2, and
1001 update opoint_byte.
1002
f4a5a485 1003 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
56072160 1004
5e1674c5
KS
10052005-02-01 Kim F. Storm <storm@cua.dk>
1006
1007 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
1008 stack before calling handle_display_prop.
1009
fb89c330
KS
10102005-01-31 Kim F. Storm <storm@cua.dk>
1011
1012 * undo.c (Qapply): New lisp var.
1013 (syms_of_undo): Intern and staticpro it.
1014 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
1015 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
1016
1017 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
1018
7bf72fa6
JH
10192005-01-30 Jesper Harder <harder@phys.au.dk>
1020
a050b1a9
KS
1021 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
1022 <mac-emulate-three-button-mouse>: Fix docstring indentation.
7bf72fa6 1023
03c64f2e
LT
10242005-01-29 Luc Teirlinck <teirllm@auburn.edu>
1025
1026 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
6de38aa3 1027 Increase value to 3 Meg.
03c64f2e 1028
49b8b5dc
JD
10292005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1030
1031 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
1032 button events are not received otherwise.
1033
5a92a9eb
RS
10342005-01-29 Richard M. Stallman <rms@gnu.org>
1035
1036 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
1037
1038 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
1039
5c243ee4
SM
10402005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
1041
1042 * keymap.c (access_keymap): YAILOM.
1043
caf533af
KS
10442005-01-27 Kim F. Storm <storm@cua.dk>
1045
1046 * xdisp.c (get_phys_cursor_geometry): New function to calculate
1047 phys cursor position and size for hollow cursor. Position is
1048 aligned with get_glyph_string_clip_rect and ensures that a hollow
1049 cursor is shown, even when the actual glyph is not visible.
1050
1051 * dispextern.h (get_phys_cursor_geometry): Add prototype.
1052
1053 * xterm.c (x_clip_to_row): Ensure y >= 0.
1054 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1055
1056 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1057
1058 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1059
043f7f73
SM
10602005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
1061
1062 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
1063
889f3641
KS
10642005-01-27 Kim F. Storm <storm@cua.dk>
1065
1066 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
1067 glyph, even when row is only partially visible and actual cursor
1068 position is not visible.
1069
29099c2f
RS
10702005-01-24 Richard M. Stallman <rms@gnu.org>
1071
1072 * xterm.c (x_error_quitter): No longer static, and moved after
1073 x_error_handler.
1074
6adb6f01
KS
10752005-01-24 Kim F. Storm <storm@cua.dk>
1076
1077 * xdisp.c (move_it_by_lines): If we move forward after going too
1078 far back, cancel move if end position is same as start position.
1079
4d904fa0
ST
10802005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1081
1082 * dispextern.h (struct glyph_string): New members clip_head and
1083 clip_tail.
6adb6f01 1084
4d904fa0
ST
1085 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
1086 region to the area between clip_head and clip_tail.
1087 (draw_glyphs): Record the area that need to be actually redrawn to
1088 the new variables clip_head and clip_tail when there are
1089 overhangs. Set values of these variables to the corresponding
1090 members in struct glyph_string. Refine x coordinates for
1091 notice_overwritten_cursor using clip_head and clip_tail.
6adb6f01 1092
4d904fa0
ST
1093 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
1094
1095 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
1096 QDTextBounds.
1097 (x_draw_glyph_string): Don't fill the background of the successor
6adb6f01 1098 of a glyph with a right overhang if the successor will draw a cursor.
4d904fa0 1099 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
6adb6f01 1100 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4d904fa0 1101
f2417699
KS
11022005-01-24 Kim F. Storm <storm@cua.dk>
1103
6f67f013
KS
1104 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
1105 direction if window height was smaller than next-screen-context-lines.
1106 Now always scroll at least one line in the requested direction.
1107 Ensure that we actually do scroll backwards when requested to do so.
1108
f2417699
KS
1109 * xdisp.c (redisplay_window): Only try to make cursor line fully
1110 visible once (to avoid redisplay loop).
1111
a354b72c
KS
11122005-01-23 Kim F. Storm <storm@cua.dk>
1113
6b3d88f7 1114 * window.c (Fpos_visible_in_window_p): Simplify return value for
8f958b40 1115 partially visible rows.
6b3d88f7
KS
1116 (window_scroll_pixel_based): Adapt to that change.
1117
5c20cae2
KS
1118 * window.c (window_scroll_pixel_based): Force moving to next line
1119 if scrolling doesn't move start point, e.g. if looking at tall image.
1120
a354b72c 1121 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
5c20cae2
KS
1122 Clear last_height before calling line_bottom_y to get real height.
1123 Fix calculation of y.
a354b72c 1124
d9e7c622
ST
11252005-01-22 Steven Tamm <steventamm@mac.com>
1126
1127 * s/darwin.h: Removed PTY_ITERATION from here.
043f7f73 1128 (DARWIN): Define.
7e26f91b 1129
d9e7c622
ST
1130 * process.c (init_process): Default process-connection-type to
1131 nil on darwin 6 or less, t if it is 7 or higher. This way the
1132 broken pty behavior is still allowed on darwin 6 for interactive
1133 processes for people that know what they are doing.
1134
d00e399a
KS
11352005-01-22 Kim F. Storm <storm@cua.dk>
1136
1137 * window.c (auto_window_vscroll_p): New boolean.
1138 (syms_of_window): DEFVAR_BOOL it.
1139 (Fpos_visible_in_window_p): Extend return value to include RTOP
1140 and RBOT values if FULLY is nil.
1141 (window_scroll_pixel_based): Adjust vscroll for partially visible
1142 rows if auto_window_vscroll_p is set.
1143 (Fset_window_vscroll): Do nothing if vscroll is not modified.
1144
1145 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
1146 to return number of partially invisible pixels at top and bottom
1147 of the dislay row at POS.
1148
1149 * lisp.h (pos_visible_p): Fix prototype.
1150
f95a20e7
RS
11512005-01-21 Richard M. Stallman <rms@gnu.org>
1152
1153 * fileio.c (Fcopy_file): Doc fix.
1154
eee141ce
JD
11552005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1156
1157 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
1158 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
1159 start of function for older compilers.
1160
6f771c32
RS
11612005-01-20 Richard M. Stallman <rms@gnu.org>
1162
1163 * editfns.c (Fmessage): If arg is "", return "" (as before).
1164
1165 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
1166
1167 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
1168 variable.
1169
a15252fd
ST
11702005-01-20 Steven Tamm <steventamm@mac.com>
1171
043f7f73 1172 * editfns.c (Voperating_system_release): Add.
a15252fd
ST
1173 (init_editfns): Assign new variable operating-system-release
1174 based on call to uname if available.
043f7f73 1175 (get_operating_system_release): Add function to
d00e399a 1176 allow c-level access to operating system release.
a15252fd
ST
1177
1178 * config.h: Regenerated.
1179
043f7f73
SM
1180 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
1181 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
a15252fd
ST
1182 using ptys as '7'.
1183
3d6a4b2d
KS
11842005-01-20 Kim F. Storm <storm@cua.dk>
1185
62fc9b0f
KS
1186 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
1187
c310aca4
KS
1188 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
1189 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
1190
1191 * macterm.c (x_draw_glyph_string_box): Likewise.
1192
1193 * w32term.c (x_draw_glyph_string_box): Likewise.
1194
3d6a4b2d
KS
1195 * indent.c (Fvertical_motion): Temporarily disable selective display.
1196
27c8be45
KS
11972005-01-19 Kim F. Storm <storm@cua.dk>
1198
77db5cf3
KS
1199 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
1200 image property.
1201
27c8be45
KS
1202 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
1203
81f498dc
KS
12042005-01-18 Kim F. Storm <storm@cua.dk>
1205
1206 * xdisp.c (fast_find_position): Backtrack to find first row if
1207 charpos is inside a display overlay that spans multiple lines.
1208
1cdb0707
KH
12092005-01-18 Kenichi Handa <handa@m17n.org>
1210
1211 * coding.c (decode_coding_iso2022): Translate invalid codes if
1212 translation-table is specified.
1213
677159ce
KS
12142005-01-18 Kim F. Storm <storm@cua.dk>
1215
1216 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
1217 change. If handle_display_prop indicates newline is replaced by
1218 image or text, move back to start of relevant overlay or interval
1219 and continue scan from there. Simplify.
1220
977284cc
KS
12212005-01-17 Kim F. Storm <storm@cua.dk>
1222
043f7f73
SM
1223 * dispnew.c (mode_line_string, marginal_area_string):
1224 Fix off-by-one error in search for glyph.
977284cc 1225
e24531b7
KS
12262005-01-16 Kim F. Storm <storm@cua.dk>
1227
1228 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
1229
5ddd7664
ST
12302005-01-16 Steven Tamm <steventamm@mac.com>
1231
043f7f73 1232 * macterm.c (mac_to_x_fontname): Remove spurious argument.
5ddd7664 1233
fc2ff44b
AS
12342005-01-16 Andreas Schwab <schwab@suse.de>
1235
1236 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
1237
50af5100
JD
12382005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1239
1240 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
1241 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
1242
a2d5fca0
JD
12432005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1244
1245 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
e24531b7
KS
1246 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
1247 New flags for readable_events.
043f7f73 1248 (get_filtered_input_pending, readable_filtered_events): Remove.
a2d5fca0
JD
1249 (tracking_off): Call readable_events and get_input_pending with
1250 flag READABLE_EVENTS_DO_TIMERS_NOW.
1251 (readable_events): Move code from old readable_filtered_events here,
1252 but check new READABLE_EVENTS_* in argument flags instead of previous
1253 two boolean arguments do_timers_now and filter_events.
1254 If we are doing mouse tracking and the mouse moved, return only if
1255 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
1256 (swallow_events): Call get_input_pending with flag
1257 READABLE_EVENTS_DO_TIMERS_NOW.
e24531b7 1258 (get_input_pending): Move code from old get_filtered_input_pending
a2d5fca0
JD
1259 here. Replace boolean arguments do_timers_now, filter_events with
1260 flags, and pass flags to readable_events. Document new
1261 READABLE_EVENTS_* flags.
1262 (detect_input_pending_ignore_squeezables): New function.
1263 (detect_input_pending_run_timers): Call get_input_pending with flag
1264 READABLE_EVENTS_DO_TIMERS_NOW.
1265 (Finput_pending_p): Call get_input_pending with flags
1266 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
1267
1268 * dispnew.c (update_window, update_frame_1): Replace calls to
1269 detect_input_pending with detect_input_pending_ignore_squeezables
e24531b7 1270 so that redisplay is not paused if the event queue contains only
a2d5fca0
JD
1271 mouse movements.
1272
1273 * lisp.h: Declare detect_input_pending_ignore_squeezables.
1274
42afbcda
ST
12752005-01-15 Steven Tamm <steventamm@mac.com>
1276
e24531b7
KS
1277 * macterm.c (Vmac_use_core_graphics): Declare variable for
1278 mac-allow-anti-aliasing.
1279 (syms_of_macterm): DEFVAR_LISP and initialize it.
743d0696 1280 (mac_draw_string_common): Use core graphics text rendering if
0530c679 1281 mac-allow-anti-aliasing is enabled.
743d0696 1282
42afbcda
ST
1283 * macfns.c (Fx_file_dialog): Save As dialog includes only the
1284 file name in the text box.
1285
9cdd4884
ST
12862005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1287
043f7f73
SM
1288 * macfns.c (x_set_foreground_color, x_set_background_color):
1289 Sync with xfns.c.
9cdd4884
ST
1290 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
1291 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
1292 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
1293
88948d55
KS
12942005-01-14 Kim F. Storm <storm@cua.dk>
1295
1296 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
1297
20d6de82
RS
12982005-01-13 Richard M. Stallman <rms@gnu.org>
1299
1300 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
1301 if Voverriding_terminal_local_map is non-nil.
1302
1303 * keyboard.c (syms_of_keyboard): Doc fix.
1304
f75a592e
KS
13052005-01-13 Kim F. Storm <storm@cua.dk>
1306
1307 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
1308 (specify 0 for FACE instead). Reorder arg list. Doc fix.
1309
28f94a34
RS
13102005-01-12 Richard M. Stallman <rms@gnu.org>
1311
1312 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
1313 face property for characters that don't specify one.
1314
1315 * fns.c (Frequire): Record in load-history unconditionally.
1316
57a230b1
KS
13172005-01-10 Kim F. Storm <storm@cua.dk>
1318
1319 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
1320
1321 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
1322 Callers changed.
1323 Add support to merge with lisp face id too (if face_name is t).
1324
1325 * xdisp.c (get_next_display_element, next_element_from_display_vector):
1326 Don't lookup lface_id from display table glyphs here; instead use
1327 merge_faces to merge the lisp face id into current face.
1328
8ab2c119
KS
13292005-01-09 Kim F. Storm <storm@cua.dk>
1330
1331 * dispextern.h (struct it): New member dpvec_face_id.
1332 (merge_into_realized_face): Add prototype.
1333
1334 * xfaces.c (merge_into_realized_face): New function. Used to
1335 merge escape-glyph face or face from display table into current face.
1336
1337 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
1338 (syms_of_xdisp): DEFVAR_LISP it.
1339 (escape_glyph_face): Remove var.
1340 (redisplay_window): Don't initialize it.
1341 (setup_for_ellipsis, get_next_display_element):
1342 Set it->dpvec_face_id to -1.
1343 (get_next_display_element): Test Vshow_nonbreak_escape.
1344 Do not setup escape_glyph_face.
1345 Properly merge escape-glyph face or face from display table with
043f7f73
SM
1346 current face for escape and control characters.
1347 Set it->dpvec_face_id to relevant face id instead of adding it to each
8ab2c119
KS
1348 element of display vector.
1349 (next_element_from_display_vector): If it->dpvec_face_id is set,
1350 use that instead of lface_id from glyph itself.
1351
e0910857
JD
13522005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1353
1354 * xterm.h (struct x_output): New member, toolbar_detached.
1355
1356 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
1357 38.
1358 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
1359 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
1360 (xg_create_tool_bar): Initialize toolbar_detached.
1361 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
1362 toolbar_detached is zero.
1363
ff59904a
JD
13642005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1365
9b85e63d
JD
1366 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
1367 gtk_menu_popup if not for_click, so callbacks for the menu are called.
1368
ff59904a
JD
1369 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
1370 (xg_tool_bar_callback, xg_tool_bar_help_callback)
043f7f73 1371 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
ff59904a
JD
1372
1373 * xselect.c (x_get_foreign_selection, x_fill_property_data)
8ab2c119 1374 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
ff59904a
JD
1375 XFLOAT_DATA to get extract number from Lisp object.
1376
f9a23a6f
KS
13772005-01-07 Kim F. Storm <storm@cua.dk>
1378
1379 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
1380 Set stop_charpos to current charpos instead of 0.
1381
28f94a34
RS
13822005-01-06 Nick Roberts <nickrob@snap.net.nz>
1383
1384 * xdisp.c (Fformat_mode_line): First arg now required.
1385
a6fffcdc
ST
13862005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1387
1388 * macterm.c (XLoadQueryFont): Correctly handle 0 size
1389 font widths that are returned from some Japanese fonts.
1390
c35b0c6b
KS
13912005-01-06 Kim F. Storm <storm@cua.dk>
1392
1393 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
1394 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
1395 (destroy_fringe_bitmap): Set fringe_faces element to nil.
1396 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
1397 fringe_faces array and init elements to nil.
1398 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
1399 non-persistent face id.
1400 (mark_fringe_data): New function for GC.
1401
1402 * alloc.c (mark_fringe_data): Declare extern.
1403 (Fgarbage_collect): Call mark_fringe_data.
1404
1405 * alloc.c (overrun_check_free): Invalidate freed memory if
1406 XMALLOC_CLEAR_FREE_MEMORY is defined.
1407
e0e76ab9
ST
14082005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1409
1410 * macfns.c: Include sys/param.h.
1411 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
1412 and function.
1413 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
1414 of filename string. Set event callback function when creating
1415 dialog boxes. Add code conversions for filenames. Don't dispose
1416 apple event descriptor record if failed to create it.
1417
1418 * macterm.c: Include sys/param.h.
1419 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
1420 kEventWindowUpdate.
1421 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
1422 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
1423 of FSSpec from apple event descriptor record.
1424 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
1425 size of filename string.
1426 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
1427 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
1428 file dialog is in action.
043f7f73
SM
1429 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
1430 Reject only when there are no filename items. Set background color
e0e76ab9 1431 before (un)highlighting the window below the dragged items.
2313f861 1432 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
e0e76ab9 1433
043bc640
KH
14342005-01-05 Romain Francoise <romain@orebokech.com>
1435
1436 * term.c (encode_terminal_code): Fix buffer size computation.
1437
dd496df6
RS
14382005-01-04 Richard M. Stallman <rms@gnu.org>
1439
1440 * xdisp.c (Fformat_mode_line): Doc fix.
1441
026cdede
SM
14422005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
1443
1444 * alloc.c (refill_memory_reserve): Move.
1445 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
1446 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
1447
d57c7572
RS
14482005-01-03 Richard M. Stallman <rms@gnu.org>
1449
1450 * window.c (window_scroll_pixel_based): Don't correct preserve_y
1451 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
1452
b14f868c
JR
14532005-01-03 Jason Rumney <jasonr@gnu.org>
1454
1455 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
1456 fontp->space_width to FONT_WIDTH so they are valid.
1457
1458 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
1459 average width. Set fontp->average_width and fontp->space_width to
1460 their appropriate values.
1461
1462 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
1463 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
1464 fontp->space_width.
1465
e169f939
ST
14662005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1467
1468 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
1469 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
1470 metrics for max and min bounds.
1471 (x_load_font): Correctly calculate average font width metrics.
1472
19996af4
RS
14732005-01-02 Richard M. Stallman <rms@gnu.org>
1474
1475 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
1476
42d02da0
JD
14772004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1478
1479 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
1480
1db7dd46
RS
14812004-12-31 Richard M. Stallman <rms@gnu.org>
1482
b437860a
RS
1483 * xdisp.c (setup_for_ellipsis, get_next_display_element):
1484 Set it->ellipsis_p to 1 or 0.
1485 (display_line): Record whether row ends in mid-ellipsis.
1486 (set_cursor_from_row): If ends in ellipsis. find start of it.
1487 (cursor_row_p): If PT's at the end of the ellipsis the row
1488 ends within, don't display cursor on this row.
1489
1490 * dispextern.h (struct it): New element ellipsis_p.
1491 (struct glyph_row): New element ends_in_ellipsis_p.
1492
1493 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
1494 position if we're reading from something other than the buffer.
1495
1db7dd46
RS
1496 * window.c (window_scroll_pixel_based): Only look at
1497 Vscroll_preserve_screen_position if the old PT can't be kept.
1498 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
1499
1225f637
KS
15002004-12-30 Kim F. Storm <storm@cua.dk>
1501
1502 * xdisp.c (get_line_height_property): New function extracted from
1503 original calc_line_height_property.
1504 (calc_line_height_property): Rework. Handle t and (nil . ratio).
1505 (x_produce_glyphs): Use them to handle line-height and
1506 line-spacing according to new height spec.
1507 (Qtotal): Remove.
33b2f4ea 1508 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
1225f637 1509
c243063e
KH
15102004-12-30 Kenichi Handa <handa@m17n.org>
1511
1512 * fileio.c (Finsert_file_contents): Don't use
1513 current_buffer->buffer_file_coding_system even if REPLACE is
043f7f73 1514 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
c243063e
KH
1515
1516 * fontset.h (struct font_info): New members space_width and
1517 average_width.
1518
1519 * frame.h (struct frame): New member space_width.
1520 (FRAME_SPACE_WIDTH): New macro.
1521
1522 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
1523
1524 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
1525 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
b14f868c 1526 fontp->space_width.
043f7f73 1527 (x_load_font): Calculate fontp->space_width and fontp->average_width.
c243063e
KH
1528 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
1529
1530 * xdisp.c (x_produce_glyphs): Calculate tab width by
1531 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
1532
456e761b
ST
15332004-12-29 Sanghyuk Suh <han9kin@mac.com>
1534
1535 * macterm.c (SelectionRange): Add Xcode position apple event struct.
043f7f73 1536 (do_ae_open_documents): Handle Xcode-style file position open events.
456e761b 1537
188577ce
LT
15382004-12-29 Luc Teirlinck <teirllm@auburn.edu>
1539
1540 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
1541
99ec74b9
RS
15422004-12-29 Richard M. Stallman <rms@gnu.org>
1543
1544 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
1545
30c92fab
ST
15462004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1547
1548 * macfns.c (install_window_handler): Modify extern to return OSErr
1549 value.
1550 (mac_window): Handle return value of install_window_handler.
1551
1552 * macterm.c (reflect_byte): Remove function.
1553 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
1554 Lookup table instead.
1555 (mac_do_font_lists): Simplify calculation of the longest
1556 nonspecial string.
1557 (init_mac_drag_n_drop): Remove function and declaration.
1558 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
1559 init_mac_drag_n_drop.
1560 (mac_do_track_drag): New function and declaration.
1561 (install_window_handler): Return OSErr value.
043f7f73
SM
1562 (install_window_handler) [TARGET_API_MAC_CARBON]:
1563 Register handlers for tracking/receiving drag-and-drop items.
30c92fab 1564 (do_ae_open_documents): Generate unibyte strings for filenames.
043f7f73
SM
1565 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
1566 Reject only non-filename items. Set event modifiers, and return value.
30c92fab 1567
4b982924
DN
15682004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
1569
1570 * coding.c (decode_coding): Fix previous change.
1571
93fdf45f
RS
15722004-12-28 Richard M. Stallman <rms@gnu.org>
1573
1574 * xdisp.c (back_to_previous_visible_line_start):
1575 Don't call handle_display_prop.
1576
5bdca8af
DN
15772004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
1578
1579 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
1580 (decode_coding_emacs_mule, encode_coding_emacs_mule)
1581 (decode_coding_iso2022, encode_designation_at_bol)
1582 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
1583 (decode_coding): Constify arguments and local vars.
1584
33385c6f
JD
15852004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1586
1587 * xmenu.c (popup_get_selection): Only pop down dialogs
1588 on C-g and Escape.
95bdef2e 1589 (popup_get_selection): Remove parameter down_on_keypress.
043f7f73
SM
1590 (create_and_show_popup_menu, create_and_show_dialog):
1591 Remove parameter down_on_keypress to popup_get_selection.
33385c6f 1592
b15325b2
ST
15932004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1594
1595 * dispextern.h: Change HAVE_CARBON to MAC_OS.
1596 (struct glyph_string): Likewise.
a2c7e69a 1597
b15325b2
ST
1598 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
1599 mac_initialize.
a2c7e69a 1600
b15325b2
ST
1601 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
1602 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
a2c7e69a 1603
b15325b2 1604 * fns.c (vector): Change MAC_OSX to MAC_OS.
a2c7e69a 1605
b15325b2
ST
1606 * frame.c (x_set_frame_parameters, x_report_frame_params)
1607 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
043f7f73
SM
1608 (x_set_border_width, Vdefault_frame_scroll_bars):
1609 Change HAVE_CARBON to MAC_OS.
a2c7e69a 1610
b15325b2
ST
1611 * image.c [MAC_OS]: Include sys/stat.h.
1612 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
1613 QuickTimeComponents.h.
a2c7e69a 1614
b15325b2
ST
1615 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
1616 [!MAC_OSX] (select): Use mac_wait_next_event.
043f7f73 1617 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
b15325b2
ST
1618 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
1619 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
1620 (mac_clear_font_name_table): Add extern.
1621 (Fmac_clear_font_name_table): New defun.
1622 (syms_of_mac): Defsubr it.
1623 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
1624 [MAC_OSX] (select_and_poll_event): New function.
1625 [MAC_OSX] (sys_select): Use it.
1626 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
1627 [MAC_OSX && SELECT_USE_CFSOCKET]
1628 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
1629 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
1630 RunLoop for simultaneously monitoring two kinds of inputs, window
1631 events and process outputs, without periodically polling.
a2c7e69a 1632
b15325b2
ST
1633 * macfns.c (mac_initialized): Remove extern.
1634 (stricmp): Put in #if 0. All callers changed to use xstricmp in
1635 xfaces.c.
043f7f73
SM
1636 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
1637 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
b15325b2
ST
1638 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
1639 (mac_get_rdb_resource): New function (from w32reg.c).
1640 (x_get_string_resource): Use it.
1641 (install_window_handler): Add extern.
1642 (mac_window): New function.
043f7f73
SM
1643 (Fx_create_frame): Use it instead of make_mac_frame.
1644 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
b15325b2
ST
1645 (Fx_open_connection, Fx_close_connection): New defuns.
1646 (syms_of_macfns): Defsubr them.
043f7f73
SM
1647 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
1648 Add kWindowNoUpdatesAttribute to the window attribute.
b15325b2
ST
1649 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
1650 (x_create_tip_frame): Don't call ShowWindow.
1651 (Fx_show_tip): Call ShowWindow.
1652 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
1653 TARGET_API_MAC_CARBON'.
1654 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
1655 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
a2c7e69a 1656
043f7f73 1657 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
b15325b2
ST
1658 (Window): Typedef to WindowPtr and move outside `#if
1659 TARGET_API_MAC_CARBON'.
1660 (XSizeHints): New struct.
a2c7e69a 1661
b15325b2
ST
1662 * macterm.c (x_update_begin, x_update_end)
1663 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
1664 frame.
1665 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
1666 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
1667 (construct_mouse_click): Put in #if 0.
1668 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
1669 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
1670 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
1671 (activate_scroll_bars, deactivate_scroll_bars)
1672 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
1673 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
1674 if the position is neither user-specified nor program-specified.
1675 (x_free_frame_resources): Free size_hints.
043f7f73 1676 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
b15325b2
ST
1677 (mac_clear_font_name_table): New function.
1678 (mac_do_list_fonts): Initialize font_name_table if needed.
1679 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
1680 around mac_do_list_fonts.
1681 (mac_unload_font): New function.
1682 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
1683 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
1684 and definitions with #if TARGET_API_MAC_CARBON.
1685 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
1686 (install_window_handler): Add decl.
1687 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
1688 window. Use UpdateControls. Get the rectangle that should be
1689 updated and restrict the target of expose_frame to it.
043f7f73 1690 (do_grow_window): Set minimum height/width according to size_hints.
b15325b2
ST
1691 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
1692 (do_zoom_window): Don't use x_set_window_size.
1693 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
1694 (install_window_handler): New function.
1695 [!USE_CARBON_EVENTS] (mouse_region): New variable.
1696 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
1697 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
1698 GetEventDispatcherTarget inside BLOCK_INPUT.
1699 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
1700 Update mouse_region when mouse is moved.
1701 (make_mac_frame): Remove.
043f7f73
SM
1702 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
1703 Initialize mouse pointer shapes. Change values of f->left_pos and
1704 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
1705 Don't call ShowWindow.
b15325b2
ST
1706 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
1707 Vinvocation_name and Vsystem_name.
1708 (mac_make_rdb): New function (from w32term.c).
1709 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
1710 already been opened. Don't pass argument to
1711 mac_initialize_display_info. Don't set dpyinfo->height/width.
1712 Add entries to x_display_list and x_display_name_list.
1713 (x_delete_display): New function.
1714 (mac_initialize): Don't call mac_initialize_display_info.
a2c7e69a
KS
1715 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
1716
b15325b2
ST
1717 * macterm.h (check_mac): Add extern.
1718 (struct mac_output): New member size_hints.
1719 (FRAME_SIZE_HINTS): New macro.
1720 (mac_unload_font): Add extern.
a2c7e69a 1721
b15325b2 1722 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
a2c7e69a 1723
b15325b2
ST
1724 * xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.
1725
92d2947b
RS
17262004-12-27 Richard M. Stallman <rms@gnu.org>
1727
043f7f73 1728 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
ebbd14f1
RS
1729 (syms_of_buffer): Don't defsubr it.
1730
1731 * process.c (list_processes_1): Set undo_list instead
1732 of calling Fbuffer_disable_undo.
1733
043f7f73 1734 * xdisp.c (single_display_spec_string_p): Rename from
92d2947b 1735 single_display_prop_string_p.
043f7f73 1736 (single_display_spec_intangible_p): Rename from
92d2947b 1737 single_display_prop_intangible_p.
043f7f73 1738 (handle_single_display_spec): Rename from handle_single_display_prop.
92d2947b
RS
1739 Rewritten to be easier to understand.
1740
a2c7e69a 1741 Change in load-history format. Functions now get (defun . NAME),
92d2947b
RS
1742 and variables get just NAME.
1743
1744 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
1745
1746 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
1747 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
1748 (Qdefvar): Var deleted.
1749 (syms_of_eval): Don't initialze it.
1750
1751 * lread.c (syms_of_lread) <load-history>: Doc fix.
1752
9f6fcdc5
JD
17532004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1754
1755 * xmenu.c (popup_get_selection): Pop down on C-g.
1756 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
1757 pops down menu on C-g.
1758 (xdialog_show): If dialog popped down and no button in the dialog was
1759 pushed, call Fsignal to quit.
1760 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
1761 Fsignal to quit.
1762
1763 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
1764
1765 * gtkutil.c (xg_initialize): Install bindings for C-g so that
1766 dialogs and menus pop down.
1767
d8ca23a0
KH
17682004-12-27 Kenichi Handa <handa@m17n.org>
1769
1770 * coding.c (code_convert_region): Fix calculation of `ratio'.
1771
857ae68b
JD
17722004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1773
133c0116
JD
1774 * gtkutil.c (update_frame_tool_bar): Make the value of
1775 tool-bar-button-margin control margins of images in tool bar.
1776
857ae68b
JD
1777 * alloc.c (check_depth): New variable.
1778 (overrun_check_malloc, overrun_check_realloc): Only add
1779 overhead and write check pattern if check_depth is 1 (to handle
1780 recursive calls). Increase/decrease check_depth in entry/exit.
1781 (overrun_check_free): Only check for overhead if check_depth is 1.
1782 Increase/decrease check_depth in entry/exit.
1783
bd55c35c
JD
17842004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1785
1786 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
1787 before touching input_available_clear_time, to avoid accessing it
1788 from multiple threads.
1789
66354420
JR
17902004-12-23 Jason Rumney <jasonr@gnu.org>
1791
1792 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
1793 of JPEG library.
1794
55f4edbc
RS
17952004-12-22 Richard M. Stallman <rms@gnu.org>
1796
1797 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
1798
1799 * lisp.h (Vundo_outer_limit): Fix decl.
1800
1801 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
1802 Uses changed.
1803 (syms_of_undo): Initialize appropriately.
1804 (truncate_undo_list): If it's nil, there's no limit.
1805
7a0ea9e3
KH
18062004-12-22 Kenichi Handa <handa@m17n.org>
1807
1808 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
1809
fda2922a
RS
18102004-12-21 Richard M. Stallman <rms@gnu.org>
1811
1812 * eval.c (unwind_to_catch): Clear immediate_quit.
1813
1814 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
1815 specially as `\ ' and `\-'.
1816
1817 * keyboard.c (kbd_buffer_store_event_hold):
1818 In the code for while-no-input, handle immediate_quit.
1819
1820 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
1821 Call that at the very start.
043f7f73 1822 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
fda2922a
RS
1823 (syms_of_alloc): Don't define undo-limit,
1824 undo-strong-limit and undo-outer-limit here.
1825
1826 * undo.c (truncate_undo_list): Return void.
1827 Take just one argument, the buffer.
1828 Make it current, and inhibit recursive GC.
1829 Access and update the undo list directly; return void.
1830 Refer to the undo...limit variables directly.
1831 Test undo_outer_limit only after counting the whole current command.
1832 When it's exceeded, call the function in undo-outer-limit-function.
1833 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
1834 (Vundo_outer_limit_function): New variable.
1835 (syms_of_undo): Define undo-limit, undo-strong-limit
1836 and undo-outer-limit here, and undo-outer-limit-function.
1837 Doc fixes.
1838
1839 * lisp.h (truncate_undo_list): Update decl.
1840
18412004-12-21 Piet van Oostrum <piet@cs.uu.nl>
1842
1843 * fileio.c (Fread_file_name): Delete duplicates in
1844 file-name-history when history_delete_duplicates is true.
1845
68c69027
ST
18462004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1847
1848 * macterm.c (mac_do_list_fonts): Fix memory leak
1849
134579f2
RS
18502004-12-20 Richard M. Stallman <rms@gnu.org>
1851
1852 * regex.c (re_match_2_internal) <symend, wordend>:
1853 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
1854
fbe6152f
ST
18552004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1856
043f7f73
SM
1857 * macterm.c (endif, x_font_name_to_mac_font_name):
1858 Use maccentraleurroman instead of maccentraleuropean
fbe6152f
ST
1859 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
1860 quickly finding a specific font without needing regexps.
1861
fecad3f6
JD
18622004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1863
333f1b6f
JD
1864 * syssignal.h: Declare main_thread.
1865 (SIGNAL_THREAD_CHECK): New macro.
1866
1867 * keyboard.c (input_available_signal): Move thread checking code
1868 to macro SIGNAL_THREAD_CHECK and call that macro.
1869 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
1870
1871 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
1872
1873 * emacs.c: Define main_thread.
1874 (main): Initialize main_thread.
1875 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
1876 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
1877
1878 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
1879
1880 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
1881
1882 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
1883
043f7f73
SM
1884 * process.c (send_process_trap, sigchld_handler):
1885 Call SIGNAL_THREAD_CHECK.
333f1b6f
JD
1886
1887 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
1888
1889 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
1890
fecad3f6
JD
1891 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
1892 returning when xg_ignore_gtk_scrollbar is true.
1893
2a84c6da
KS
18942004-12-14 Kim F. Storm <storm@cua.dk>
1895
1896 * keyboard.c (read_char): Save and restore echo_string when
1897 handling input method.
1898
d9c1ce9d
RS
18992004-12-13 Richard M. Stallman <rms@gnu.org>
1900
1901 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
1902
1903 * keyboard.c (Vthrow_on_input): New variable.
1904 (syms_of_keyboard): Defvar and initialize it.
1905 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
1906
1907 * lisp.h (QUIT): Check for Vthrow_on_input.
1908 (Vthrow_on_input): Declare it.
1909
a6495ed5
KS
19102004-12-13 Kim F. Storm <storm@cua.dk>
1911
1912 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
1913 vector.
1914
24a0e22f
RS
19152004-12-12 Richard M. Stallman <rms@gnu.org>
1916
1917 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
1918
1919 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
1920 (Ftry_completion): Really use outer `zero'; eliminate inner one.
1921
d6d31e57
KH
19222004-12-12 Kenichi Handa <handa@m17n.org>
1923
1924 * term.c (encode_terminal_code): Fix previous change.
1925
6f8ffb88
SM
19262004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
1927
fb6f5cbf
SM
1928 * keyboard.c (handle_async_input): Remove pthread mutex handling.
1929 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
1930
6f8ffb88
SM
1931 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
1932 in macro arguments.
1933
1934 * minibuf.c (Ftry_completion, Fall_completions): Don't use
1935 XFASTINT blindly.
1936
1937 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
1938
c83c9f9d
JD
19392004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1940
2f25767f
JD
1941 * w32term.c (x_calc_absolute_position): Remove calculation of
1942 difference between inner and outer window. Don't subtract difference
1943 for left and top calculations.
1944
c83c9f9d
JD
1945 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
1946 for left and top calculations. Remove call to x_real_positions.
24a0e22f 1947 [Bug report by Drew Adams in November]
c83c9f9d
JD
1948 (x_check_expected_move): Do not set change_gravity to 1 when calling
1949 x_set_offset.
1950
cc1caa4e
RS
19512004-12-08 Richard M. Stallman <rms@gnu.org>
1952
1953 * xdisp.c (get_next_display_element): Use `escape-glyph' for
1954 control chars and escaped octal codes.
1955 (Qescape_glyph): New variable.
1956 (syms_of_xdisp): Initialize it.
1957 (escape_glyph_face): New variable.
1958 (redisplay_window): Initialize it.
1959
e0e30823
RS
19602004-12-07 Paul Eggert <eggert@cs.ucla.edu>
1961
1962 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
1963 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
1964
f415cacd
JD
19652004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1966
cf435f39
JD
1967 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
1968 reset_malloc_hooks.
1969
6f8ffb88
SM
1970 * keyboard.c (handle_async_input, input_available_signal):
1971 Add ! defined (SYSTEM_MALLOC) around thread code.
cf435f39 1972
f415cacd
JD
1973 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
1974
043f7f73 19752004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
19b1f29a
SM
1976
1977 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
1978
1979 * config.in: Regenerate.
1980
ded997c1
JD
19812004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1982
453a4f1b
JD
1983 * xmenu.c (Fx_popup_menu): Correct documentation about position.
1984 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
1985 if not given by a mouse click to correspond with x-popup-menu
1986 documentation.
1987
9a38524c
JD
1988 * config.in: Regenerate.
1989
aa477689
JD
1990 * gtkutil.c: Include signal.h and syssignal.h.
1991 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
1992
1993 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
1994 new variables main_thread and alloc_mutex,
1995 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
1996 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
1997 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
1998 (UN)BLOCK_INPUT.
1999 (emacs_blocked_free, emacs_blocked_malloc)
2000 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
2001 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
2002 (reset_malloc_hooks): New function.
2003
2004 * lisp.h: Declare reset_malloc_hooks.
2005
2006 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
2007
2008 * keyboard.c: Conditionally include pthread.h
6f8ffb88 2009 (handle_async_input, input_available_signalt): If not in the main
aa477689
JD
2010 thread, block signal, send signal to main thread and return.
2011
ded997c1 2012 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
6f8ffb88 2013 Set current folder in file chooser if default_filename is a directory.
ded997c1 2014
c72b0edd
SM
20152004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
2016
2017 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
2018 Remove redundant correctness checks.
2019 (regex_compile): Fix up error codes for \{..\} expressions.
2020
c721eee5
RS
20212004-12-05 Richard M. Stallman <rms@gnu.org>
2022
2023 * regex.c (regex_compile): Fix end-of-pattern case for space.
2024
d8f96db8
ST
20252004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2026
6108209e
KS
2027 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
2028 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
d8f96db8 2029 crashes with invalid characters.
6108209e
KS
2030 * macmenu.c (add_menu_item): Use it.
2031 * image.c (image_load_quartz2d): Likewise.
2032 * macfns.c (x_set_name, x_set_title): Likewise.
2033 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
2034 creating them each time for labels.
d8f96db8 2035
ab67e8b6
RS
20362004-12-02 Richard M. Stallman <rms@gnu.org>
2037
2038 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
2039 don't use it here.
2040
2041 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
2042 (interactive_p): Skip Scalled_interactively_p frames
2043 like Sinteractive_p frames.
b8217ea6 2044 (unwind_to_catch): Clear handling_signal.
ab67e8b6
RS
2045
2046 * data.c (Fmake_variable_buffer_local): Doc fix.
2047 (Fmake_local_variable): Doc fix.
2048
2049 * insdel.c (insert_from_string_before_markers)
2050 (insert_from_string): Don't modify buffer on empty insertion.
2051
2052 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
2053
f86bdc80
ST
20542004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2055
2056 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
2057 menu text as UTF8 fails.
2058
1cae6d39
KS
20592004-12-01 Kim F. Storm <storm@cua.dk>
2060
2061 * alloc.c: Add commentary for last change.
2062 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
2063 sizeof(size_t) != 4.
2064 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
2065 Use them. Also clear header and trailer of freed memory.
2066 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
2067 (string_overrun_cookie): Rename from string_overrun_pattern.
2068 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
2069
77ea0764
AS
20702004-12-01 Andreas Schwab <schwab@suse.de>
2071
2072 * lisp.h: Declare string_to_multibyte.
2073
2d5cd4e6
KH
20742004-12-01 Kenichi Handa <handa@m17n.org>
2075
2076 * w32console.c (w32con_write_glyphs): Decide coding here.
2077 Adjusted for the change of encode_terminal_code.
2078
2079 * term.c (encode_terminal_code): Don't make it "static".
2080
25a0994a
KH
20812004-11-30 Kenichi Handa <handa@m17n.org>
2082
19b1f29a 2083 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
25a0994a 2084 (encode_terminal_code): Argument changed. Encode all
19b1f29a
SM
2085 characters at once, and return a pointer to the result of encoding.
2086 (write_glyphs): Decide coding here. Adjusted for the above change.
25a0994a
KH
2087 (insert_glyphs): Likewise.
2088 (term_init): Initialize encode_terminal_bufsize to 0.
2089
2090 * coding.c (Vcode_conversion_workbuf_name): New variable.
2091 (syms_of_coding): Initialize and staticpro it.
2092 (set_conversion_work_buffer): New function.
2093 (run_pre_post_conversion_on_str): Use it.
2094 (run_pre_write_conversin_on_c_str): New function.
2095
2096 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
2097
fc7a70cc
ST
20982004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2099
2100 * keyboard.c: Don't undef SIGIO
2101 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
2102 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
2103 (macfns.o): Don't depend on ccl.h.
2104 * macfns.c (mac_frame_parm_handlers): Set handlers for
2105 Qleft_fringe and Qright_fringe.
2106 * macterm.c (mac_fill_rectangle_to_pixmap)
2107 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
2108 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
2109 Put in #if 0.
2110 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
2111 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
2112 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
2113 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
2114 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
2115 XDrawImageString. Always draw background and foreground separately.
2116 (x_draw_image_foreground): Use clipping instead of computing the
2117 intersection rectangle.
2118 (x_draw_image_glyph_string): Don't draw an image with mask to a
2119 pixmap.
2120 (x_redisplay_interface): Set flush_display_optional member to 0.
2121 (XTread_socket): Correctly reset the TEConverter
2122 object.
2123
fc368889
KS
21242004-11-30 Kim F. Storm <storm@cua.dk>
2125
2126 * lisp.h: New defines to enable buffer overrun checking.
2127 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
2128 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
2129
2130 * alloc.c: Add more checks for buffer overruns.
2131 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
2132 xmalloc_overrun_check_trailer, overrun_check_malloc)
2133 overrun_check_realloc, overrun_check_free): Add.
2134 (GC_STRING_EXTRA, string_overrun_pattern): Add.
2135 (check_sblock, allocate_string_data, compact_small_strings):
2136 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
2137 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
2138 (check_string_free_list): Add.
2139 (allocate_string, sweep_strings): Call check_string_free_list.
2140
2141 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
2142 XMALLOC_OVERRUN_CHECK to avoid crash during load.
2143
0af8cfe1
KS
21442004-11-29 Kim F. Storm <storm@cua.dk>
2145
2146 * fns.c (concat): Use SAFE_ALLOCA.
2147
77220eeb
SM
21482004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
2149
2150 * sysdep.c (emacs_write): Don't use QUIT.
2151
a778cf63
KH
21522004-11-29 Kenichi Handa <handa@m17n.org>
2153
2154 * buffer.c (init_buffer): Set current_buffer->directory to a
2155 multibyte string made by string_to_multibyte.
2156
77220eeb 2157 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
a778cf63 2158
e3177e43
AS
21592004-11-27 Andreas Schwab <schwab@suse.de>
2160
2161 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
2162
2163 * s/gnu-linux.h: Enable no-op gcpros on ia64.
2164 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
2165
77220eeb
SM
2166 * filelock.c (lock_file_1): Call get_boot_time early.
2167 Increase buffer size.
e3177e43 2168
ca5e6fef
EZ
21692004-11-27 Eli Zaretskii <eliz@gnu.org>
2170
2171 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
2172 is not defined.
2173
e2811828
KS
21742004-11-27 Kim F. Storm <storm@cua.dk>
2175
2176 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
2177 marker out of doc string.
2178
7a262394
SM
21792004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
2180
2181 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
2182 which was not mentioned in the log.
2183
f33cc5a9
KS
21842004-11-26 Kim F. Storm <storm@cua.dk>
2185
048bb03f
KS
2186 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
2187 angle bitmaps at top/bottom line.
2188
f33cc5a9
KS
2189 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
2190 set it when it->method is set to next_element_from_display_vector.
2191 (setup_for_ellipsis): Add LEN argument. Callers changed.
2192 Set it->saved_face_id.
2193 (get_next_display_element): Use loop instead of recursion.
2194 Set it->saved_face_id. Combine duplicate code for ctr chars.
2195 (next_element_from_display_vector): Do not set it->saved_face_id.
2196 (next_element_from_ellipsis): Use setup_for_ellipsis.
2197
670e8906
EZ
21982004-11-26 Eli Zaretskii <eliz@gnu.org>
2199
2200 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
2201 prevent compiler warnings.
2202
275464e7
SM
22032004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
2204
1bf0e604
SM
2205 * keyboard.c (command_loop_1): Print a message describing the key
2206 the user just pressed when this key has no binding.
2207
275464e7
SM
2208 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
2209 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
2210
2211 * lread.c (readchar): Check QUIT when `getc' is interrupted.
2212
261b01c6
RS
22132004-11-24 Richard M. Stallman <rms@gnu.org>
2214
2215 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
2216
2217 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
2218
a5bd504e
KS
22192004-11-24 Kim F. Storm <storm@cua.dk>
2220
2221 * xdisp.c (move_it_in_display_line_to, display_line):
2222 Restore saved_face_id also when truncate-lines or hscrolled.
2223
255e4140
JD
22242004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2225
2226 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
2227 x-use-old-gtk-file-dialog.
2228
2229 * xfns.c: Define x_use_old_gtk_file_dialog.
2230 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
2231 outside ifdef USE_GTK.
2232
cab27d04
SM
22332004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
2234
2235 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
2236 Don't use XFASTINT blindly.
2237
2238 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
2239
2240 * indent.c (skip_invisible): Avoid non-idempotent side-effects
2241 in macro arguments.
2242
2243 * keymap.c (Flookup_key): Check INTEGERP before XINT.
2244
2245 * lread.c (oblookup): Don't use XFASTINT blindly.
2246
2247 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
2248 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
2249
11e0be49
KS
22502004-11-23 Kim F. Storm <storm@cua.dk>
2251
4d721114
KS
2252 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
2253 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
2254
11e0be49
KS
2255 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
2256 signal_p is zero and face name is unknown.
2257 (Fx_list_fonts): Don't signal error in lookup_named_face.
2258 (Fface_font): Signal error in lookup_named_face.
2259 (ascii_face_of_lisp_face): Likewise.
2260
2261 * dispextern.h (lookup_named_face): Fix prototype.
2262
2263 * xdisp.c (handle_single_display_prop): Don't signal error in
2264 lookup_named_face for unknown fringe face name.
2265 (highlight_trailing_whitespace): Don't signal error in
2266 lookup_named_face if trailing-whitespace face unknown.
2267 (calc_line_height_property): Don't signal error in
2268 lookup_named_face if specified face name is unknown.
2269
2270 * fringe.c (update_window_fringes): Show top row indicator if
2271 window has header-line. Don't show arrow at bob and eob
2272 if the boundary indicators are not used.
2273 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
2274
2275 * window.c (set_window_buffer): Clear display_error_modiff.
2276
0960a582
KS
22772004-11-22 Kim F. Storm <storm@cua.dk>
2278
2279 * fringe.c (update_window_fringes): Provide sensible fall-back
2280 value for non-nil indicate-buffer-boundaries setting.
2281
b0e9bb28
MR
22822004-11-22 Markus Rost <rost@ias.edu>
2283
2284 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
2285
d0bce91e
SM
22862004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
2287
2288 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
2289
e1814672
KS
22902004-11-21 Kim F. Storm <storm@cua.dk>
2291
b7fd3518
KS
2292 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
2293
2294 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
2295 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
2296
2297 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
2298 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
2299
2300 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
2301 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
2302
d0bce91e
SM
2303 * xdisp.c (move_it_in_display_line_to, display_line):
2304 Restore saved_face_id if overflow-newline-into-fringe is enabled and
2305 line is continued before or in middle of element from display vector.
f01d4d05 2306
f1a61389
KS
2307 * indent.c (Fvertical_motion): Fix last change. Use another
2308 method to detect if iterator moved too far ahead after reseat.
2309
e1814672
KS
2310 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
2311 expand matrix width for overflow in zero-width area.
2312 (append_glyph, append_composite_glyph, produce_image_glyph)
2313 (append_stretch_glyph): Use it to avoid loop in redisplay.
2314 (note_mode_line_or_margin_highlight): Don't let help-echo from
2315 string override help-echo from image map.
2316
2dafe1c9
LT
23172004-11-20 Luc Teirlinck <teirllm@auburn.edu>
2318
d0bce91e 2319 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
2dafe1c9
LT
2320 * callint.c (Fcall_interactively): Ditto.
2321
fd6866c8 23222004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
9961365e
RS
2323
2324 * minibuf.c (Fminibuffer_complete_and_exit):
2325 Fixup the case of the completed value, for case-indep completion.
2326
dedbac89
RS
23272004-11-20 Richard M. Stallman <rms@gnu.org>
2328
fd6866c8
RS
2329 * lisp.h (Fread_from_minibuffer): Add arg in decl.
2330
9d00469f 2331 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
ce8dd7ca 2332 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
9d00469f 2333
dedbac89 2334 * search.c (Vsearch_spaces_regexp):
d0bce91e 2335 Rename from Vsearch_whitespace_regexp. All uses changed.
dedbac89 2336
2f672bb5
TTN
23372004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
2338
2339 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
2340
f31a9a68
RS
23412004-11-19 Richard M. Stallman <rms@gnu.org>
2342
2343 * search.c (Vsearch_whitespace_regexp): New variable.
2344 (syms_of_search): Defvar it.
2345 (compile_pattern_1): Call re_set_whitespace_regexp with it.
2346 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
2347 is non-nil.
6de891db
RS
2348 (struct regexp_cache): New element whitespace_regexp.
2349 (syms_of_search): Initialize whitespace_regexp elements.
2350 (compile_pattern): Compare whitespace_regexp elements.
2351 (compile_pattern_1): Set whitespace_regexp elements.
f31a9a68
RS
2352
2353 * regex.c (regex_compile): Substitute whitespace_regexp
2354 for spaces, if it is nonzero.
2355 (whitespace_regexp): New variable.
2356 (re_set_whitespace_regexp): New function.
2357
cbc34cb3
KS
23582004-11-19 Kim F. Storm <storm@cua.dk>
2359
2360 * indent.c (Fvertical_motion): Fix last change.
2361
b54a7539
KS
23622004-11-18 Kim F. Storm <storm@cua.dk>
2363
2364 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
2365 Instead, move back again if reseating moves too far ahead.
2366
23672004-11-17 Luc Teirlinck <teirllm@auburn.edu>
802c6e56
LT
2368
2369 * xdisp.c (message3): Call clear_message.
2370
5ff504fe
KS
23712004-11-17 Kim F. Storm <storm@cua.dk>
2372
2373 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
2374
5ae53dcf
JD
23752004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2376
d0bce91e 2377 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
724cde0d 2378
6abf3a27 2379 * xmenu.c (x_menu_in_use): Remove.
5ae53dcf
JD
2380 (x_menu_set_in_use): Also set popup_activated_flag.
2381
5ff504fe 2382 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5ae53dcf
JD
2383 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
2384
6abf3a27 2385 * xterm.h: (x_menu_in_use): Remove.
5ae53dcf 2386
ee31cd78
RS
23872004-11-16 Richard M. Stallman <rms@gnu.org>
2388
6abf3a27
SM
2389 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
2390 Use map-keymap-internal to implement that.
ee31cd78
RS
2391
2392 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
2393
6abf3a27
SM
23942004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
2395
2396 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
2397 a window before using XWINDOW.
2398
2399 * window.c (make_window, Fselect_window, make_dummy_parent)
2400 (save_window_save):
2401 * frame.c (make_frame):
2402 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
2403
2404 * lisp.h (NILP): Use EQ rather than XFASTINT.
2405
b4d61105
KS
24062004-11-16 Kim F. Storm <storm@cua.dk>
2407
6abf3a27 2408 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
dda01a4c 2409
b4d61105
KS
2410 * indent.c (Fvertical_motion): Fix last change. Only reseat when
2411 moving backwards.
2412
24132004-11-16 Luc Teirlinck <teirllm@auburn.edu>
ce2bbf6a
LT
2414
2415 * dispextern.h: Extern reseat_at_previous_visible_line_start.
2416
ab5b02b0
KH
24172004-11-16 Kenichi Handa <handa@m17n.org>
2418
2419 * xdisp.c (display_mode_element): Fix previous change (calculate
2420 end position of substring to display correctly).
2421
c482cf97
KS
24222004-11-16 Kim F. Storm <storm@cua.dk>
2423
2424 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
2425 Reported by Andrew M. Scott.
2426
9f89426b
KS
24272004-11-15 Kim F. Storm <storm@cua.dk>
2428
2429 * fns.c (Fsafe_plist_get): New defun.
2430 (syms_of_fns): Defsubr it.
2431
2432 * lisp.h (Fsafe_plist_get): Add EXFUN.
2433
2434 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
2435 Use Fsafe_plist_get.
2436 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2437 Fix image map element parsing. Use Fsafe_plist_get.
2438
27418463
RS
24392004-11-15 Richard M. Stallman <rms@gnu.org>
2440
2441 * xdisp.c (get_next_display_element): Fix previous change.
2442
a130b901
JD
24432004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2444
ef614e04
JD
2445 * window.c (shrink_windows): Handle special case of one window left
2446 when trying to shrink the final reminder. Grow windows if
2447 total_removed is less than total_shrink.
2448
a130b901
JD
2449 * xmenu.c (pop_down_menu): Remove global variable current_menu,
2450 extract pointer from arg with XSAVE_VALUE.
46303896
KS
2451 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
2452 Construct arg to record_unwind_protect with make_save_value.
a130b901 2453
d9a03ad2
RS
24542004-11-13 Richard M. Stallman <rms@gnu.org>
2455
2456 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
2457 (get_next_display_element): Fix previous change to apply only to \n.
2458
2459 * indent.c (Fvertical_motion): Scan to PT from start of line to
2460 make iterator consistent.
2461
2462 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
2463
b3935289
JD
24642004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2465
2466 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
2467
2468 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
2469 Record unwind with clean_up_file_dialog.
2470
78819ebb
KS
2471 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
2472 Declare.
b3935289
JD
2473
2474 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
2475
af89e871
JD
24762004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2477
457a8155 2478 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6abf3a27 2479 (xg_file_sel_destroy): Remove.
46303896
KS
2480 (xg_file_response_cb, pop_down_file_dialog)
2481 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
457a8155 2482 New functions.
6abf3a27
SM
2483 (xg_get_file_with_chooser, xg_get_file_with_selection):
2484 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
457a8155
JD
2485 Move common code to xg_get_file_name. Return widget created.
2486 (xg_get_file_name): Set name, transient for, modal and destroy
2487 with parent here. Connect response signal to xg_file_response_cb,
2488 connect delete-event to gtk_true. Record pop_down_file_dialog
2489 for unwind. Do event loop and call x_menu_wait_for_event in loop.
2490 (xg_create_widget): Make dialogs modal.
2491
af89e871
JD
2492 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
2493 Lisp_Object.
2494 (popup_get_selection): Move unwind protect ...
2495 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
2496 Move destroy of widget to pop_down_menu.
2497 (popup_widget_loop): Move unwind protect ...
2498 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
2499 Move destroy of widget to pop_down_menu.
2500 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6abf3a27 2501 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
af89e871
JD
2502 x_mouse_leave and grabbed = 0 to pop_down_menu.
2503
5596fbf1
KS
25042004-11-13 Kim F. Storm <storm@cua.dk>
2505
2506 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
2507 (syms_of_xdisp): DEFVAR_BOOL it.
2508 (make_cursor_line_fully_visible, try_cursor_movement)
2509 (try_window_id): Use it.
2510
b9de078a
KS
25112004-11-12 Kim F. Storm <storm@cua.dk>
2512
381f7091
KS
2513 * dispextern.h (struct glyph_row): New member extra_line_spacing.
2514 (struct it): New member max_extra_line_spacing.
2515 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
2516 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
2517 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
2518 part of last line is only extra line spacing (so the text on the
2519 line is fully visible). Use helper macros.
2520 Add W arg (to use them). All callers changed.
2521 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
2522 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
2523
6abf3a27
SM
2524 * window.c (window_scroll_pixel_based, Frecenter):
2525 Use move_it_vertically_backward directly.
381f7091
KS
2526 (Frecenter): Fix calculation of new start pos for negative arg.
2527 Before, the new start pos was sometimes chosen too far back, so
2528 the last line became only partially visible, and thus would be
2529 either only semi-visible or automatically scrolled to the middle
2530 of the window by redisplay.
2531
2532 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
2533 (move_it_vertically_backward): Don't recure to move further back.
2534 (move_it_vertically): Remove superfluous condition.
2535 (move_it_by_lines): Clear last_height when moved 0 lines.
6abf3a27 2536 (resize_mini_window): Use it.max_extra_line_spacing.
381f7091
KS
2537 (display_tool_bar_line): Clear row->extra_line_spacing.
2538 (try_scrolling): Use move_it_vertically_backward directly.
2539 (redisplay_window): Likewise.
2540 (compute_line_metrics): Set row->extra_line_spacing.
2541 (display_line, display_string): Likewise.
2542 (x_produce_glyphs): Update it->max_extra_line_spacing.
2543
b9de078a
KS
2544 * xmenu.c (pop_down_menu): Return nil.
2545
c3438661
JD
25462004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2547
2548 * xmenu.c (x_menu_wait_for_event): New function.
2549 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
2550 to handle timers.
df00f436
JD
2551 (popup_widget_loop): Add argument do_timers.
2552 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
2553 do_timers to popup_widget_loop.
c3438661
JD
2554 (xmenu_show): Call XMenuActivateSetWaitFunction so that
2555 x_menu_wait_for_event is called by XMenuActivate.
b9de078a 2556 (create_and_show_popup_menu): Pass 1 for do_timers to
df00f436 2557 popup_get_selection.
f1d1cd24
JD
2558 (pop_down_menu): New function.
2559 (popup_get_selection, popup_widget_loop): Unwind protect to
2560 pop_down_menu.
2561 (popup_widget_loop): Add argument widget.
2562 (create_and_show_popup_menu, create_and_show_dialog): Pass new
2563 argument widget to popup_widget_loop.
c3438661 2564
32e2fb04
SM
25652004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2566
2567 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
2568
0faf6806
KS
25692004-11-09 Kim F. Storm <storm@cua.dk>
2570
2571 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
2572 Fix various comments referring to XEvents instead of input events.
2573 (x_queue_event): Fix format strings.
2574 (x_stop_queuing_selection_requests): Likewise.
2575
2576 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
2577 (pint2hrstr): Add extra braces to silence compiler.
2578
2579 * print.c (print_object): Fix format string.
2580
2581 * lread.c (read1): Fix next_char matching.
2582
2583 * lisp.h (Fdelete): Add EXFUN.
2584 (replace_range_2): Add prototype.
2585
2586 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
2587
2588 * intervals.h (NULL_INTERVAL_P): Add separate version when
2589 ENABLE_CHECKING is not defined to silence compiler.
2590 (compare_string_intervals): Add prototype.
2591
2592 * fringe.c (destroy_fringe_bitmap): Fix return type.
2593 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
2594
2595 * emacs.c (Fdump_emacs): Fix format string.
2596
2597 * doc.c: Include <ctype.h>.
2598 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
2599
2600 * data.c (store_symval_forwarding): Remove unused variables.
2601
2602 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
2603
16bf4e32
JD
26042004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2605
2606 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
2607 to ${OLDXMENU}.
2608
cdb805a9
KS
26092004-11-09 Kim F. Storm <storm@cua.dk>
2610
2611 * process.c (Fmake_network_process): Remove kludge for interrupted
2612 connects on BSD. If connect is interrupted, just close socket and
2613 start over rather than sleeping and retry with same socket.
2614
d87a9ab8 26152004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
0faf6806 2616
a8b16c80
JD
2617 * .cvsignore: Add buildobj.lst.
2618
d87a9ab8
JD
2619 * doc.c: New variable Vbuild_files.
2620 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
2621 file names from buildobh.lst. Only attach docstrings from files
2622 that are in Vbuild_files.
2623 (syms_of_doc): Defvar Vbuild_files.
2624
2625 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
2626 and w32*.o.
2627 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6abf3a27 2628 (mostlyclean): Rm buildobj.lst
d87a9ab8
JD
2629
2630 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
2631 is linked.
2632
b6709e77
KS
26332004-11-09 Kim F. Storm <storm@cua.dk>
2634
2635 * fringe.c (update_window_fringes): Update fringe bitmaps if
2636 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
2637 also update previous row to get rid of misc. artifacts.
2638
bae9677d
KS
26392004-11-08 Kim F. Storm <storm@cua.dk>
2640
2641 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 2642 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 2643
3f8ea68c
EZ
26442004-11-08 Eli Zaretskii <eliz@gnu.org>
2645
2646 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
2647 Don't include <sys/time.h> explicitly.
2648 Include <stdio.h> unconditionally, not just on MacOS.
2649
a653f812
KH
26502004-11-08 Kenichi Handa <handa@m17n.org>
2651
2652 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
2653 don't pay attention to '\' before '*'.
2654 (fontset_pattern_regexp): Change the meaning of the second arg.
2655 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
2656 (check_fontset_name): Try NAME as literal at first, and if it
2657 failes, try NAME as pattern.
2658
c37caf9d
JD
26592004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2660
2661 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
2662
b72915a7
AS
26632004-11-07 Andreas Schwab <schwab@suse.de>
2664
78819ebb
KS
2665 * lisp.h (Fmsdos_downcase_filename): Declare.
2666 * dired.c (Fmsdos_downcase_filename): Don't declare here.
b72915a7
AS
2667 * fileio.c: Likewise.
2668
238a44a8
JD
26692004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2670
2671 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
2672 comparisons with integers instead of Lisp_Object address.
2673 (Fmsdos_set_keyboard): Declare argument allkeys.
2674
2675 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
2676
78819ebb 2677 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
238a44a8
JD
2678 int/Lisp_Object mixup.
2679
2680 * fileio.c: Ditto.
2681
31141c13
ST
26822004-11-06 Steven Tamm <steventamm@mac.com>
2683
2684 * editfns.c: Need to include sys/time.h before resource.h on darwin.
2685
f28c1bd9
RS
26862004-11-06 Richard M. Stallman <rms@gnu.org>
2687
2688 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
2689
2690 * xfaces.c (merge_named_face): GCPRO the face_name in the
2691 named_merge_point struct that we make.
2692 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
2693
2694 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
2695 before deciding whether to inactivate mark.
2696
59dede22
EZ
26972004-11-06 Lars Brinkhoff <lars@nocrew.org>
2698
2699 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
2700 * editfns.c (Fget_internal_run_time): New function.
2701 (syms_of_data): Defsubr it.
2702 * fns.c (sxhash): As far as possible, merge calculation of
2703 hash code for symbols and strings.
59dede22 2704
27540e81
EZ
27052004-11-06 Eli Zaretskii <eliz@gnu.org>
2706
2707 * frame.c (syms_of_frame): Fix the example in the doc string.
2708
df470e3b
JD
27092004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2710
2711 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
2712
2713 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
2714 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 2715
4cc8522c
LT
27162004-11-05 Luc Teirlinck <teirllm@auburn.edu>
2717
2718 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
2719
d4a42098
KS
27202004-11-05 Kim F. Storm <storm@cua.dk>
2721
a8490886
KS
2722 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
2723
d4a42098
KS
2724 * fileio.c (Ffile_modes): Doc fix.
2725 (auto_save_1): Check for Ffile_modes nil value.
2726
36a2b04c
KS
27272004-11-05 Kim F. Storm <storm@cua.dk>
2728
2729 * xselect.c (struct selection_event_queue, selection_queue)
2730 (x_queue_selection_requests, x_queue_event)
2731 (x_start_queuing_selection_requests)
2732 (x_stop_queuing_selection_requests): Add new queue for selection
2733 input events to replace previous XEvent queue in xterm.c.
2734 (queue_selection_requests_unwind): Adapt to new queue.
32e2fb04
SM
2735 (x_reply_selection_request): Adapt to new queue.
2736 Unexpect wait_object in case of x errors (memory leak).
36a2b04c
KS
2737 (x_handle_selection_request, x_handle_selection_clear): Make static.
2738 (x_handle_selection_event): New function. May queue selection events.
2739 (wait_for_property_change_unwind): Use save_value instead of cons.
2740 Clear property_change_reply_object.
2741 (wait_for_property_change): Abort if already waiting.
2742 Use save_value instead of cons for unwind data.
2743 (x_handle_property_notify): Skip events already arrived, but don't
2744 free them, as "arrived" field is checked by wait_for_property_change,
2745 and it will be freed by unwind or explicit unexpect_property_change.
2746 (x_get_foreign_selection): Add to new queue.
2747 (receive_incremental_selection): Don't unexpect wait_object when done
2748 as it has already been freed by previous wait_for_property_change.
2749
2750 * xterm.h (x_start_queuing_selection_requests)
2751 (x_stop_queuing_selection_requests, x_handle_selection_request)
2752 (x_handle_selection_clear): Remove prototypes.
2753 (x_handle_selection_event): Add prototype.
2754
2755 * xterm.c (handle_one_xevent): Don't queue X selection events
2756 here, it may be too late if we start queuing after we have already
2757 stored some selection events into the kbd buffer.
2758 (struct selection_event_queue, queue, x_queue_selection_requests)
2759 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
2760 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
2761 (x_catch_errors_unwind): Block input around final XSync.
2762
2763 * keyboard.h (kbd_buffer_unget_event): Add prototype.
2764
2765 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
2766 (kbd_buffer_unget_event): New function.
2767 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
2768 and use x_handle_selection_event.
2769 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
2770
9c3ad9e1
JD
27712004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2772
2773 * xselect.c (TRACE3): New debug macro.
2774 (x_reply_selection_request): Use it.
2775 (receive_incremental_selection): In call to TRACE0, the name of
2776 a symbol is in xname.
2777
a33b89de
KS
27782004-11-05 Kim F. Storm <storm@cua.dk>
2779
2780 * fontset.c (fontset_pattern_regexp): Use unsigned char.
2781
a872928c
JD
27822004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2783
88208bb8
JD
2784 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
2785
78819ebb 2786 * gtkutil.h (use_old_gtk_file_dialog): Declare.
0a4f23f3
JD
2787
2788 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
32e2fb04 2789 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
0a4f23f3
JD
2790 * xfns.c (syms_of_xfns): ... to here.
2791
a872928c
JD
2792 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
2793 it doesn't start with /.
2794
b912921c
KH
27952004-11-04 Kenichi Handa <handa@m17n.org>
2796
2797 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
2798 treat it as a literal character.
2799
c524d9a6
KS
28002004-11-03 Kim F. Storm <storm@cua.dk>
2801
2802 * .gdbinit (ppt): New function.
2803
8cfd0f36
JD
28042004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2805
a11e1dce
JD
2806 * xterm.c (x_window_to_scroll_bar): Only call
2807 xg_get_scroll_id_for_window if toolkit scroll bars are used.
2808
8cfd0f36
JD
2809 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
2810 of save.
2811
a93563fd
AS
28122004-11-02 Andreas Schwab <schwab@suse.de>
2813
2814 * window.c (Fscroll_right): Fix last change.
2815
2b2d59d8
KS
28162004-11-02 Kim F. Storm <storm@cua.dk>
2817
2818 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
2819
28202004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2821
2822 * callproc.c (Fcall_process): Block input around vfork.
2823
ca28104d
KS
28242004-11-02 Kim F. Storm <storm@cua.dk>
2825
2826 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
2827 (syms_of_eval): Defsubr it.
2828
29bb7127
RS
28292004-11-02 Richard M. Stallman <rms@gnu.org>
2830
2831 * insdel.c (replace_range_2): New function.
2832
2833 * casefiddle.c (casify_region): Handle changes in byte-length
2834 using replace_range_2.
2835
2836 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
2837
b6189c3b 2838 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
2839 Subtract 1 from pos when checking previous newline for invisibility.
2840
2841 * window.c (window_scroll_pixel_based): Update preserve_y
2842 for header line if any.
2843 (Fscroll_left, Fscroll_right): Don't call interactive_p;
2844 use a new second argument instead.
2845
2846 * eval.c (Fcall_interactive_p): New function.
2847 (interactive_p): Don't test INTERACTIVE here.
2848 (Finteractive_p): Doc fix.
2849
2850 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
2851
b6189c3b 28522004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
2853
2854 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 2855 comparing font names.
a3fe4aaf 2856
2a00cdb4
JD
28572004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2858
f9d64bb3
JD
2859 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
2860 Fx_file_dialog if only directories should be read.
2861
2862 * lisp.h: Fx_file_dialog takes 5 parameters.
2863
32e2fb04
SM
2864 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
2865 Add parameter only_dir_p.
f9d64bb3
JD
2866 In Motif version, don't put DEFAULT_FILENAME in filter part of the
2867 dialog, just text field part. Do not add DEFAULT_FILENAME
2868 to list of files if it isn't there.
2869 In GTK version, pass only_dir_p parameter to xg_get_file_name.
2870
32e2fb04
SM
2871 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
2872 Check only_dir_p instead of comparing prompt to "Dired". When using
f9d64bb3
JD
2873 a save dialog, add option kNavDontConfirmReplacement, change title
2874 to "Enter name", change text for save button to "Ok".
2875
32e2fb04
SM
2876 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
2877 Check only_dir_p instead of comparing prompt to "Dired".
f9d64bb3
JD
2878
2879 * gtkutil.c (xg_get_file_with_chooser)
2880 (xg_get_file_with_selection): New functions, only defined ifdef
2881 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
2882 respectively.
2883 (xg_get_file_name): Add parameter only_dir_p.
2884 Call xg_get_file_with_chooser or xg_get_file_with_selection
2885 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
2886 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
2887
2888 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
2889
2a00cdb4
JD
2890 * config.in: Rebuild (added HAVE_GTK_FILE_*).
2891
f6749d5d
KS
28922004-11-01 Kim F. Storm <storm@cua.dk>
2893
32e2fb04
SM
2894 * process.c (connect_wait_mask, num_pending_connects):
2895 Only declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 2896 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
2897 (IF_NON_BLOCKING_CONNECT): New helper macro.
2898 (wait_reading_process_output): Only declare and use local vars
2899 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 2900
1a99fe1a
JR
29012004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
2902
2903 * w32term.c (x_scroll_run): Delete region objects after use.
2904
fcdb28b4
JD
29052004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2906
495ef86b
JD
2907 * xmenu.c: Add prototypes for forward function declarations.
2908 (popup_get_selection): Remove parameter do_timers, remove call to
2909 timer_check.
32e2fb04
SM
2910 (create_and_show_popup_menu, create_and_show_dialog):
2911 Remove parameter do_timers from call to popup_get_selection.
495ef86b 2912
12e6566a
JD
2913 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
2914 tool_bar_items and assign the result to f->tool_bar_items if
2915 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
2916 tool_bar_items to assignment of result.
2917
fcdb28b4
JD
2918 * atimer.c (alarm_signal_handler): Do not call set_alarm if
2919 pending_atmers is non-zero.
2920
1a1a0c4c
KS
29212004-10-31 Kim F. Storm <storm@cua.dk>
2922
2923 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
2924
a36f1680
JW
29252004-10-28 Will <will@glozer.net>
2926
2927 * macterm.c: allow user to assign key modifiers to the Mac Option
2928 key via a 'mac-option-modifier' variable.
2929
32e2fb04 29302004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2d586478
SM
2931
2932 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
2933 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
2934 (x_handle_selection_request, x_handle_selection_clear)
2935 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
2936
4f71c13f
RS
29372004-10-28 Richard M. Stallman <rms@gnu.org>
2938
2939 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
2940
2941 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
2942
068f3848
SM
29432004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
2944
2945 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
2946 comment-starter over a 1-char one.
2947
4660a9e3
RS
29482004-10-27 Richard M. Stallman <rms@gnu.org>
2949
2950 * xdisp.c (get_next_display_element): In mode lines,
2951 treat newline and tab like other control characters.
2952
2953 * editfns.c (Fmessage): Doc fix.
2954
2955 * indent.c (vmotion): When moving up, check the newline before.
2956 Make prevline an int, not a Lisp_Object.
2957
233f3db6
KS
29582004-10-27 Kim F. Storm <storm@cua.dk>
2959
2960 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
2961 Only allocate info and discarded tables once.
2962
2963 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
2964 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
2965 (SAFE_FREE): Test it to determine if we need to unwind to free.
2966 Remove size arg. All users changed.
2967 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
2968
1442465d
JD
29692004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2970
2971 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
2972 (xg_destroy_widgets): Rename from remove_from_container.
2973 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
2974 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
2975 instead of remove_from_container.
2976 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
2977 (free_frame_tool_bar): Add comment.
2978
2979 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
2980 is not NULL before strcmp.
2981
c8636435
KS
29822004-10-26 Kim F. Storm <storm@cua.dk>
2983
2984 * callint.c (Fcall_interactively): Add 'U' code to get the
2985 up-event discarded by a previous 'k' or 'K' argument.
2986
5629f29b
DK
29872004-10-26 David Kastrup <dak@gnu.org>
2988
2989 * buffer.c (syms_of_buffer): Fix a few typos.
2990
4f2f546e
JD
29912004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2992
2993 * xsmfns.c: Put empty line between comment and function body.
2994 Use two spaces before comment end.
2995
fc1062f5
KH
29962004-10-25 Kenichi Handa <handa@m17n.org>
2997
2998 * fontset.c (fontset_pattern_regexp): Optimize for the case that
2999 PATTERN is full XLFD.
3000
be13f5e5
KH
30012004-10-24 Kenichi Handa <handa@m17n.org>
3002
3003 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
3004
3005 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
3006 (regex_compile): Return REG_ERANGEX if appropriate.
3007
d0ee2ed3
KH
30082004-10-22 Kenichi Handa <handa@m17n.org>
3009
3010 * editfns.c (Ftranslate_region_internal): New function.
3011 (syms_of_editfns): Defsubr it.
3012
63ea8ea5
JD
30132004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3014
3015 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
3016
9ba27690 30172004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
c27ed90a 3018
068f3848
SM
3019 * xterm.h (x_output): New member `xic_base_fontname'.
3020 (FRAME_XIC_BASE_FONTNAME): New macro.
3021 (xic_free_xfontset): Declare.
c27ed90a 3022
068f3848
SM
3023 * xfns.c (xic_create_xfontset): Share fontsets between frames
3024 based on base_fontname.
3025 (xic_free_xfontset): New function.
3026 (free_frame_xic): Use it.
3027 (xic_set_xfontset): Ditto.
c27ed90a 3028
068f3848 3029 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
3030
3031
59508699
JR
30322004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
3033
3034 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
3035
dede2792
JD
30362004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3037
3aca2078
JD
3038 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
3039 XSync.
3040
dede2792
JD
3041 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
3042 New variables and constant.
3043 (main): Calculate heap_bss_diff. If we are dumping and the
3044 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
3045 and exec ourself again.
3046 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
3047 print a warning.
3048
3049 * lastfile.c: Make my_endbss and my_endbss_static available on all
3050 platforms.
3051
3052 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
3053 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
3054
1dc5ba01
LT
30552004-10-19 Luc Teirlinck <teirllm@auburn.edu>
3056
3057 * data.c (Flocal_variable_if_set_p): Doc fix.
3058
950090be
JR
30592004-10-19 Jason Rumney <jasonr@gnu.org>
3060
3061 * w32.c (init_environment): Set emacs_dir correctly when running
3062 emacs from the build directory.
3063
8550b998
RS
30642004-10-19 Richard M. Stallman <rms@gnu.org>
3065
3066 * editfns.c (Fdelete_and_extract_region):
3067 If region is empty, return null string.
3068
08dedea6
JD
30692004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3070
1dc5ba01 3071 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 3072 and canon_width.
068f3848 3073 (xg_frame_cleared): Remove.
08dedea6 3074
068f3848
SM
3075 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
3076 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
3077 (xg_create_scroll_bar): Put an event box widget between
3078 the scroll bar widget and the edit widget.
3079 (xg_show_scroll_bar): Show the parent widget (the event box).
3080 (xg_remove_scroll_bar): Destroy parent (the event box) also.
3081 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
3082 Move the parent (the event box) widget inside the fixed widget.
3083 Move window clear to xterm.c.
3084
068f3848 3085 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 3086
08dedea6 3087 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
3088 (x_scroll_bar_create, XTset_vertical_scroll_bar):
3089 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
3090 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
3091
8550b998 30922004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
3093
3094 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 3095
84338890
JD
30962004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3097
3098 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
3099 gdk_window_clear and move gdk_window_process_all_updates after
3100 clear so events are sent to the X server in correct order.
3101
6e1b0d8c
KH
31022004-10-18 Kenichi Handa <handa@m17n.org>
3103
3104 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
3105 comparing font names.
8550b998 3106 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
3107 (list_fontsets): Likewise.
3108
3109 * search.c (fast_string_match_ignore_case): New function.
3110
3111 * lisp.h (fast_string_match_ignore_case): Extern it.
3112
345e75a8
KS
31132004-10-17 Kim F. Storm <storm@cua.dk>
3114
3115 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
3116 than bitmap if there is not left fringe.
3117 (get_overlay_arrow_glyph_row): Also used on windows system.
3118 (display_line): Display overlay string if no left fringe.
3119
be13cbb7
JR
31202004-10-16 Jason Rumney <jasonr@gnu.org>
3121
3122 * w32fns.c (w32_font_match): Encode font name being matched.
3123
c2e2ede7
RS
31242004-10-16 Richard M. Stallman <rms@gnu.org>
3125
3126 * window.c (Fspecial_display_p): Doc fix.
3127
043f7f73 31282004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
3584d95d
SM
3129
3130 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
3131 Don't ignore menus, because where-is-internal already does it for us.
3132
699a0392
KS
31332004-10-15 Kim F. Storm <storm@cua.dk>
3134
b3c7a89b
KS
3135 * xdisp.c (redisplay_window): Only update fringes and vertical
3136 border on window frames.
699a0392 3137
4e382b0f
AS
31382004-10-14 Andreas Schwab <schwab@suse.de>
3139
3140 * m/ia64.h (DATA_SEG_BITS): Don't define.
3141
329a7be2
KS
31422004-10-14 Kim F. Storm <storm@cua.dk>
3143
3144 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 3145 in some X versions.
329a7be2 3146
982241b1
SM
31472004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
3148
3149 * fns.c (map_char_table): Add missing gcpros.
3150
9238467d
SM
31512004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
3152
3153 * keymap.c (get_keymap): An autoload form is not a keymap.
3154
3155 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
3156
4440e3ca
KS
31572004-10-13 Kim F. Storm <storm@cua.dk>
3158
7cfdabde
KS
3159 * callproc.c (Fcall_process): Simplify handling of display arg.
3160 Resume `display_on_the_fly' once a coding system is determined.
3161
4440e3ca
KS
3162 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
3163
1c8dec6a
KS
31642004-10-12 Kim F. Storm <storm@cua.dk>
3165
3166 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
3167 caller, such as call-process, is not going to poll for input.
3168 (calc_line_height_property): Handle case where it->object is nil.
3169
3170 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
3171
170b174c
KH
31722004-10-12 Kenichi Handa <handa@m17n.org>
3173
9238467d
SM
3174 * xdisp.c (get_next_display_element):
3175 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
3176 chars in octal in unibyte buffer.
3177
b583964c
KS
31782004-10-12 Kim F. Storm <storm@cua.dk>
3179
3180 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
3181 are no ordinary bindings.
3182
29fabd8c
JD
31832004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3184
9238467d 3185 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 3186
c3f4c690
ST
31872004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3188
9238467d
SM
3189 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
3190 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 3191 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
3192 terminal frame.
3193 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
3194 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
3195 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
3196 Make a cancel file-open dialog be like C-g.
9238467d
SM
3197 * mac.c (mktime): Use emacs_mktime.
3198 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
3199 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 3200
9688f9eb
KS
32012004-10-10 Kim F. Storm <storm@cua.dk>
3202
3203 * keyboard.c (timer_resume_idle): New function to resume idle
3204 timer without resetting timers on the idle list.
3205 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
3206 (timer_start_idle, timer_stop_idle): Declare static.
3207 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
3208
3209 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
3210
f7f3a65f
ST
32112004-10-08 Steven Tamm <steventamm@mac.com>
3212
9238467d 3213 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 3214 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 3215 NULL where 0 should be used.
f7f3a65f
ST
3216 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
3217 objc/malloc.h
9238467d 3218 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 3219
3c7d999a
KS
32202004-10-07 Kim F. Storm <storm@cua.dk>
3221
3222 * xdisp.c (redisplay_window): Fix flicker on vertical line between
3223 windows. Update vertical line after drawing window fringes, but
3224 only if actually drawing any bitmaps--or there is no fringe.
3225
3226 * xterm.c (x_update_window_end): Likewise.
3227 * macterm.c (x_update_window_end): Likewise.
3228 * w32term.c (x_update_window_end): Likewise.
3229
3230 * fringe.c (draw_window_fringes): Return value now indicates if
3231 any fringe bitmaps were redrawn (or there are no fringes).
3232
3233 * dispextern.h (draw_window_fringes): Update prototype.
3234
bf06c82f
ST
32352004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3236
3237 * macfns.c (mac_get_window_bounds): Add extern.
3238 (x_real_positions): Use mac_get_window_bounds.
3239
3240 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
3241 xmenu.c (YAILOM).
3c7d999a 3242
bf06c82f
ST
3243 * macterm.c [!MAC_OSX]: Include Windows.h.
3244 (front_emacs_window): Rename from mac_front_window. All uses
3245 changed. Return the frontmost non-tooltip emacs window.
3246 (mac_get_window_bounds): New function.
3247 (x_calc_absolute_position): Use the difference of width and height
3248 between the inner and outer window.
3249 (x_set_offset): Specify window position by the coordinae of the
3250 outer window. Adjust the position if the title bar is completely
3251 outside the screen.
3252 (app_is_suspended, app_sleep_time): Remove unused variables.
3253 (do_app_resume, do_app_suspend): Remove their contents because
3254 window-activate/deactivate events will do the job.
3255 (do_zoom_window): Remove unused variables. Make compliant to the
3256 standard way of zooming. Set f->left_pos and f->top_pos.
3257 (XTread_socket): Don't use argument `expected'. Don't use
3258 FrontWindow to determine the clicked window. Exclude unprocessed
3259 mouseUp cases in the early stage. Add parentheses to fix operator
3260 precedence.
3261 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
3262
4cbbf6b7 32632004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
3264
3265 * config.in: Regenerate.
3266
3267 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
3268 HAVE_EXECSHIELD.
3269
b90ee8b5
JD
32702004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3271
3272 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
3273 a row if Alt or Meta has been found for that row. Also stop scanning
3274 for Keysyms for that row.
3275
904db1a2
KS
32762004-10-04 Kim F. Storm <storm@cua.dk>
3277
0207b8ad
KS
3278 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
3279 to list. Include overlay arrow bitmap in return value.
3280
25f7220c
KS
3281 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
3282 bars with fractional column width. If scroll bar separates two
3283 windows, move it towards the window it belongs to. Only update
3284 the padding area below the scroll bar widget when necessary,
3285 i.e. when scroll bar widget is created, moved, or resized.
3286
562020fe
KS
3287 * xdisp.c (define_frame_cursor1): Do not change frame cursor
3288 while tracking/dragging mouse.
3289 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
3290
37e34af7
KS
3291 * window.c (coordinates_in_window): Relax check for cursor
3292 on vertial border between mode lines.
3293 (Fset_window_fringes): Do not allow negative widths.
3294 (Fset_window_scroll_bars): Likewise.
3295
904db1a2
KS
3296 * .gdbinit (pp): Shorthand for p ARG + pr.
3297 (ff): New command: flush frame updates (X only).
3298
38fe4f64
MA
32992004-10-03 Michael Albinus <michael.albinus@gmx.de>
3300
3301 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
3302
9de36315
KH
33032004-09-30 Kenichi Handa <handa@m17n.org>
3304
07c381ad 3305 * process.c (send_process): Free composition data.
9de36315 3306
07c381ad 3307 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
3308
3309 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
3310 compositions to encode.
3311 (encode_coding_string): Likewise. Free composition data.
3312
b6189c3b 33132004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
3314
3315 * coding.c (code_convert_region): Free composition data.
9de36315 3316
f2a54fbc
KS
33172004-09-29 Kim F. Storm <storm@cua.dk>
3318
dc5d6435
KS
3319 * fringe.c: Remove limit on number of bitmaps.
3320 (fringe_bitmaps, fringe_faces): Change to pointers.
3321 (max_fringe_bitmaps): New var.
3322 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
3323 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
3324
3325 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
3326 (struct glyph_row): Reorder fringe_bitmap related fields.
3327 (struct it): Likewise.
3328
3329 * w32term.c (fringe_bmp): Change to pointer.
3330 (max_fringe_bmp): New var.
3331 (w32_define_fringe_bitmap): Expand fringe_bmp.
3332 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
3333 (w32_destroy_fringe_bitmap): Likewise.
3334
33352004-09-29 Kim F. Storm <storm@cua.dk>
3336
3337 * fringe.c: Simplify last change.
f2a54fbc
KS
3338 (lookup_fringe_bitmap): New function.
3339 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
3340 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
3341 Keep standard bitmaps in Vfringe_bitmaps.
3342 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
3343 (Fset_fringe_bitmap_face): Likewise.
3344
3345 * dispextern.h (lookup_fringe_bitmap): Add prototype.
3346 (valid_fringe_bitmap_p): Remove prototype.
3347
3348 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
3349
841a8bca
KS
33502004-09-29 Kim F. Storm <storm@cua.dk>
3351
1f2da365
KS
3352 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
3353 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
3354
841a8bca
KS
3355 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
3356
3357 * fringe.c (Vfringe_bitmaps): New variable.
3358 (syms_of_fringe): DEFVAR_LISP it.
3359 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
3360 Change arg to Lisp_Object and fail if not an integer.
3361 (get_fringe_bitmap_name, resolve_fringe_bitmap)
3362 (destroy_fringe_bitmap): New functions.
9238467d
SM
3363 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
3364 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
3365 clear its fringe property.
3366 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
3367 Fdestroy_fringe_bitmap.
3368 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
3369 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
3370 and set fringe property. Signal error if no free slots.
3371 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
3372 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
3373
3374 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
3375 symbols with a fringe property.
3376
4d965590
KS
33772004-09-27 Kim F. Storm <storm@cua.dk>
3378
3379 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
3380 Doc fix. Format may now be a symbol or alist, not a cons.
3381
3382 * fringe.c (update_window_fringes): Handle new formats of
3383 indicate-buffer-boundaries (symbol or alist). No longer
3384 allow a simple cons.
3385 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
3386
e888c2b3
JD
33872004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3388
9238467d 3389 * config.in: Rebuild.
e888c2b3 3390
83f1cb94
JD
33912004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3392
3393 * config.in: Rebuild.
3394
dd3b1d60 3395 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 3396
2c51754c
SM
33972004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
3398
3399 * xterm.c (x_term_init): Work around a bug in some X servers.
3400
3df5f8aa
RS
34012004-09-18 Richard M. Stallman <rms@gnu.org>
3402
557ca2c1
RS
3403 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
3404
3df5f8aa
RS
3405 * xdisp.c (try_window_reusing_current_matrix):
3406 Handle the case where we reach the old displayed text,
3407 out of sync with the old line boundary.
3408
9238467d 34092004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
3410
3411 * fileio.c (Finsert_file_contents): Fix case of replacement in a
3412 narrowed buffer.
3413
bfa02563
KS
34142004-09-14 Kim F. Storm <storm@cua.dk>
3415
a25fe164
KS
3416 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
3417
bfa02563
KS
3418 * xfaces.c (Qface_no_inherit): New var.
3419 (syms_of_xfaces): Intern and staticpro it.
3420 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
3421 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
3422 Don't increment face_change_count when face has non-nil
3423 face-no-inherit property.
3424
126f9c02
SM
34252004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
3426
892a8eb5
SM
3427 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
3428 (Fbyte_code): Remove dead code after `wrong_type_argument'.
3429
126f9c02 3430 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 3431 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 3432
c0ad3b38
KS
34332004-09-12 Kim F. Storm <storm@cua.dk>
3434
3435 * editfns.c (Fformat): Handle format strings with multiple text
3436 properties. Reverse text property list from the format string,
3437 so the positions are in increasing order.
3438
844fc085
JD
34392004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3440
3441 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
3442 x_uncatch_errors so that possible protocol errors are delivered.
3443
b106731c
EZ
34442004-09-10 Eli Zaretskii <eliz@gnu.org>
3445
21065c92
EZ
3446 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
3447 blockinput.h.
3448 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
3449 charset.h, and coding.h
9238467d 3450 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
3451 (term.o): Depend on window.h and keymap.h.
3452 (abbrev.o): Depend on syntax.h.
3453 (callint.o): Depend on keymap.h.
3454 (casefiddle.o): Depend on charset.h and keymap.h.
3455 (category.o): Depend on keymap.h.
3456 (coding.o): Depend on dispextern.h.
3457 (cmds.o): Depend on keyboard.h and keymap.h.
3458 (dispnew.o): Depend on indent.h and intervals.h.
3459 (doc.o): Depend on keymap.h.
3460 (editfns.o): Depend on frame.h.
3461 (emacs.o): Depend on dispextern.h.
3462 (fileio.o): Don't depend on ccl.h.
3463 (filelock.o): Depend on charset.h and coding.h.
3464 (frame.o): Depend on w32term.h and macterm.h.
3465 (insdel.o): Depend on region-cache.h.
3466 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
3467 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
3468 (search.o): Depend on $(INTERVALS_SRC).
3469 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
3470 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
3471 xterm.h, w32term.h, and macterm.h.
3472 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
3473 w32term.h, and macterm.h.
3474 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
3475 region-cache.h, xterm.h, w32term.h, and macterm.h.
3476 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
3477 (data.o): Depend on frame.h.
3478 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
3479 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
3480 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
3481 (intervals.o): Depend on keymap.h.
3482
9238467d
SM
3483 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
3484 Add debugging print-out to termscript.
b106731c 3485
64b7122d
RS
34862004-09-09 Richard M. Stallman <rms@gnu.org>
3487
3488 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
3489
5670531e
RS
34902004-09-08 Richard M. Stallman <rms@gnu.org>
3491
6cb4a892
RS
3492 * window.c (Fset_window_buffer): Doc fix.
3493
5670531e
RS
3494 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
3495
7e388eb7
JL
34962004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
3497
3498 * minibuf.c (history_delete_duplicates): New variable.
3499 (read_minibuf): Use it.
3500 (syms_of_minibuf): Create the corresponding lisp variable.
3501
370e3587
KS
35022004-09-08 Kim F. Storm <storm@cua.dk>
3503
3504 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
3505 overlay just before point.
3506
f844ba4e
LT
35072004-09-07 Luc Teirlinck <teirllm@auburn.edu>
3508
3509 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
3510 * buffer.c (reset_buffer, init_buffer_once):
3511 Handle auto_save_file_format field.
f844ba4e
LT
3512 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
3513 `buffer-auto-save-file-format'.
f844ba4e
LT
3514 * fileio.c: Delete declaration for removed Vauto_save_file_format.
3515 (build_annotations): Adapt to replacement of
3516 `auto-save-file-format' with the new buffer-local variable
3517 `buffer-auto-save-file-format'.
3518 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
3519
f0f90717
JR
35202004-09-07 Jason Rumney <jasonr@gnu.org>
3521
3522 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
3523
9238467d
SM
3524 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
3525 Handle Unicode menu titles.
f0f90717 3526
4e14f66c
KS
35272004-09-07 Kim F. Storm <storm@cua.dk>
3528
3529 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
3530 property from text property or overlay strings at point.
3531
9238467d 35322004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
3533
3534 * xmenu.c (update_submenu_strings): YAILOM.
3535 (set_frame_menubar): Make sure last_i is initialized.
3536
1f06d367
JR
35372004-09-03 Jason Rumney <jasonr@gnu.org>
3538
1806714a 3539 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
3540 (digest_single_submenu): Set lname and lkey in widget_value
3541 instead of name and key.
3542 (update_submenu_strings): New function.
3543 (set_frame_menubar): Remove call to inhibit_garbage_collection,
3544 call update_submenu_strings.
3545
3546 * w32menu.c (globals_of_w32menu): Check for Unicode API.
3547 (digest_single_submenu, w32_menu_show): Encode menu strings as
3548 UTF-8 if Unicode API is available.
3549 (utf8to16): New function.
3550 (add_menu_item): Use it when calling Unicode API.
1806714a 3551
46540080
KS
35522004-09-03 Kim F. Storm <storm@cua.dk>
3553
3554 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
3555 in overlay or text-property strings; set cursor on corresponding
3556 glyph rather than at end of the string.
3557
9277ba61 35582004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 3559
9277ba61 3560 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
3561 set a new one before obtaining the global coordinate.
3562 Use FRAME_MAC_WINDOW.
3563 (x_set_name, x_set_title): Encode title to UTF8.
3564 Use SetWindowTitleWithCFString.
9277ba61
ST
3565 (Fx_server_version): Get correct OS version.
3566
1806714a
SM
3567 * macmenu.c (add_menu_item): Remove unused variable `i'.
3568 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
3569
3570 * macterm.c (x_update_end): Move SetPortWindowPort to inside
3571 BLOCK_INPUT.
3572 (x_set_offset): Use FRAME_MAC_WINDOW.
3573
3574 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
3575 nontext_cursor if it is on a scroll bar.
3576
3577 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
3578 Carbon support.
1806714a
SM
3579 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
3580 Use LIBS_CARBON.
9277ba61 3581
b10daec7
JD
35822004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3583
3584 * xfns.c (x_set_name_internal): New function. Check if we shall call
3585 xfree before ENCODE_UTF_8.
3586 (x_set_name, x_set_title): Call x_set_name_internal.
3587
f7e22385
JR
35882004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
3589
3590 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
3591 reload it.
3592
2bf436c3
JD
35932004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3594
1806714a 3595 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
3596 (single_submenu): Set lname and lkey in widget_value
3597 instead of name and key.
3598 (update_submenu_strings): New function.
3599 (set_frame_menubar): Remove call to inhibit_garbage_collection,
3600 call update_submenu_strings.
3601
2bf436c3
JD
3602 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
3603 instead of name and key.
3604 (update_submenu_strings): New function.
3605 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 3606 call update_submenu_strings.
2bf436c3
JD
3607
3608 * gtkutil.h (_widget_value): Added lname and lkey.
3609
11715f92
ST
36102004-08-30 Steven Tamm <steventamm@mac.com>
3611
3612 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
3613 by using different names for inner loop variables.
3614
5500be54
JD
36152004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3616
059cd329
JD
3617 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
3618 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
3619
5500be54
JD
3620 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
3621 tool bar items is 0.
3622
383418e5
ST
36232004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3624
3625 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
3626 strings in menu items.
3627 (single_submenu): Use ENCODE_MENU_STRING
3628 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
3629 button release isn't passed to event loop
3630 (add_menu_item): Use SetMenuItemWithCFString
3631
6eb3ee72
ST
36322004-08-26 Steven Tamm <steventamm@mac.com>
3633
3634 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
7e26f91b
KS
3635 tool-bar/menu click.
3636 * macfns.c (Fx_file_dialog): Implement using NavServices.
6eb3ee72 3637
10b43ac3
JD
36382004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3639
2728b5d0
JD
3640 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
3641
10b43ac3
JD
3642 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3643 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3644 (x_top_window_to_frame): Return 0 if wdesc is None.
3645
2ee3b79e
RS
36462004-08-22 Richard M. Stallman <rms@gnu.org>
3647
3648 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
3649 HAVE_TERMIOS]: If there's no char for this signal, drop through
3650 and use system calls.
3651
3652 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
3653
9a1ba2ea
KS
36542004-08-20 Kim F. Storm <storm@cua.dk>
3655
3656 * process.c (wait_reading_process_output): Rename from
3657 wait_reading_process_input. All uses changed.
3658 (wait_reading_process_output_1): Rename from
3659 wait_reading_process_input_1. All uses changed.
3660
3661 * dispnew.c (Fsleep_for): Remove obsolete code.
3662
295f3b30
KH
36632004-08-20 Kenichi Handa <handa@m17n.org>
3664
3665 * syntax.c (skip_chars): Fix for unibyte case.
3666
27615979
SM
36672004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
3668
3669 * syntax.c (char_quoted): Mixup byte/char pos.
3670 (back_comment): Fixup globals in all cases.
3671
00267f94
JD
36722004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3673
3674 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
3675 passing it to gtk_window_set_title.
3676
2439909e
KS
36772004-08-19 Kim F. Storm <storm@cua.dk>
3678
6ba0f14c
KS
3679 * process.c (wait_reading_process_input): Clean up.
3680 Add wait_for_cell, wait_proc, and just_wait_proc args
3681 to avoid overloading `read_kbd' and `do_display' args.
3682 Change read_kbd arg to int. All callers changed.
3683
2439909e
KS
3684 * process.c (process_send_signal): Use CDISABLE.
3685
3686 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
3687
101c421e
KS
36882004-08-18 Kim F. Storm <storm@cua.dk>
3689
3690 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
3691 forward to wait_reading_process_input via DO_DISPLAY arg.
3692 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
3693 object, only process output from that process; also inhibit
3694 running timers if DO_DISPLAY==-2.
3695
c438dc33
KS
36962004-08-17 Kim F. Storm <storm@cua.dk>
3697
3698 * process.c (process_send_signal): Fix last change--use
3699 _POSIX_VDISABLE instead of CVDISABLE when available.
3700
8afc13c6
RS
37012004-08-16 Richard M. Stallman <rms@gnu.org>
3702
3703 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
3704 Set VQUIT and VINTR chars to the standard ones if they are unset.
3705 [AIX]: Don't do that here. And don't force VINTR to standard
3706 when SIGNALS_VIA_CHARACTERS.
3707
c438dc33 3708 * process.c (process_send_signal)
8afc13c6
RS
3709 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
3710 Do nothing if the character is CVDISABLE.
3711
3712 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
3713
c438dc33 3714 * intervals.c (move_if_not_intangible):
8afc13c6
RS
3715 Force POSITION to be between BEGV and ZV.
3716
6dad1714
JPW
37172004-08-14 John Paul Wallington <jpw@gnu.org>
3718
3719 * buffer.c (Frestore_buffer_modified_p): Doc fix.
3720
3721 * fileio.c (Fread_file_name): Doc fix.
3722
3723 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
3724
2bd77330
LT
37252004-08-09 Luc Teirlinck <teirllm@auburn.edu>
3726
3727 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
3728
c90e7e43
LT
37292004-08-08 Luc Teirlinck <teirllm@auburn.edu>
3730
3731 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 3732 Qdisabled_command_hook.
c90e7e43 3733 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 3734 Qdisabled_command_hook.
c90e7e43
LT
3735 (syms_of_keyboard): Ditto.
3736
81909a1a
LT
37372004-08-07 Luc Teirlinck <teirllm@auburn.edu>
3738
3739 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
3740 (syms_of_keymap) <key-translation-map>: Doc fixes.
3741
0cedd530
SM
37422004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
3743
1725a7c9
SM
3744 * window.c (window_list_1): YAILOM.
3745
0cedd530
SM
3746 * fileio.c (make_temp_name): Handle multibyte prefixes.
3747
2515a131
LT
37482004-08-06 Luc Teirlinck <teirllm@auburn.edu>
3749
3750 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
3751 Doc fix.
3752
c8b20fb7
KH
37532004-08-03 Kenichi Handa <handa@m17n.org>
3754
3755 * coding.c (decode_coding_string): Adjust coding->consumed, and
3756 etc. with shrinked_bytes.
3757
fb8b092b
KS
37582004-08-03 Kim F. Storm <storm@cua.dk>
3759
3760 * indent.c (compute_motion): Fix check for full width window
3761 in non-window case. Do not count left truncation glyph on
3762 window systems.
3763
df133612
LT
37642004-08-02 Luc Teirlinck <teirllm@auburn.edu>
3765
3766 * data.c (Finteractive_form): Doc fix.
3767
0f7a93c1
KS
37682004-08-02 Kim F. Storm <storm@cua.dk>
3769
3770 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
3771 properly accounting for continuation glyph on non-window systems.
3772 (Fcompute_motion): Use actual window width if WIDTH is nil, and
3773 actual window width/height if TOPOS is nil, properly accounting for
3774 continuation glyphs on non-window systems, and optional header lines.
3775 (vmotion): Let compute_motion calculate actual window width.
3776
3777 * window.c (window_scroll_line_based): Let compute_motion
3778 calculate actual window width.
3779
f491e1ed
KS
37802004-08-02 Kim F. Storm <storm@cua.dk>
3781
3782 * process.c (read_process_output): Use whole read buffer.
3783 Don't trigger adaptive read buffering on errors.
3784
83f64226
LT
37852004-07-31 Luc Teirlinck <teirllm@auburn.edu>
3786
3787 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
3788
3789 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
3790
3791 * callint.c (Fcall_interactively): Doc fix.
3792
8afc13c6
RS
37932004-07-30 Richard M. Stallman <rms@gnu.org>
3794
3795 * abbrev.c (Fexpand_abbrev): Undo previous change.
3796
7c111482
KS
37972004-07-30 Kim F. Storm <storm@cua.dk>
3798
3799 * editfns.c (Fformat): Allocate extra (dummy) element in info.
3800
ee945d08
LT
38012004-07-28 Luc Teirlinck <teirllm@auburn.edu>
3802
3803 * eval.c (Fdefvar, Fdefconst): Doc fixes.
3804
3f911c94
KS
38052004-07-27 Kim F. Storm <storm@cua.dk>
3806
3807 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
3808 we have ensured that the glyph fits on the current line (or returned
3809 MOVE_LINE_CONTINUED otherwise).
3810
f29ff8c7
KS
38112004-07-26 Kim F. Storm <storm@cua.dk>
3812
3813 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
3814 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
3815 if target position is at end of display line but char is not a newline.
3816
81159bb9
RS
38172004-07-25 Richard M. Stallman <rms@gnu.org>
3818
ab431b61
RS
3819 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
3820 instead of ON_VERTICAL_BORDER, when on scroll bar.
3821 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
3822
3823 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
3824
f29ff8c7 3825 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
3826 Take account of FRAME_INTERNAL_BORDER_WIDTH.
3827
3828 * alloc.c (check_cons_list): New function (contents commented out).
3829
fc820cc5
LT
38302004-07-24 Luc Teirlinck <teirllm@auburn.edu>
3831
3832 * xfaces.c (Fcolor_supported_p): Doc fix.
3833
3834 * frame.c (Fselect_frame, Fset_frame_selected_window)
3835 (Fframe_visible_p, Fraise_frame): Doc fixes.
3836
289978b5
LT
38372004-07-24 Richard M. Stallman <rms@gnu.org>
3838
78819ebb 3839 * keyboard.h (not_single_kboard_state): Declare.
7630911d
RS
3840
3841 * fileio.c (Fwrite_region): Doc fix.
3842
3843 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
3844
3845 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
3846 only when a real abbrev is present.
3847
289978b5
LT
3848 * xfns.c (x_icon_verify): New function.
3849 (Fx_create_frame): Use it.
3850
63cc10ae
KS
38512004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
3852
3853 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
3854
36f826d4
KS
38552004-07-21 Kim F. Storm <storm@cua.dk>
3856
3857 * window.h (struct glyph_matrix): New members nrows_scale_factor
3858 and ncols_scale_factor.
3859
3860 * window.c (make_window): Initialize nrows_scale_factor and
3861 ncols_scale_factor members.
3862
3863 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
3864 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
3865 (required_matrix_height): Apply nrows_scale_factor.
3866 (required_matrix_width): Apply ncols_scale_factor.
3867
3868 * xdisp.c (display_line): Increment nrows_scale_factor and set
3869 fonts_changed_p if past last allocated row.
3870 (append_glyph, append_composite_glyph, produce_image_glyph)
3871 (append_stretch_glyph): Increment ncols_scale_factor and set
3872 fonts_changed_p if current area is full.
3873
5fc1c546
JD
38742004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3875
3876 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
3877
cb7516e5
LT
38782004-07-19 Luc Teirlinck <teirllm@auburn.edu>
3879
3880 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
3881 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
3882 (Fset_window_start, Fscroll_up, Fscroll_down)
3883 (Fother_window_for_scrolling, Fscroll_other_window)
3884 (Fsave_window_excursion, Fset_window_vscroll)
3885 (syms_of_window) <window-size-fixed>: Doc fixes.
3886
b6189c3b 38872004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
3888
3889 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
3890 ENCODE_SYSTEM for filenames.
3891
bfcf6608
ST
38922004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3893
3894 * mac.c (sys_select): Block input around call to
3895 ReceiveNextEvent to prevent breakage. Correctly handle
3896 blocking on event queue only by calling ReceiveNextEvent
3897 instead of select (since GUI events aren't on an fd).
3898 (sys_read): Remove function
3899 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
3900
e082ac9d
ST
39012004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3902
3903 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 3904 polling instead of 1 sec timeouts (like solaris).
e082ac9d 3905
cb7516e5 3906 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
3907 frame creation.
3908
3909 * keyboard.c: Undef SIGIO on Carbon
3910
3911 * atimer.c (alarm_signal_handler): Call alarm handlers after
3912 scheduling.
3913
3914 * eval.c (Feval): Remove quit_char test
3915
3916 * process.c (wait_reading_process_input): Remove clearing
3917 stdin for select call on process input.
3918
4b9da0fb
LT
39192004-07-18 Luc Teirlinck <teirllm@auburn.edu>
3920
1204e81c
LT
3921 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
3922 capitalization error in docstring.
4b9da0fb 3923
26503ad2
JB
39242004-07-17 Juanma Barranquero <lektu@terra.es>
3925
3926 * keyboard.c (not_single_kboard_state): Do nothing unless
3927 MULTI_KBOARD is defined.
3928
3751eb00
RS
39292004-07-17 Richard M. Stallman <rms@gnu.org>
3930
3931 * window.c (coordinates_in_window): Inside the window but outside
3932 its box to the L or R, return ON_VERTICAL_BORDER.
3933 (window_list_1): Rotate the list to start with WINDOW.
3934
3935 * print.c (print_preprocess): Test for print_depth at limit
3936 before entering in being_printed.
3937
3938 * keyboard.c (not_single_kboard_state): New function.
3939 (stuff_buffered_input): Now no-op only if no SIGTSTP.
3940
3941 * frame.c (Fdelete_frame): If we're in single_bboard_state on
3942 this kboard, and we delete its last frame, go to any_kboard_state.
3943
3944 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
3945
b6189c3b 39462004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
3947
3948 * w32fns.c (Fx_file_dialog): Encode strings in system coding
3949 system before passing them to OS functions for display.
3950
0f6af254
DK
39512004-07-15 David Kastrup <dak@gnu.org>
3952
f9253326
KS
3953 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
3954 Apparently fixes an abort condition.
0f6af254 3955
386c8f42
LT
39562004-07-14 Luc Teirlinck <teirllm@auburn.edu>
3957
3958 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
3959 instead of a cons.
3960
366511da
MB
39612004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
3962
3963 * keyboard.c (echo_dash): Do nothing if there already is a dash
3964 at the end of the echo string.
3965
f85409d3
KS
39662004-07-12 Kim F. Storm <storm@cua.dk>
3967
3968 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
3969 if GC_MARK_STACK.
3970
0ba2e87b
LT
39712004-07-10 Luc Teirlinck <teirllm@auburn.edu>
3972
da38045d
LT
3973 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
3974
0ba2e87b
LT
3975 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
3976 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
3977 (Freplace_buffer_in_windows, Fset_window_buffer)
3978 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
3979 (syms_of_window): Expand docstring of `display-buffer-function'.
3980
5668fbb8
LT
39812004-07-09 Luc Teirlinck <teirllm@auburn.edu>
3982
3983 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
3984 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
3985 that time values of the type (HIGH . LOW) are considered obsolete.
3986
a085bf9d
LT
39872004-07-06 Luc Teirlinck <teirllm@auburn.edu>
3988
669de2fb
LT
3989 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
3990 docstring.
3991
bac66325 3992 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 3993
8e975df9
JPW
39942004-07-06 John Paul Wallington <jpw@gnu.org>
3995
3996 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
3997
fa164e6a
JPW
3998 * fns.c (Fclear_string): Signal an error if STRING is not a string.
3999
2bac9bb1
JD
40002004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4001
4002 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
4003 instead of CGMainDisplayID (only in OSX 10.2 and later).
4004
316ef0dc
JPW
40052004-07-04 John Paul Wallington <jpw@gnu.org>
4006
4007 * fileio.c (read_file_name_completion_ignore_case): New variable.
4008 (syms_of_fileio): Declare and initialise it.
4009 (Fread_file_name): Bind `completion-ignore-case' to respect it.
4010
2a1a35c6
EZ
40112004-07-03 Eli Zaretskii <eliz@gnu.org>
4012
4013 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
4014 for event.x and event.y.
4015
33a72331
KH
40162004-07-01 Kenichi Handa <handa@m17n.org>
4017
4018 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
4019 after getting a new string by pre-write-conversion.
4020
9238467d 40212004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
4022
4023 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
4024 (x_calc_absolute_position): Remove unused var `child'.
4025
4026 * xfaces.c (x_supports_face_attributes_p)
4027 (Fdisplay_supports_face_attributes_p): YAILOM.
4028 (tty_supports_face_attributes_p): Remove unused var `i'.
4029
4030 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
4031 back_unibyte_ok.
4032
4033 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
4034
4035 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
4036
4037 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
4038
f96ec754
AS
40392004-06-30 Andreas Schwab <schwab@suse.de>
4040
4041 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
4042 (Finit_image_library): Pass LIBRARIES through to
4043 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
4044 (lookup_image_type): Pass Qnil as second argument to
4045 Finit_image_library.
4046
78819ebb 4047 * lisp.h (Finit_image_library): Declare.
f96ec754 4048
59feca74 40492004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 4050
31983645
AS
4051 * macterm.c (do_window_activate, do_window_deactivate): Remove.
4052 (XTread_socket): Send mouse button events to the toolbox
4053 dispatcher even when the mouse is grabbed. Don't process window
4054 activate events for non-Emacs windows. Replace function calls to
4055 do_window_activate and do_window_deactivate with their contents.
4056 Reset mouse grabbing status when a window is deactivated.
59feca74 4057
c61278bb
ST
40582004-06-29 Steven Tamm <steventamm@mac.com>
4059
4060 * macterm.c (mac_get_emulated_btn)
4061 (mac_event_to_emacs_modifiers): Fix emulated mouse button
4062 support to correctly mask out modifiers.
4063
c3762cbd
DK
40642004-06-29 David Kastrup <dak@gnu.org>
4065
4066 * search.c (Fset_match_data): Allow buffer before end of list
4067 which can happen if set-match-data is using a pre-consed list.
4068
c61278bb 40692004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
4070
4071 * macterm.c (XTread_socket): Correctly set the frame position
4072 after the window is moved.
4073
74cdfe05
JD
40742004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4075
4076 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
4077 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
4078 (xg_get_image_for_pixmap): Add workaround for monochrome displays
4079 so insensitive and activated icons look ok.
74cdfe05 4080
ef544dc8
JR
40812004-06-27 Jason Rumney <jasonr@gnu.org>
4082
4083 * w32fns.c (file_dialog_callback): Disable edit control if set
4084 to directories only on CDN_INITDONE message.
4085 (Fx_file_dialog): Default to directories only when prompt starts
4086 with "Dired".
4087
7b7990cc
KS
40882004-06-25 Kim F. Storm <storm@cua.dk>
4089
4090 * alloc.c (allocate_misc): Update total_free_markers.
4091 (free_misc): New function.
4092 (safe_alloca_unwind, free_marker): Use it.
4093
4094 * lisp.h (free_misc): Add prototype.
4095
4096 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
4097
d8c379f8
RS
40982004-06-24 Richard M. Stallman <rms@gnu.org>
4099
4100 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
4101 (syms_of_emacs): Lisp variables deleted.
4102
559cdd07
DK
41032004-06-23 David Kastrup <dak@gnu.org>
4104
94939b84
DK
4105 * search.c (Freplace_match): Adjust the match-data more thoroughly
4106 when replacing strings in the buffer.
4107 (Fmatch_data): When INTEGERS is non-nil and the last match was in
4108 a buffer, add the buffer as last element to the match data.
4109 (Fset_match_data): If an additional element of the match-data is a
4110 buffer, restore it to last_thing_searched.
c8d09ad8 4111 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
4112 (restore_match_data): Restore it again.
4113
dce417e7
LT
41142004-06-23 Luc Teirlinck <teirllm@auburn.edu>
4115
4116 * keymap.c (Ftext_char_description): Doc fix.
4117 * doc.c (Fsnarf_documentation): Doc fix.
4118
ef54b2d0
KS
41192004-06-22 Kim F. Storm <storm@cua.dk>
4120
b5bc4d05
KS
4121 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
4122
ef54b2d0
KS
4123 * lisp.h (struct Lisp_Save_Value): New member dogc.
4124 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
4125 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
4126 (SAFE_FREE_LISP): New macro.
4127
4128 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
4129 (make_save_value): Init new dogc member.
4130 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
4131
4132 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
4133 SAFE_FREE_LISP macros.
4134
3d33d993
KS
41352004-06-22 Kim F. Storm <storm@cua.dk>
4136
4137 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
4138 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
4139 in that memory area are unknown to GC. Add comments.
4140
4141 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
4142
5c917f98
KS
41432004-06-21 Kim F. Storm <storm@cua.dk>
4144
4145 * lisp.h (MAX_ALLOCA): Define here.
4146 (safe_alloca_unwind): Add prototype.
4147 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
4148
4149 * alloc.c (safe_alloca_unwind): New function.
4150
4151 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
4152
4153 * charset.c (Fstring): Use SAFE_ALLOCA.
4154
4155 * coding.c (MAX_ALLOCA): Remove define.
4156
4157 * data.c (MAX_ALLOCA): Remove define.
4158 (Faset): Use SAFE_ALLOCA.
4159
4160 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
4161
4162 * fns.c (string_make_multibyte, string_to_multibyte)
4163 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
4164 (MAX_ALLOCA): Remove define.
4165 (Fbase64_encode_region, Fbase64_encode_string)
4166 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
4167 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
4168 memory leak if encoding fails.
4169
4170 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
4171
9a09408e
EZ
41722004-06-21 Eli Zaretskii <eliz@gnu.org>
4173
4174 * print.c (Fwith_output_to_temp_buffer): Doc fix.
4175
376de739
RS
41762004-06-20 Richard M. Stallman <rms@gnu.org>
4177
4178 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
4179
4180 * search.c (match_limit): Cleaner err msg when no match data available.
4181
4182 * window.c (syms_of_window): Doc fix.
4183
4184 * keyboard.c (command_loop_1): Handle values `only' and `identity'
4185 for Vtransient_mark_mode.
4186
4187 * buffer.c (syms_of_buffer): Doc fix.
4188
acd81db9
DK
41892004-06-21 David Kastrup <dak@gnu.org>
4190
4191 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
4192 and unbinding of `case-fold-search' according to
4193 `completion-ignore-case' around calls of string-match and
4194 predicates, respectively. Should give satisfactory performance
4195 in all relevant cases.
4196
f303762d
JD
41972004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4198
95911c74
JD
4199 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
4200 clip_x/y_origin.
4201
a6cb6b78
JD
4202 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
4203
f303762d
JD
4204 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
4205
4206 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
4207 on Mac OSX.
4208
bbdb2684
LT
42092004-06-16 Luc Teirlinck <teirllm@auburn.edu>
4210
4211 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
4212
5ea48b1c
KS
42132004-06-16 Kim F. Storm <storm@cua.dk>
4214
4215 * dispextern.h (Vimage_types): Remove extern.
4216
803aac3e
MB
42172004-06-16 Miles Bader <miles@gnu.org>
4218
4219 * image.c (lookup_image_type): Initialize image type if necessary.
4220
cdc97764
KS
42212004-06-15 Kim F. Storm <storm@cua.dk>
4222
c4a5739c
KS
4223 * xdisp.c (try_cursor_movement): Exclude header line from scroll
4224 margin at top of window.
4225 (try_window_reusing_current_matrix): Calculate proper cursor position
4226 after scrolling up with non-zero scroll margin, as the old cursor
4227 position corresponds to value of PT before executing this command.
4228 (try_window_id): Consider scroll margin at bottom of window too;
4229 otherwise we fail to scroll when hl-line-mode is enabled.
4230
cdc97764
KS
4231 * syntax.c (skip_chars): Only recognize [:class:] when it has the
4232 proper format and class is a lower-case word.
4233
5b166323
JD
42342004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4235
4236 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 4237 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
4238 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
4239 xg_get_gdk_pixmap_and_mask.
cdc97764 4240
5b166323
JD
4241 * xterm.h (struct x_display_info): Typo in comment fixed.
4242
1ebd4f78
JB
42432004-06-14 Juanma Barranquero <lektu@terra.es>
4244
4245 * dispextern.h (Vimage_types): Make it conditional on
4246 HAVE_WINDOW_SYSTEM.
4247
4248 * image.c (Vimage_types): Move from xdisp.c.
4249 (Vimage_type_cache): New variable.
4250 (define_image_type): New argument indicating whether an image
4251 library was loaded; cache loaded status and return t on success,
4252 nil otherwise.
4253 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
4254 (w32_delayed_load): New function to load an image library from a
4255 list of possible filenames.
4256 (init_xpm_functions, init_png_functions, init_jpeg_functions)
4257 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 4258 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
4259 (Finit_image_library): New function, extracted from `init_image'.
4260 Try to initialize an image library on demand and cache whether we
4261 were successful or not.
4262 (syms_of_image): Initialize `Vimage_types' and
4263 `Vimage_type_cache'. Add recognized image types to Vimage_types.
4264 Export `init-image-library'.
4265 (init_image): Remove initialization of all image types, except xbm
4266 and pbm.
4267
4268 * xdisp.c (Vimage_types): Delete (moved to image.c).
4269
904ee128
AS
42702004-06-14 Andreas Schwab <schwab@suse.de>
4271
4272 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
4273 Avoid calling specbind when completion-regexp-list is empty.
4274
092de21d
RS
42752004-06-13 Richard M. Stallman <rms@gnu.org>
4276
4277 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
4278 (re_wctype, re_iswctype, re_wctype_to_bit):
4279 Non-function definitions moved here from regex.c.
1ebd4f78 4280
092de21d
RS
4281 * regex.c (re_wctype, re_iswctype): Function defs longer static.
4282 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
4283 (re_wctype, re_iswctype, re_wctype_to_bit):
4284 Non-function definitions moved to regex.h.
4285
4286 * window.c (Fselect_window): Doc fix.
4287
4288 * syntax.c: Include regex.h.
4289 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
4290 If requested, make a list of classes, then check the scanned
4291 chars for membership in them.
4292 (in_classes): New function.
4293 Doc fix.
4294
4295 * keyboard.c (cmd_error): Don't call any_kboard_state
4296 if inside a recursive edit level.
4297
9ba27690 42982004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
092de21d
RS
4299
4300 * keyboard.c (command_loop): Call any_kboard_state before
4301 command_loop_2 when at top level.
4302
3ebc0939
AS
43032004-06-13 Andreas Schwab <schwab@suse.de>
4304
cea5d0d4
AS
4305 * print.c (print_object): Always use %ld for printing EMACS_INT.
4306
4307 * keyboard.c (cancel_hourglass_unwind): Return a value.
4308 (modify_event_symbol): Always use %ld for printing EMACS_INT.
4309 (Fexecute_extended_command): Likewise.
4310
4311 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
4312 avoid clashes.
4313 (SYNTAX): Likewise.
4314 (SYNTAX_WITH_FLAGS): Likewise.
4315 (SYNTAX_MATCH): Likewise.
4316
4317 * syntax.c (char_quoted): Avoid warning about undefined operation.
4318 (find_defun_start): Likewise.
4319 (scan_lists): Likewise.
4320 (INC_FROM): Likewise.
4321 (scan_sexps_forward): Likewise.
4322
be8c4ce4
AS
4323 * image.c: Include <ctype.h>.
4324
3ebc0939
AS
4325 * xfaces.c (face_attr_equal_p): Declare parameters.
4326
6fb41b5b
KH
43272004-06-13 Kenichi Handa <handa@m17n.org>
4328
4329 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
4330
fc3095ce
EZ
43312004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
4332
4333 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
4334
66189a40
KH
43352004-06-12 Kenichi Handa <handa@m17n.org>
4336
4337 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
4338 ccl_prog_stack_struct and update it.
4339 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
4340 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
4341 ccl->eof_ic on EOF.
4342 (ccl_debug_hook): New function.
4343 (struct ccl_prog_stack): New member eof_ic.
4344 (ccl_driver): Handle EOF in subrountine call correctly.
4345
43462004-06-11 Kenichi Handa <handa@m17n.org>
4347
4348 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
4349
1da71023
KS
43502004-06-11 Kim F. Storm <storm@cua.dk>
4351
4352 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
4353
e9efcef4
JB
43542004-06-11 Juanma Barranquero <lektu@terra.es>
4355
4356 * keyboard.c (Fposn_at_point): Doc fix.
4357
9b9ceb61
DK
43582004-06-11 David Kastrup <dak@gnu.org>
4359
4360 * search.c (match_limit): Don't flag an error if match-data
4361 exceeding the allocated search_regs.num_regs gets requested, just
4362 return Qnil.
4363
6e87ac8f
MB
43642004-06-08 Miles Bader <miles@gnu.org>
4365
4366 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
4367
0b0dea7b
JB
43682004-06-07 Juanma Barranquero <lektu@terra.es>
4369
4370 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
4371 (Fcurrent_time_string, Fcurrent_time_zone)
4372 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
4373
a0a23346
MB
43742004-06-07 Miles Bader <miles@gnu.org>
4375
08384afd 4376 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
4377 (push_named_merge_point): New function.
4378 (merge_named_face): New function.
4379 (merge_face_ref, face_at_buffer_position, face_at_string_position):
4380 Use `merge_named_face'.
4381 (merge_face_inheritance): Function removed.
c8d09ad8 4382 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
4383 Add new `err_msgs' and `named_merge_points' args. Return error
4384 status. Only print error messages if ERR_MSGS is true. Don't try to
4385 do :inherit attribute validation.
4386 (merge_face_heights): Handle `unspecified' in both directions.
4387 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
4388 Call `merge_face_ref' instead of `merge_face_inheritance'.
4389 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
4390 (compute_char_face, face_at_buffer_position)
4391 (face_at_string_position): Call `merge_face_ref' instead of
4392 `merge_face_vector_with_property'.
4393
12d5b185
KH
43942004-06-07 Kenichi Handa <handa@m17n.org>
4395
4396 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
4397 the necessary places.
4398
2e2d7ee6
KS
43992004-06-07 Kim F. Storm <storm@cua.dk>
4400
4401 * process.c (Fdelete_process): Undo 2004-05-28 change.
4402 Instead, call status_notify also for network process.
4403 (status_message): Use process instead of status as arg.
4404 Give messages "deleted" or "connection broken by remote peer" for
4405 an exited network process.
4406 (status_notify): Change call to status_message.
4407 (read_process_output): Increase readmax to 4096. Do not increase
4408 buffer size for datagram channels (default is now large enough).
4409
fcf0d299
ST
44102004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
4411
4412 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
4413 problem due to newly defined variable.
4414
0722292b
MB
44152004-06-06 Miles Bader <miles@gnu.org>
4416
4417 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
4418 immediately if non-interactive or not initialized.
4419
ddfb8369
RS
44202004-06-05 Richard M. Stallman <rms@gnu.org>
4421
4422 * minibuf.c (Fcompleting_read): Doc fix.
4423
57015754
AS
44242004-06-05 Andreas Schwab <schwab@suse.de>
4425
4426 * macfns.c (x_create_tip_frame): Fix declaration after statement.
4427
23715ea6
JB
44282004-06-05 Juanma Barranquero <lektu@terra.es>
4429
4430 * keymap.c (Fdescribe_vector): Fix docstring.
4431 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
4432
8e330b22
MB
44332004-06-05 Miles Bader <miles@gnu.org>
4434
4435 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
4436 attributes have different values than the default face.
4437
9742a3a6
EZ
44382004-06-04 Eli Zaretskii <eliz@gnu.org>
4439
4440 * xfaces.c (x_supports_face_attributes_p): Make this function
4441 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
4442 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
4443 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 4444
9717e36c
MB
44452004-06-04 Miles Bader <miles@gnu.org>
4446
4447 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
4448 from Ftty_supports_face_attributes_p.
4449 (x_supports_face_attributes_p): New function.
4450 (Ftty_supports_face_attributes_p): Function deleted.
4451 (Fdisplay_supports_face_attributes_p): New function.
4452 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 4453 (face_attr_equal_p): New function.
9717e36c
MB
4454 (lface_equal_p): Use it.
4455
52deb19f
JB
44562004-06-03 Juanma Barranquero <lektu@terra.es>
4457
4458 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
4459 (Vw32_color_map): Fix typo in docstring.
4460 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
4461 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
4462 Make argument names match their use in docstring.
4463
86d373e6
JB
44642004-06-02 Juanma Barranquero <lektu@terra.es>
4465
4466 Work around bugs/problems with MinGW builds of graphics libraries
4467 called from MSVC builds of Emacs.
4468
4469 * image.c (lookup_image): Make pointer to img static.
4470 (png_read_from_memory): Disable "global" optimization.
4471
2fb0ce67
SM
44722004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
4473
c8d09ad8
SM
4474 * eval.c (Fcondition_case): Fix usage. Simplify.
4475
2fb0ce67
SM
4476 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
4477
50bf7673
ST
44782004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4479
4480 * macfns.c: Don't include ccl.h.
4481 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
4482 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
4483 TextUtils.h.
c8d09ad8 4484 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
4485 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
4486 display height/width.
4487 (compute_tip_xy, Vx_max_tooltip_size): Declare.
4488 (unwind_create_tip_frame, compute_tip_xy): New functions.
4489 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
4490 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
4491 and last_show_tip_args.
2fb0ce67 4492
50bf7673
ST
4493 * macgui.h [!MAC_OSX]: Include Gestalt.h.
4494 (Cursor, No_Cursor): New defines.
c8d09ad8 4495 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
4496 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
4497
4498 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
4499
4500 * macterm.c: Don't include Gestalt.h.
4501 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
4502 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
4503 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
4504 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
4505 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
4506 (construct_mouse_click, XTmouse_position)
4507 (x_scroll_bar_report_motion, x_calc_absolute_position)
4508 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
4509 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
4510 (note_mouse_movement): Clear the mouse face and reset the pointer
4511 shape when the pointer goes outside the frame without grabbing.
4512 (mac_front_window): New function.
4513 (mac_window_to_frame): New macro.
4514 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
4515 (do_window_activate, do_window_deactivate, do_app_resume)
4516 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
4517 (do_zoom_window, mac_do_receive_drag, XTread_socket)
4518 (mac_check_for_quit_char): Use mac_front_window and/or
4519 mac_window_to_frame.
4520 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
4521 scroll-bar click event.
4522 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 4523 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 4524 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 4525 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
4526 (do_window_update): Don't do anything if the updated window is the
4527 tooltip window.
4528 (do_mouse_moved): Handle mouse movement events here (previously in
4529 XTread_socket). Clear the mouse face if
4530 dpyinfo->mouse_face_hidden is set.
4531 (do_os_event, do_events): Remove (now in XTread_socket).
4532 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
4533 Loop until all the events in the queue are processed.
4534 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
4535 contents of do_os_event and do_events. Remove mouse movement
4536 handling (now in do_mouse_moved). Add the case where
4537 Vmouse_highlight has an integer value.
4538 (NewMacWindow): Remove.
4539 (make_mac_frame): Do what NewMacWindow previously did. Don't do
4540 excess initializations.
4541 (make_mac_terminal_frame): Previous initializations in
4542 make_mac_frame are moved here.
c8d09ad8
SM
4543 (mac_initialize_display_info):
4544 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
4545
4546 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
4547 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
4548
08fd1251
RS
45492004-05-29 Richard M. Stallman <rms@gnu.org>
4550
4551 * lisp.h (truncate_undo_list): Update decl.
4552
4553 * alloc.c (undo_outer_limit): New variable.
4554 (syms_of_alloc): Defvar it.
4555 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
4556
4557 * undo.c (truncate_undo_list): New arg LIMITSIZE.
4558
4559 * alloc.c (lisp_align_malloc): Check for base == 0
4560 regardless of HAVE_POSIX_MEMALIGN.
4561 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
4562
227ef0ff
SM
45632004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
4564
4565 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
4566 (marker_blocks_pending_free): Remove.
4567 (Fgarbage_collect): Sweep after cleaning up undo-lists.
4568 Mark the undo lists after claning them up.
4569 Don't free block in marker_blocks_pending_free.
4570 (mark_buffer): Don't mark undo_list.
4571 (gc_sweep): Sweep hash-tables and strings first.
4572 Do free marker blocks that are empty.
4573
034a6113
SM
45742004-05-28 Jim Blandy <jimb@redhat.com>
4575
4576 * regex.c (print_partial_compiled_pattern): Add missing 'break'
4577 after 'case wordend'. For symbeg and symend, print to stderr,
4578 like the other cases.
4579
33594a8d
NF
45802004-05-28 Noah Friedman <friedman@splode.com>
4581
4582 * process.c (Fdelete_process): Do not call remove_process.
4583
ce50a847
SM
45842004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
4585
4586 * alloc.c (struct backtrace): Remove.
4587 (Fgarbage_collect): Use the new mark_backtrace.
4588
4589 * eval.c (mark_backtrace): New function.
4590
4591 * minibuf.c (run_exit_minibuf_hook): New function.
4592 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
4593 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
4594
1e8dae36
KS
45952004-05-27 Kim F. Storm <storm@cua.dk>
4596
4597 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
4598 over display properties, e.g. images, that replace buffer text.
4599
846faa3b
KS
46002004-05-25 Kim F. Storm <storm@cua.dk>
4601
4602 * alloc.c (marker_blocks_pending_free): New var.
4603 (gc_sweep): Store free marker blocks on that list.
4604 (Fgarbage_collect): Free them after undo-list cleanup.
4605
4606 * process.c (wait_reading_process_input): Check connect_wait_mask
4607 before actually accepting connection in case it has already been
4608 accepted due to recursion.
4609
b6189c3b 46102004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 4611
ce50a847
SM
4612 * coding.c (Fset_safe_terminal_coding_system_internal):
4613 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 4614
71d5a208
RS
46152004-05-22 Richard M. Stallman <rms@gnu.org>
4616
4617 * alloc.c (Fmake_string): Doc fix.
4618
4619 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
4620 and the alist pairs too.
4621
4622 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
4623
4624 * emacs.c (main): Update copyright year.
4625
4626 * fileio.c (Fread_file_name): Expand DIR if not absolute.
4627
4628 * insdel.c (del_range_2, replace_range): Don't write an anchor
4629 if the gap is empty.
4630
4631 * xdisp.c (try_scrolling): If scroll-up-aggressively or
4632 scroll-down-aggressively is small but positive, put point
4633 near the screen edge.
4634
f63fd14e
JB
46352004-05-22 Juanma Barranquero <lektu@terra.es>
4636
4637 * keymap.c (Fdefine_key): Doc fix.
4638
4d12067c
KS
46392004-05-22 Kim F. Storm <storm@cua.dk>
4640
4641 * alloc.c (struct backtrace): Add debug_on_exit member.
4642 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
4643 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
4644 the removed cons cells.
4645 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
4646 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
4647 any cons cells pointing to unallocated stings.
4648 Do not lisp_free any marker blocks, as there may still be pointers
4649 to them from buffer undo lists at this stage of GC.
4650
4651 * keyboard.c (struct backtrace): Add debug_on_exit member.
4652 (Fcommand_execute): Clear it.
4653
931285e2
LT
46542004-05-20 Luc Teirlinck <teirllm@auburn.edu>
4655
4656 * intervals.c (lookup_char_property): Do not prematurely return nil.
4657
669fa600
SM
46582004-05-19 Jim Blandy <jimb@redhat.com>
4659
4660 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 4661 beginning and end of symbols.
4d12067c 4662
669fa600
SM
4663 * regex.c (enum syntaxcode): Add Ssymbol.
4664 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
4665 (re_opcode_t): New opcodes `symbeg' and `symend'.
4666 (print_partial_compiled_pattern): Print the new opcodes properly.
4667 (regex_compile): Parse the new operators.
ce50a847 4668 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
4669 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
4670 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
4671 (re_match_2_internal): Match symbeg and symend.
4672
4673 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
4674
0d8c2e5c
KS
46752004-05-19 Kim F. Storm <storm@cua.dk>
4676
4677 * .gdbinit (xsymbol): Fix last change.
4678
669fa600
SM
46792004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
4680
4681 * .gdbinit (xprintstr): New fun.
4682 (xstring, xprintsym): Use it.
4683
4684 * w32proc.c (create_child): Use INTMASK.
4685
4686 * alloc.c (Fgarbage_collect): Do all the marking before flushing
4687 unmarked elements of the undo list.
4688
9a6a4c40
DP
46892004-05-18 David Ponce <david@dponce.com>
4690
4691 * print.c (print): Reset print_depth before to call print_object.
4692
f3c4ec74
JR
46932004-05-18 Jason Rumney <jasonr@gnu.org>
4694
4695 * w32console.c: Prefix RIF functions with w32con_ to avoid
4696 namespace clash with functions in term.c and w32term.c.
4697
4698 * w32menu.c (add_menu_item, w32_menu_display_help)
4699 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
4700
0d8c2e5c 4701 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 4702
6be49c3a
EZ
47032004-05-18 Eli Zaretskii <eliz@gnu.org>
4704
4d0b9a0a
EZ
4705 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
4706
6be49c3a
EZ
4707 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
4708 with make_number.
4709 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
4710 with XINT.
4711
0bc90bba
KS
47122004-05-18 Kim F. Storm <storm@cua.dk>
4713
89d19988
KS
4714 * blockinput.h (INPUT_BLOCKED_P): New macros.
4715
4716 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
4717 (Ftop_level): Unblock input if blocked.
4718
0bc90bba
KS
4719 * buffer.h (GET_OVERLAYS_AT): New macro.
4720 * msdos.c (IT_note_mouse_highlight): Use it.
4721 * textprop.c (get_char_property_and_overlay): Use it.
4722 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
4723 * xfaces.c (face_at_buffer_position): Use it.
4724
4725 * print.c (print_object): Increase buf size.
4726
653bd0f6
JR
47272004-05-17 Jason Rumney <jasonr@gnu.org>
4728
4729 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
4730 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
4731 Lisp_Object using i member.
4732 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
4733 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
4734 consistently.
4735
4736 * w32proc.c (create_child): Use make_number instead of masking pid.
4737
4738 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
4739 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
4740 Use EQ to compare Lisp_Objects.
4741 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
4742
4743 * w32term.c (w32_num_mouse_buttons): Rename from
4744 Vw32_num_mouse_buttons and make it an int.
4745
4746 * w32.c (init_environment): Use it.
4747
4748 * w32fns.c (w32_wnd_proc): Likewise.
4749
4750 * w32proc.c (w32_pipe_read_delay): Rename from
4751 Vw32_pipe_read_delay and make it an int.
4752
4753 * w32.c (_sys_read_ahead): Use it.
4754
4755 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
4756
4757 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
4758
4759 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
4760 (key_event): Don't mix Lisp_Object and int.
4761
4762 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
4763
4764 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
4765 modifiers in language change event.
4766
54b53ba7
KS
47672004-05-17 Kim F. Storm <storm@cua.dk>
4768
4769 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
4770 Such objects may be freed markers which still exist on an undo list.
4771
6e86a75d
JB
47722004-05-16 Juanma Barranquero <lektu@terra.es>
4773
4774 * data.c (Fset_default): Make argument names match their use in
4775 docstring.
4776
fc80da24
AS
47772004-05-15 Andreas Schwab <schwab@suse.de>
4778
4779 * emacs.c (gdb_array_mark_flag): Define.
4780 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
4781
c1380aa6
EZ
47822004-05-15 Eli Zaretskii <eliz@gnu.org>
4783
4784 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
4785 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
4786 defined for the MS-DOS build.
4787
89458937
SM
47882004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
4789
4790 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
4791
08020f9a
KH
47922004-05-14 Kenichi Handa <handa@m17n.org>
4793
4794 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
4795
a433994a
ST
47962004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4797
4798 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
4799 section to frame.c section.
4800 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 4801 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 4802
a433994a 4803 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 4804
a433994a 4805 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 4806
a433994a
ST
4807 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
4808 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
4809 (XTread_socket): Fix int/Lisp_Object mixup.
4810 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 4811
a433994a
ST
4812 * macterm.h (struct frame, struct face, struct image)
4813 (display_x_get_resource, Fx_display_color_p)
89458937
SM
4814 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
4815 Add prototypes.
a433994a 4816
b51a51b9
KS
48172004-05-14 Kim F. Storm <storm@cua.dk>
4818
4819 * process.c (wait_reading_process_input): Make reentrant.
4820 Make Available and Connecting non-static. Save and restore value
4821 of waiting_for_user_input_p.
4822
2bde1dd8
KS
48232004-05-13 Kim F. Storm <storm@cua.dk>
4824
4825 * keyboard.c (mark_kboards): Don't mark x and y members
4826 that are overloaded in selection request events.
4827
a267ab4d
SM
48282004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
4829
4830 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
4831
eb15ce9e
GM
48322004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
4833
4834 * window.c (Fdisplay_buffer, Fsplit_window)
4835 (split-height-threshold): Doc fix.
4836
7fc92635
JB
48372004-05-13 Juanma Barranquero <lektu@terra.es>
4838
4839 * xfaces.c (Ftty_supports_face_attributes_p)
4840 (Finternal_copy_lisp_face): Fix typo in docstring.
4841 (Finternal_get_lisp_face_attribute): Fix docstring.
4842
1ec2a572
JD
48432004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4844
4845 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
4846
ae9292e0
ST
48472004-05-11 Steven Tamm <steventamm@mac.com>
4848
4849 * macfns.c (Fx_create_frame): Default to using tool-bar by
4850 setting tool-bar-lines to 1 in default-frame-alist.
4851
48522004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
4853
4854 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
4855 (xpm_get_color_table_v, xpm_make_color_table_h)
4856 (xpm_put_color_table_h, xpm_get_color_table_h)
4857 (xpm_str_to_color_key, xpm_load_image, xpm_load)
4858 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 4859 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 4860
fe97e8df
ST
48612004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4862
a267ab4d 4863 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
4864 instead of FRAME_X_P
4865
b47e779e
KS
48662004-05-11 Kim F. Storm <storm@cua.dk>
4867
4868 * process.c (read_process_output): Grow decoding_buf when needed;
4869 this could cause a crash in allocate_string and compact_small_strings.
4870
cdc9b845
EZ
48712004-04-29 Jim Blandy <jimb@redhat.com>
4872
4873 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
4874 against proper opcode.
4875
aa7094ba
JB
48762004-05-10 Juanma Barranquero <lektu@terra.es>
4877
4878 * process.c (Fstart_process): Fix docstring.
4879
4880 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
4881 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
4882 (Fsplit_char, Fchar_charset): Make argument names match their use
4883 in docstring.
4884
e109331a
RS
48852004-05-10 Richard M. Stallman <rms@gnu.org>
4886
4887 * print.c (print_preprocess): Use being_printed, loop_count and
4888 halftail to detect overdeep nesting and cyclic cdr chains.
4889
9a28b921
AS
48902004-05-10 Andreas Schwab <schwab@suse.de>
4891
78819ebb 4892 * lisp.h (Fmake_symbolic_link): Declare.
9a28b921
AS
4893
4894 * fileio.c (Frename_file): Remove extra argument in call to
4895 Fmake_symbolic_link.
4896
e2c02c1a
KS
48972004-05-10 Kim F. Storm <storm@cua.dk>
4898
4899 * xdisp.c (calc_line_height_property): Use string position when
4900 object is a string.
4901
cfe9d13e
KH
49022004-05-10 Kenichi Handa <handa@m17n.org>
4903
a57e8159
KH
4904 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
4905 inhibit-modification-hooks to t temporarily before calling
4906 Ferase_buffer.
4907
4908 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
4909 inhibit-modification-hooks to t temporarily before calling
4910 Ferase_buffer.
4911
4912 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
4913 inhibit-modification-hooks to t temporarily before calling
4914 Ferase_buffer.
4915
cfe9d13e
KH
4916 * fns.c (count_combining): Delete it.
4917 (concat): Don't check combining bytes.
4918
ceb96489
JR
49192004-05-09 Jason Rumney <jasonr@gnu.org>
4920
4921 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
4922 (globals_of_w32fns): Set it.
4923
b6189c3b 49242004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
4925
4926 * data.c (Fquo): Simplify.
4927
28712a21
JB
49282004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
4929
4930 * data.c (Fquo): If any argument is float, do the computation in
4931 floating point.
4932
0f0af7a8
JB
49332004-05-08 Juanma Barranquero <lektu@terra.es>
4934
88214ef6
JB
4935 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
4936 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
4937 Fix spelling of Emacs on docstring.
4938 (Fset_process_coding_system, Fprocess_coding_system)
4939 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
4940 Make argument names match their use in docstring.
4941 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
4942 Fix docstring.
4943
0f0af7a8
JB
4944 * editfns.c (Finsert_buffer_substring): Make argument names match their
4945 use in docstring.
4946
4947 * syntax.c (Fmodify_syntax_entry): Fix docstring.
4948
2a316a84
ST
49492004-05-07 Steven Tamm <steventamm@mac.com>
4950
4951 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
4952 around call to ReceiveEvent to avoid certain crashes.
4953
49542004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 4955
2a316a84
ST
4956 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
4957 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
4958 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
4959 Save/restore the current graphics port and device handle when
4960 drawing into an offscreen graphics world.
4961
4962 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
4963 (gif_load): Likewise.
4964
ab80314b
JB
49652004-05-07 Juanma Barranquero <lektu@terra.es>
4966
4967 * window.c (Fset_window_buffer): Fix docstring.
4968
70646bb5
TTN
49692004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
4970
4971 * emacs.c (main) [VMS]: Fix var ref.
4972
b6189c3b 49732004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
4974
4975 * data.c (Fsetq_default): Fix docstring.
4976
279d3293
JR
49772004-05-06 Jason Rumney <jasonr@gnu.org>
4978
4979 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
4980 to avoid name clash.
4981
f72b5416
JD
49822004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4983
4984 * fileio.c (barf_or_query_if_file_exists): Use lstat.
4985 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 4986 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 4987
6ab66799
KS
49882004-05-04 Kim F. Storm <storm@cua.dk>
4989
4990 * xdisp.c (Qtotal): New var.
4991 (syms_of_xdisp): Intern and staticpro it.
4992 (calc_line_height_property): New arg total. Set it if
4993 line-spacing property has format (total . VALUE).
4994 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
4995 Handle total line-spacing property.
4996
ab2d724b
JD
49972004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4998
4999 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
5000 "under" scroll bar when size/position changes.
5001
238add5e
JR
50022004-05-03 Jason Rumney <jasonr@gnu.org>
5003
5004 * makefile.nt: Remove.
5005
1644f4e4
EZ
50062004-05-02 Eli Zaretskii <eliz@gnu.org>
5007
a267ab4d
SM
5008 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
5009 Avoid compiler warnings.
05fdbeb8 5010
1644f4e4
EZ
5011 * Makefile.in (region-cache.o): Depend on config.h.
5012
b6189c3b 50132004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
5014
5015 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
5016 with continuation lines, too.
5017
2b98b088
TTN
50182004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
5019
5020 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
5021
d9bf7950
SM
50222004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
5023
5024 * xdisp.c (calc_line_height_property): YAILOM (yet another
5025 int/Lisp_Object mixup).
5026
affa509c
EZ
50272004-05-01 Eli Zaretskii <eliz@gnu.org>
5028
5029 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
5030 undo bad effect of pack(4) in some versions of system headers.
5031
07c07cfe
JR
50322004-05-01 Jason Rumney <jasonr@gnu.org>
5033
5034 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
5035
e71caa4e
KS
50362004-04-30 Kim F. Storm <storm@cua.dk>
5037
5038 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 5039 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
5040
5041 * dispextern.h (struct it): Remove member use_default_face.
5042 Add members override_ascent, override_descent, override_boff.
5043
5044 * xdisp.c (init_iterator): Handle line-spacing float value.
5045 Initialize override_ascent member.
5046 (append_space_for_newline): Reset override_ascent.
5047 Remove use_default_face.
5048 (calc_line_height_property): New function to calculate value of
5049 line-height and line-spacing properties. Look at overlays, too.
5050 Set override_ascent, override_descent, override_boff members when
5051 using another face than the current face. Float values are now
5052 relative to the frame default font, by default; accept a cons
5053 of ratio and face name to specify value relative to a specific face.
5054 (x_produce_glyphs): Use calc_line_height_property.
5055 Use override_ascent etc. when set to handle different face heights.
5056 A negative line-spacing property value is interpreted as a total
5057 line height, rather than inter-line spacing.
5058 (note_mouse_highlight): Allocate room for 40 overlays initially.
5059
0fddae66
SM
50602004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
5061
5062 * data.c (Fsubr_name): New fun.
5063 (syms_of_data): Defsubr it.
5064
712d23dc
KS
50652004-04-29 Kim F. Storm <storm@cua.dk>
5066
5067 * xdisp.c (null_glyph_slice): New var.
5068 (append_glyph, append_composite_glyph, append_stretch_glyph):
5069 Use it to initialize glyph slice.
5070
033ad8c6
SM
50712004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
5072
5073 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
5074 (on_hot_spot_p): Make sure we always return a value.
5075 (Flookup_image_map): Remove unused var ix and iy.
5076 (note_mode_line_or_margin_highlight): Remove unused var `image'.
5077
93397360
EZ
50782004-04-27 Eli Zaretskii <eliz@gnu.org>
5079
5080 * msdos.c (init_environment): If one of the TMP... environment
5081 variables is set to a drive letter without a trailing slash,
5082 append a slash.
5083
0c54865e
EZ
50842004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
5085
5086 * editfns.c (lisp_time_argument): Provide externally.
5087
5088 * fileio.c (Fset_file_times): New function.
5089 (syms_of_fileio): Intern and staticpro it.
5090
d3b111bd
KS
50912004-04-27 Kim F. Storm <storm@cua.dk>
5092
07dc1231
KS
5093 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
5094 header line strings.
5095
360fe9d2
KS
5096 * dispextern.h (struct it): New member use_default_face.
5097
d3b111bd
KS
5098 * xdisp.c (Qline_height): New variable.
5099 (syms_of_xdisp): Intern and staticpro it.
5100 (append_space_for_newline): Partially undo 2004-04-25 change;
5101 add default_face_p arg, and restore callers.
5102 Clear it->use_default_face after use.
5103 (x_produce_glyphs): Set default font for ascii char if
5104 it->use_default_font is set. Change line-spacing property to set
5105 just extra line spacing. Handle new line-height property.
5106
0448588b
AS
51072004-04-26 Andreas Schwab <schwab@suse.de>
5108
5109 * print.c (print_object): Print non-ascii characters in bool
5110 vector representation as octal escapes.
5111
5112 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
5113 * print.c (print_object): Use it instead of BITS_PER_CHAR for
5114 bool vectors.
5115 * lread.c (read1): Likewise.
5116 * alloc.c (Fmake_bool_vector): Likewise.
5117 * data.c (Faref, Faset): Likewise.
5118 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
5119 (mapcar1): Likewise.
d3b111bd 5120
536d6baa
ST
51212004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
5122
7e26f91b 5123 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
536d6baa 5124
ae11577a
MB
51252004-04-26 Miles Bader <miles@gnu.org>
5126
5127 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
5128
e198ba87
JB
51292004-04-26 Juanma Barranquero <lektu@terra.es>
5130
5131 * buffer.c (Fpop_to_buffer): Fix docstring.
5132
f3d5f92d 51332004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 5134
f3d5f92d
ST
5135 * lread.c (init_lread): Don't display missing lisp directory
5136 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 5137 may be built without correct installation path.
f3d5f92d 5138
03e35edc
KS
51392004-04-25 Kim F. Storm <storm@cua.dk>
5140
9ff3aa31
KS
5141 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
5142
5143 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
5144
03e35edc
KS
5145 * xdisp.c (append_space_for_newline): Rename from append_space.
5146 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
5147 (x_produce_glyphs): Handle line-spacing property on newline char.
5148 If value is t, adjust ascent and descent to fit current row height.
5149 If value is an integer or float, set extra_line_spacing to integer
5150 value, or to float value x current line height.
5151
f24814e0
KH
51522004-04-23 Kenichi Handa <handa@m17n.org>
5153
5154 * fontset.c (Finternal_char_font): If POSITION is nil, return
5155 font for displaying CH with the default face.
5156
d814862a
JB
51572004-04-23 Juanma Barranquero <lektu@terra.es>
5158
5159 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
5160
063a45c5
SM
51612004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
5162
5163 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
5164 Don't make assumptions about the relative place of i and val.
5165 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
5166
ae7ab2d3
KS
51672004-04-21 Kim F. Storm <storm@cua.dk>
5168
5169 * dispextern.h (struct glyph_slice): New struct.
5170 (struct glyph): New member slice.
5171 (GLYPH_SLICE_EQUAL_P): New macro.
5172 (GLYPH_EQUAL_P): Use it.
5173 (struct glyph_string): New member slice.
5174 (struct it_slice): New struct.
5175 (struct it): New member slice, add member to stack too.
5176 New member constrain_row_ascent_descent_p.
5177 (image_ascent): Add prototype.
5178
5179 * dispnew.c (buffer_posn_from_coords): Return full image width
5180 and height even for image slices (posn is relative to full image).
5181 (marginal_area_string): Adjust x0,y0 for image slice.
5182
5183 * image.c (image_ascent): Add slice arg; calculate ascent for
5184 image slice (or full image).
5185
5186 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
5187 (syms_of_keyboard): Defsubr them.
5188
5189 * lisp.h (pos_visible_p): Fix prototype.
5190
c62aec78 5191 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
5192 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5193 (x_draw_image_foreground, x_draw_image_relief)
5194 (x_draw_image_foreground_1, x_draw_image_glyph_string):
5195 Draw sliced images.
5196
5197 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
5198 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5199 (x_draw_image_foreground, x_draw_image_relief)
5200 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
5201 Draw sliced images.
5202
5203 * w32term.h (image_ascent): Remove prototype.
5204
5205 * window.c (Fpos_visible_in_window_p): Return pixel position if
5206 PARTIALLY arg is non-nil. Simplify. Doc fix.
5207 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
5208 to return/set vscroll in pixels.
5209
5210 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
5211
5212 * xdisp.c (Qslice): New variable.
5213 (syms_of_xdisp): Intern and staticpro it.
5214 (pos_visible_p): Return pixel position in new x and y args.
5215 (init_iterator): Reset it->slice info.
5216 (handle_display_prop): Parse (slice ...) property.
5217 (push_it, pop_it): Save/restore slice info.
5218 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
5219 force repositioning of tall row if window is vscrolled, as that
5220 would reset vscroll.
5221 (append_space): Set it->constrain_row_ascent_descent_p to avoid
5222 increasing row height if row is non-empty.
5223 (fill_image_glyph_string): Copy slice info.
5224 (take_vertical_position_into_account): Simplify.
5225 (produce_image_glyph): Handle iterator slice info, setup glyph
5226 slice info. Do not force minimum line height.
5227 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
5228 do not increase height (ascent/descent) of non-empty row when
5229 adding normal character glyph; instead reduce glyph ascent/descent
5230 appropriately; if row is higher than current glyph, adjust glyph
5231 descent/ascent to reposition glyph within the existing row.
5232 Likewise, when char is newline, only set ascent/descent if row is
5233 currently empty.
5234 (note_mouse_highlight): Handle hotspots with sliced image.
5235
5236 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
5237 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5238 (x_draw_image_foreground, x_draw_image_relief)
5239 (x_draw_image_foreground_1, x_draw_image_glyph_string):
5240 Draw sliced images.
5241
5242 * xterm.h (image_ascent): Remove prototype.
5243
d58f8753
SM
52442004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
5245
5246 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
5247
4ce2719d
JPW
52482004-04-20 John Paul Wallington <jpw@gnu.org>
5249
5250 * fns.c (Fassoc, Feql): Fix indentation.
5251
d58f8753 5252 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 5253
95f8c3b9
JPW
52542004-04-19 John Paul Wallington <jpw@gnu.org>
5255
5256 * fns.c (Feql): New function.
d58f8753 5257 (syms_of_fns): Defsubr it.
95f8c3b9 5258
b7e85537
JR
52592004-04-18 Jason Rumney <jasonr@gnu.org>
5260
5261 * w32select.c (Fw32_set_clipboard_data): Get sequence number
5262 after closing the clipboard.
5263
5a72efd4
LT
52642004-04-16 Luc Teirlinck <teirllm@auburn.edu>
5265
5266 * buffer.c (Fbuffer_base_buffer): Doc fix.
5267
20dc8583
KS
52682004-04-17 Kim F. Storm <storm@cua.dk>
5269
60962ec4
KS
5270 * keymap.c (Fkey_description): Add optional PREFIX arg.
5271 Combine prefix with KEYS to make up the full key sequence to describe.
5272 Correlate meta_prefix_char and following (simple) key to describe
5273 as meta modifier. All callers changed.
5274 (describe_map): Rename arg `keys' to `prefix'. Remove local
5275 `elt_prefix' var. Use Fkey_description with prefix instead of
5276 elt_prefix combined with Fsingle_key_description.
5277 (describe_vector): Declare static. Replace arg `elt_prefix' with
5278 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
5279 if !KEYMAP_P. Use Fkey_description with prefix instead of
5280 Fsingle_key_description.
5281
5282 * keymap.h (Fkey_description): Fix prototype.
5283 (describe_vector): Remove prototype.
5284
409368b9
KS
5285 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
5286
20dc8583
KS
5287 * image.c (PNG_BG_COLOR_SHIFT): Remove.
5288 (png_load): Fix calculation of transparent background color on X
5289 and W32 platforms.
5290
75c5501b
JB
52912004-04-16 Juanma Barranquero <lektu@terra.es>
5292
5293 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
5294 not too large before computing how much to scroll.
5295
da879ae8
SM
52962004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
5297
5298 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
5299
d01ca4a8
LT
53002004-04-14 Luc Teirlinck <teirllm@auburn.edu>
5301
5302 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
5303 Add hyperlink to Elisp manual to the docstring.
5304
572943b3
SM
53052004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
5306
5307 * callint.c (fix_command): Use XDCR.
5308
5e30a0fb
NR
53092004-04-14 Nick Roberts <nick@nick.uklinux.net>
5310
5311 * window.c (Fget_lru_window): Doc fix.
5312
a27ddfaf
KS
53132004-04-14 Kim F. Storm <storm@cua.dk>
5314
5315 * editfns.c (Fformat): Fix allocation size of precision array.
5316
5317 * dispnew.c (update_window): Only set changed_p if
5318 scrolling_window actually did scroll.
5319 (scrolling_window): Only return 1 if we actually did scroll.
5320
5321 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
5322 height to glyph height when cursor row is not fully visible.
5323 (make_cursor_line_fully_visible): Add FORCE_P arg to return
5324 failure in case row is higher than window. Callers changed.
5325 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
5326 Try to scroll partially visible, higher-than-window cursor row.
5327 (redisplay_window): Always try to scroll partially visible,
5328 higher-than-window cursor row - both initially and again with
5329 centering_position = 0.
5330 Clear desired matrix before retrying with centering_position = 0.
5331
da879ae8
SM
53322004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5333
5334 * syntax.c (scan_lists): Simplify backward string scan.
5335 Fix off-by-one boundary check for string and comment fences.
5336
5fc16e8e
SM
53372004-04-13 Joe Buehler <jbuehler@hekimian.com>
5338
5339 * sheap.c, unexcw.c: New files.
5340
c9aac8e6
LT
53412004-04-12 Luc Teirlinck <teirllm@auburn.edu>
5342
5343 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
5344 base buffer has been killed. Correct the error message if the
5345 base buffer does not exist.
5346
1e88a355
SM
53472004-04-12 Joe Buehler <jbuehler@hekimian.com>
5348
5349 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
5350 Cygwin itself. Add support for Xaw3d scrollbars.
5351
5352 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
5353
5354 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
5355
5356 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
5357 before Cygwin unexec.
5358
5359 * Makefile.in: Link changes for Cygwin unexec() support.
5360
8dbff9a0
AS
53612004-04-12 Andreas Schwab <schwab@suse.de>
5362
5363 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
5364
54dffe35
LT
53652004-04-11 Luc Teirlinck <teirllm@auburn.edu>
5366
5367 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
5368 IGNORE argument equals NAME. Doc fix.
5369
99a72bdf
MY
53702004-04-11 Masatake YAMATO <jet@gyve.org>
5371
1e88a355 5372 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
5373 empty if they are backwards.
5374
40899d7b
SM
53752004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
5376
5377 * xfaces.c (face_color_supported_p): Fix compilation without X11.
5378
f8f853de
SM
53792004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
5380
5381 * doc.c (Fsnarf_documentation): Ignore new file name entries.
5382
c953fe1b
KS
53832004-04-06 Kim F. Storm <storm@cua.dk>
5384
661e85c1
KS
5385 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
5386 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
5387
5388 * w32term.c (w32_read_socket): Set mouse_face_hidden after
5389 clearing highlight.
5390
5391 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
5392
5393 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
5394 clearing highlight.
5395
c953fe1b
KS
5396 * indent.c (vmotion): Do not reserve one column for continuation
5397 marks on window frames.
5398
c1994268
EZ
53992004-04-04 Eli Zaretskii <eliz@gnu.org>
5400
5401 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
5402 from GCC.
5403
9f691b0d
SM
54042004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
5405
5406 * .gdbinit-union: Remove.
5407
5408 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
5409 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
5410 ($nonvalbits): Remove.
5411 ($valmask): Set it by calling xreload to avoid redundancy.
5412
5413 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
5414 (gdb_emacs_intbits): Remove.
5415
7a8560d7
JD
54162004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5417
9f691b0d 5418 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 5419
3c8111fc
KH
54202004-03-30 Kenichi Handa <handa@m17n.org>
5421
5422 * editfns.c (Fformat): Fix initialization of the array info.
5423
48a0bce4
KS
54242004-03-30 Kim F. Storm <storm@cua.dk>
5425
5426 * xterm.c (x_mouse_click_focus_ignore_position): New var.
5427 (syms_of_xterm): DEFVAR_BOOL it.
5428 (ignore_next_mouse_click_timeout): New var.
5429 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
5430 Use it to filter mouse clicks following focus event.
5431
1cd0066c
KS
54322004-03-29 David Ponce <david@dponce.com>
5433
5434 * callint.c (Fcall_interactively): Fix last change.
5435
adb3b353
SM
54362004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5437
5438 * eval.c (Fcommandp): Simplify.
5439
5440 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
5441 Extend to handle all kinds of functions.
5442
5443 * lisp.h (Finteractive_form): Declare.
5444
5445 * callint.c (Fcall_interactively): Use it.
5446
6fc4c9c9
KS
54472004-03-26 Kim F. Storm <storm@cua.dk>
5448
5449 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
5450 to catch errors in calc_pixel_width_or_height during redisplay.
5451
abdb9b83
MY
54522004-03-26 Masatake YAMATO <jet@gyve.org>
5453
b17856dd 5454 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 5455
b17856dd 5456 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 5457
b17856dd 5458 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 5459
b17856dd 5460 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 5461
e8a84b6c
JD
54622004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5463
b17856dd 5464 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 5465
36a3fd05
RS
54662004-03-19 Richard M. Stallman <rms@gnu.org>
5467
5468 * s/sol2-6.h: Delete previous change.
5469
ab24c127
KS
54702004-03-19 Kim F. Storm <storm@cua.dk>
5471
5472 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
5473 to_charpos corresponds to newline in right fringe. Use local
5474 BUFFER_POS_REACHED_P macro.
5475
992126de
JD
54762004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5477
5478 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
5479 to compile on non-window system.
5480
45dbfc84
KS
54812004-03-19 Kim F. Storm <storm@cua.dk>
5482
5483 * dispextern.h (calc_pixel_width_or_height): Add prototype.
5484
5485 * image.c (Qcenter): Move to xdisp.c.
5486
5487 * xdisp.c (Qcenter): Declare here.
adb3b353 5488 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
5489 (handle_single_display_prop): Allow space display property on all
5490 platforms.
5491 (display_mode_line): Set mode_line_p before displaying line.
5492 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
5493 handling. Remove complex cases for fringes and scroll-bars.
5494 Add left, right, and center alignment positions. Add text (area)
5495 width/height. Return width or height for image specs.
5496 (produce_stretch_glyph): Improve handling of :align-to. Is now
5497 relative to left of text area by default, but other base offsets
5498 can be specified -- also for text lines.
5499
5500 * term.c (produce_glyphs): Handle IT_STRETCH.
5501 (produce_stretch_glyph): New function to handle space width and
5502 align-to display properties on non-window systems.
5503
37264101
SM
55042004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5505
5506 * fileio.c (Fread_file_name): Set completion-ignore-case for
5507 case-insensitive systems.
5508
73bc43da
MY
55092004-03-14 Masatake YAMATO <jet@gyve.org>
5510
5511 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
5512 when keymap and cursor are setup.
5513
9062aa89
ST
55142004-03-14 Steven Tamm <steventamm@mac.com>
5515
b17856dd 5516 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 5517
e4b1b5ab
KS
55182004-03-14 Kim F. Storm <storm@cua.dk>
5519
5520 * dispextern.h (x_find_image_file): Add prototype.
5521
5522 * image.c (x_find_image_file): Make extern.
5523
5524 * xfns.c (x_find_image_file): Remove prototype.
5525
a6eeaa81 55262004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 5527
37264101 5528 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 5529
37264101 5530 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 5531
e69cfac2
RS
55322004-03-12 Richard M. Stallman <rms@gnu.org>
5533
5534 * fns.c (internal_equal): New arg PROPS controls comparing
5535 text properties. All callers changed.
5536 (Fequal_including_properties): New function.
5537 (syms_of_fns): defsubr it.
5538
45034953
KS
55392004-03-12 Kim F. Storm <storm@cua.dk>
5540
5541 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 5542
45034953
KS
5543 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
5544 (image_background, image_background_transparent): Fix prototypes.
5545
37264101 5546 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
5547
5548 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
5549 (x_query_font, x_find_ccl_program, x_set_window_size)
5550 (x_make_frame_visible, mac_initialize, XCreatePixmap)
5551 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
5552 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
5553
5554 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
5555 (x_query_font, x_find_ccl_program, x_set_window_size)
5556 (x_make_frame_visible, mac_initialize, XCreatePixmap)
5557 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
5558 (mac_draw_line_to_pixmap): Add prototypes.
5559
55602004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5561
5562 * macterm.c (XTread_socket): Fix mouse click on tool bar.
5563
a12d3d87
KS
55642004-03-11 Kim F. Storm <storm@cua.dk>
5565
d3ab1cf1
KS
5566 * dispextern.h: Move image related prototypes from xfns.c section
5567 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
5568 HAVE_X_WINDOWS.
37264101 5569
37de9f51 5570 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 5571 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
5572 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
5573 (GTK_OBJ) [USE_GTK]: New declaration.
5574 (obj): Add $(GTK_OBJ) to list.
5575
5243c06a 55762004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 5577
7e26f91b 5578 * image.c [MAC_OSX]: Include sys/stat.h.
5243c06a
ST
5579
5580 * macfns.c (syms_of_macfns): Remove definitions of things now
7e26f91b 5581 defined in image.c.
5243c06a 5582
c0f97789
KS
55832004-03-11 Kim F. Storm <storm@cua.dk>
5584
5585 The following changes consolidates the identical/similar image
5586 support code previously found in xfns.c, w32fns.c, and macfns.c
5587 into a new file image.c.
5588
5589 * makefile.w32-in (OBJ1): Add image.o.
5590 ($(BLD)/image.$(O)): Add dependencies.
5591
5592 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
5593 (image.o): Add dependencies.
37264101 5594
c0f97789
KS
5595 * image.c: New file with consolidated image support code.
5596 (COLOR_TABLE_SUPPORT): New define to control whether
5597 color table support is available (X only).
5598 (Bitmap_Record): Common name for x_bitmap_record,
5599 w32_bitmap_record, and mac_bitmap_record.
5600 (XImagePtr): Common name for pointer to XImage or equivalent.
5601 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
5602 to XImagePtr on X+MAC, and to HDC on W32.
5603 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
5604 (NO_PIXMAP): Common name for "None" or equivalent.
5605 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
5606 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
5607 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
5608 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
5609 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
5610 (XDrawLine): Define on MAC for code sharing.
5611 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
5612 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
5613 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5614 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5615 (x_reference_bitmap, x_create_bitmap_from_data)
5616 (x_create_bitmap_from_file, x_destroy_bitmap)
5617 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5618 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
5619 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5620 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5621 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5622 (define_image_type, lookup_image_type, valid_image_p)
5623 (image_error, enum image_value_type, struct image_keyword)
5624 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5625 (make_image, free_image, prepare_image_for_display, image_ascent)
5626 (four_corners_best, image_background, image_background_transparent)
5627 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5628 (make_image_cache, free_image_cache, clear_image_cache)
5629 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5630 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5631 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5632 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
5633 (init_image_func_pointer, image_load_quartz2d)
5634 (struct ct_color, init_color_table, free_color_table)
5635 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5636 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5637 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5638 (x_disable_image, x_build_heuristic_mask)
5639 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5640 (TIFF support, GIF support, Ghostscript support): Consolidate image
5641 code from xfns.c, w32fns.c, and macfns.c.
5642 (syms_of_image): Consolidate image related symbol setup here.
5643 (init_image): Consolidate image related initializations here.
37264101 5644
c0f97789
KS
5645 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
5646 and init_image. Remove call to init_xfns.
5647
37264101
SM
5648 * macterm.h (struct mac_bitmap_record): Add file member.
5649 Not currently used, but simplifies code sharing.
c0f97789
KS
5650
5651 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5652 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5653 (x_reference_bitmap, x_create_bitmap_from_data)
5654 (x_create_bitmap_from_file, x_destroy_bitmap)
5655 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5656 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
5657 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5658 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5659 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5660 (define_image_type, lookup_image_type, valid_image_p)
5661 (image_error, enum image_value_type, struct image_keyword)
5662 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5663 (make_image, free_image, prepare_image_for_display, image_ascent)
5664 (four_corners_best, image_background, image_background_transparent)
5665 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5666 (make_image_cache, free_image_cache, clear_image_cache)
5667 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5668 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5669 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5670 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
5671 (init_image_func_pointer, image_load_quartz2d)
5672 (struct ct_color, init_color_table, free_color_table)
5673 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5674 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5675 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5676 (x_disable_image, x_build_heuristic_mask)
5677 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5678 (TIFF support, GIF support, Ghostscript support): Merge with image
5679 code from xfns.c and macfns.c into image.c.
5680 (syms_of_xfns): Move image related symbols to image.c.
5681 (init_external_image_libraries, init_xfns): Remove; initialization
5682 moved to init_image in image.c.
5683
5684 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5685 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5686 (x_reference_bitmap, x_create_bitmap_from_data)
5687 (x_create_bitmap_from_file, x_destroy_bitmap)
5688 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5689 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5690 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5691 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5692 (define_image_type, lookup_image_type, valid_image_p)
5693 (image_error, enum image_value_type, struct image_keyword)
5694 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5695 (make_image, free_image, prepare_image_for_display, image_ascent)
5696 (four_corners_best, image_background, image_background_transparent)
5697 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5698 (make_image_cache, free_image_cache, clear_image_cache)
5699 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5700 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5701 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5702 (struct ct_color, init_color_table, free_color_table)
5703 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5704 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5705 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5706 (x_disable_image, x_build_heuristic_mask)
5707 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5708 (TIFF support, GIF support, Ghostscript support): Merge with image
5709 code from xfns.c and macfns.c into image.c.
5710 (syms_of_xfns): Move image related symbols to image.c.
5711 (init_external_image_libraries, init_xfns): Remove; initialization
5712 moved to init_image in image.c.
5713
5714 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5715 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5716 (x_reference_bitmap, x_create_bitmap_from_data)
5717 (x_create_bitmap_from_file, x_destroy_bitmap)
5718 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5719 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5720 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5721 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5722 (define_image_type, lookup_image_type, valid_image_p)
5723 (image_error, enum image_value_type, struct image_keyword)
5724 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5725 (make_image, free_image, prepare_image_for_display, image_ascent)
5726 (four_corners_best, image_background, image_background_transparent)
5727 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5728 (make_image_cache, free_image_cache, clear_image_cache)
5729 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5730 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5731 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5732 (struct ct_color, init_color_table, free_color_table)
5733 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5734 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5735 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5736 (x_disable_image, x_build_heuristic_mask)
5737 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5738 (TIFF support, GIF support, Ghostscript support): Merge with
5739 w32fns.c and macfns.c image code into image.c.
5740 (syms_of_xfns): Move image related symbols to image.c.
5741 (init_xfns): Remove; initialization moved to init_image in image.c.
5742
5743 * lisp.h (syms_of_image, init_image): Add protoypes.
5744 (init_xfns): Remove prototype.
5745
5746 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5747 (x_reference_bitmap, x_create_bitmap_from_data)
5748 (x_create_bitmap_from_file, x_destroy_bitmap)
5749 (x_create_bitmap_mask): Move prototypes from dispextern.h.
5750 (gamma_correct) [MAC_OS]: Add prototype.
5751
5752 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5753 (x_reference_bitmap, x_create_bitmap_from_data)
5754 (x_create_bitmap_from_file, x_destroy_bitmap)
5755 (x_create_bitmap_mask): Move prototypes to dispextern.h.
5756
6eced09c
KH
57572004-03-09 Kenichi Handa <handa@etlken2>
5758
5759 * coding.c (decode_coding_emacs_mule): Handle insufficent source
5760 correctly.
5761
9a7e95f3
RS
57622004-03-04 Richard M. Stallman <rms@gnu.org>
5763
04a6e76b
RS
5764 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
5765
9a7e95f3
RS
5766 * window.c (Fdisplay_buffer): Doc fix.
5767
5768 * buffer.c (Fpop_to_buffer): Doc fix.
5769
6c2488df
KS
57702004-03-03 Kim F. Storm <storm@cua.dk>
5771
5772 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
5773
d8d95bc7
SM
57742004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
5775
5776 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
5777
357589bf
RS
57782004-03-02 Richard M. Stallman <rms@gnu.org>
5779
5780 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
5781
409949b5
KH
57822004-03-02 Kenichi Handa <handa@m17n.org>
5783
5784 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
5785
d24bc50f
KS
57862004-03-02 Kim F. Storm <storm@cua.dk>
5787
5788 * window.h (struct window): New member overlay_arrow_bitmap.
5789
5790 * window.c (make_window): Initialize overlay_arrow_bitmap.
5791
5792 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
5793 implement and integrate multiple overlay arrows with redisplay.
5794 (syms_of_xdisp): DEFVAR_LISP and initialize it.
5795 (last_arrow_position, last_arrow_string): Replace by properties.
5796 (Qlast_arrow_position, Qlast_arrow_string)
5797 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
5798 (syms_of_xdisp): Intern and staticpro them.
5799 (overlay_arrow_string_or_property, update_overlay_arrows)
5800 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
5801 (overlay_arrow_at_row): New functions for multiple overlay arrows.
5802 (redisplay_internal): Use them instead of directly accessing
5803 Voverlay_arrow_position etc. for multiple overlay arrows.
5804 (mark_window_display_accurate): Use update_overlay_arrows.
5805 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
5806 (try_window_id): Use overlay_arrows_changed_p.
5807 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
5808 (display_line): Use overlay_arrow_at_row to check multiple
5809 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 5810 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
5811 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
5812 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
5813
5814 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
5815 (update_window_fringes): Remove unused code.
5816
c1464661
JR
58172004-03-01 Jason Rumney <jasonr@gnu.org>
5818
5819 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
5820
a64387ee
JB
58212004-03-01 Juanma Barranquero <lektu@terra.es>
5822
5823 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
5824
5825 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
5826
334faa08
JD
58272004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5828
5829 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
5830 how many colors can be displayed.
5831
bb62616f
KH
58322004-03-01 Kenichi Handa <handa@m17n.org>
5833
5834 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
5835 correctly.
5836
0fd16104
KS
58372004-02-28 Kim F. Storm <storm@cua.dk>
5838
5839 * dispnew.c (update_window): Update header line also if there are
5840 no other changes in window (move code after set_cursor label).
5841
5842 * lisp.h (mark_window_display_accurate): Remove prototype.
5843
5844 * window.c (window_loop, Fforce_window_update): Force mode line
5845 updates by setting prevent_redisplay_optimizations_p and
5846 update_mode_lines.
5847
b59dd9c8
JD
58482004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5849
d8d95bc7 5850 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
5851
5852 * xterm.c (x_calc_absolute_position): Call x_real_positions
5853 to get WM window sizes and use those to calculate position.
d8d95bc7 5854 (x_set_offset): Remove code commented out.
b59dd9c8 5855
a874691c
MB
58562004-02-28 Miles Bader <miles@gnu.org>
5857
5858 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
5859
3e0c6482
KS
58602004-02-28 Kim F. Storm <storm@cua.dk>
5861
5862 * keyboard.c (kbd_buffer_store_event_hold): New function to store
5863 an event into kbd fifo, but with special handling of quit event;
5864 a quit event is saved for later, and further events are discarded
5865 until the saved quit event has been processed.
5866 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
5867 (gen_help_event): Store help event in kbd fifo.
5868 (NREAD_INPUT_EVENTS): Remove.
5869 (read_avail_input): Adapt to new read_socket_hook interface.
5870 Remove allocation and initialization of local input_event buffer,
5871 as read_socket_hook stores events directly in fifo. Allocate and
5872 initialize local hold_quit event to handle postponed quit event
5873 (and store it if set by kbd_buffer_store_event_hold).
5874
5875 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
5876 (gen_help_event): Fix prototype.
5877
a64387ee 5878 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 5879 numcharsp args. Add hold_quit arg.
f63fd14e 5880 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
5881 directly in fifo using kbd_buffer_store_event_hold.
5882
5883 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
5884 (read_input_waiting): Adapt to new read_socket_hook interface.
5885 Remove allocation and initialization of local input_event buffer,
5886 as read_socket_hook stores events directly in fifo. Allocate and
5887 initialize local hold_quit event to handle postponed quit event
5888 (and store it if set by kbd_buffer_store_event_hold).
5889
a64387ee 5890 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
5891
5892 * termhooks.h (read_socket_hook): Fix prototype.
5893
5894 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
5895 numcharsp args. Add hold_quit arg.
f63fd14e 5896 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
5897 directly in fifo using kbd_buffer_store_event_hold.
5898
5899 * w32inevt.h (w32_console_mouse_position): Fix prototype.
5900
5901 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
5902 Add hold_quit arg. Rework to use just one, local, inev
5903 input_event. Store inev directly in fifo using
3e0c6482
KS
5904 kbd_buffer_store_event_hold. Update count in one place.
5905 Postpone call to gen_help_event until inev is stored; use new
5906 local do_help for this.
5907 Remove local emacs_event in handing of ButtonPress event; just use
5908 inev instead (so no reason to copy it later).
5909
5910 * xsmfns.c (x_session_check_input): Remove numchars arg.
5911
d8d95bc7
SM
5912 * xterm.c (x_focus_changed, x_detect_focus_change):
5913 Remove numchars arg. Always store event into bufp arg.
5914 Return nothing. Callers changed accordingly.
3e0c6482
KS
5915 (glyph_rect): Simplify.
5916 (STORE_KEYSYM_FOR_DEBUG): New macro.
5917 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
5918 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
5919 (current_hold_quit) [USE_GTK]: Add.
5920 (event_handler_gdk): Adapt to new handle_one_xevent.
5921 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
5922 Add hold_quit arg. Rework to use just one, local, inev
5923 input_event. Store inev directly in fifo using
3e0c6482
KS
5924 kbd_buffer_store_event_hold. Update count in one place.
5925 Postpone call to gen_help_event until inev is stored; use new
5926 local do_help for this.
5927 Simplify handling of keysyms (consolidate common code). Fix bug
5928 where count was updated with nchars instead of nbytes.
5929 Remove local emacs_event in handing of ButtonPress event; just use
5930 inev instead (so no reason to copy it later).
5931 Remove `out' label. Rename label `ret' to `done'; add various
5932 `goto done' to clarify code flow in deeply nested blocks.
5933 (x_dispatch_event): Simplify as handle_one_xevent now calls
5934 kbd_buffer_store_event itself.
f63fd14e 5935 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
5936 arg. Call handle_one_xevent with new arglist. Store event from
5937 x_session_check_input in fifo.
5938 [USE_GTK]: Setup current_hold_quit.
5939 Decrement handling_signal before unblocking input.
5940 (x_initialize) [USE_GTK]: Initialize current_count.
5941
5942 * xterm.h (x_session_check_input): Fix prototype.
5943
e3564461 59442004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 5945
d8d95bc7 5946 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 5947
e3564461
ST
5948 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
5949 macgui.h).
a64387ee 5950
e3564461 5951 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 5952
e3564461
ST
5953 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
5954 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
5955 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
5956 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
5957 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
5958 (Bitmap): Remove typedef.
5959 (Pixmap): Change int to GWorldPtr.
5960
d8d95bc7 5961 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 5962
d8d95bc7
SM
5963 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
5964 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
5965 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
5966 long representation.
5967 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
5968 colors used for masks.
5969 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 5970
e3564461
ST
5971 * macfns.c: Include sys/types.h and sys/stat.h.
5972 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
5973 Include QuickTime/QuickTime.h.
5974 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
5975 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
5976 functions defined in macterm.c.
5977 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
5978 (ZPixmap): New #define for compatibility with xfns.c.
5979 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
5980 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
5981 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
5982 New functions.
e3564461 5983 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
5984 (x_destroy_x_image, unwind_create_frame, x_disable_image)
5985 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
5986 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
5987 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
5988 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
5989 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
5990 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
5991 long mixup.
5992 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
5993 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
5994 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
5995 (x_set_cursor_type, Fxw_color_values, valid_image_p)
5996 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
5997 (x_alloc_image_color, clear_image_cache, lookup_image)
5998 (x_find_image_file, xbm_read_bitmap_file_data)
5999 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
6000 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
6001 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
6002 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
6003 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 6004 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
6005 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
6006 #if 0.
6007 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
6008 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
6009 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
6010 New functions (from xfns.c).
e3564461
ST
6011 (Fx_create_frame): Record unwind_create_frame.
6012 (Fxw_display_color_p): Use dpyinfo->color_p.
6013 (Fx_display_grayscale_p, Fx_display_planes): Don't use
6014 dpyinfo->n_cbits.
6015 (Fx_display_color_cells): Use dpyinfo->n_planes;
6016 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
6017 (Qheuristic, cross_disabled_images, emboss_matrix)
6018 (laplace_matrix): New variables (from xfns.c).
6019 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
6020 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
6021 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
6022 (image_background_transparent): New function (from xfns.c).
6023 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
6024 (image_load_quicktime): Add declaration.
6025 [MAC_OSX] (image_load_quartz2d): Likewise.
6026 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
6027 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 6028 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
6029 (xbm_load_image_from_file, x_laplace_read_row)
6030 (x_laplace_write_row, pbm_read_file): Remove functions.
6031 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
6032 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
6033 (colors_in_color_table): Sync with xfns.c (although not used).
6034 (lookup_rgb_color): Don't lookup color table. Just do gamma
6035 correction.
6036 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
6037 (x_disable_image): New function (from xfns.c).
6038 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
6039 (x_build_heuristic_mask): Sync with xfns.c.
6040 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
6041 (HAVE_PBM): Remove #ifdef.
6042 (pbm_load): Sync with xfns.c. Set img->width and img->height
6043 before IMAGE_BACKGROUND.
d8d95bc7 6044 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
6045 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
6046 Don't enclose with #if HAVE_PNG.
6047 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
6048 symbol _CGImageCreateWithPNGDataProvider is defined.
6049 Otherwise use image_load_quicktime.
e3564461 6050 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
6051 [HAVE_PNG] (png_load): Sync with xfns.c.
6052 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
6053 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
6054 HAVE_JPEG.
6055 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
6056 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
6057 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
6058 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
6059 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
6060 (tiff_image_p, tiff_load): Don't enclose declarations with #if
6061 HAVE_TIFF.
6062 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
6063 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
6064 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
6065 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
6066 New functions (from xfns.c).
e3564461 6067 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 6068 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
6069 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
6070 Don't enclose with #if HAVE_GIF.
6071 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
6072 animated gif. Otherwise use image_load_quicktime.
6073 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
6074 gif_DrawText to avoid conflict with QuickdrawText.h.
6075 [HAVE_GIF] (gif_load): Sync with xfns.c.
6076 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
6077 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
6078 Ghostscript is not supported yet).
6079 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
6080 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
6081 cross_disabled_images (from xfns.c). Remove #if 0 for supported
6082 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
6083 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
6084 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
6085 HAVE_PNG. Call EnterMovies to support animated gifs.
6086 Call init_image_func_pointer to bind a symbol
e3564461 6087 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 6088
d8d95bc7 6089 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
6090 (x_draw_bar_cursor): Sync declaration with xterm.c.
6091 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
6092 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
6093 graphics).
6094 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
6095 (mac_draw_line_to_pixmap, XCreatePixmap)
6096 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
6097 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
6098 New functions.
6099 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
6100 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
6101 Cast bits to char *.
e3564461
ST
6102 (reflect_byte): New function (from w32fns.c).
6103 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
6104 due to byte alignment.
d8d95bc7
SM
6105 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
6106 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
6107 (XSetForeground): Remove static (now used in macfns.c).
6108 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
6109 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
6110 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
6111 (x_draw_glyph_string_box, x_draw_image_foreground)
6112 (x_draw_image_foreground_1, x_draw_image_glyph_string)
6113 (x_draw_stretch_glyph_string, x_draw_glyph_string)
6114 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
6115 Sync with xterm.c.
6116 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
6117 than the xterm.c version when a strictly horizontal or vertical
6118 line is drawn.
6119 (XTset_terminal_window): Add static.
6120 (x_make_frame_visible): Add UNBLOCK_INPUT.
6121 (x_free_frame_resources): New funcion (from xterm.c).
6122 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
6123 occurs in tool bar area.
d8d95bc7
SM
6124 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
6125 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
6126 Initialize image cache.
6127 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
6128 Enclose unused functions with #if 0.
6129 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
6130 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 6131 from a mac font name to an XLFD font name according to its script code.
e3564461 6132 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 6133 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
6134 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
6135 whose name starts with `.'.
6136 (init_font_name_table): Use decode_mac_font_name. Add both
6137 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
6138 of a font is smJapanese.
6139 (mac_do_list_fonts): New function to list fonts that match a given
6140 pattern.
6141 (x_list_fonts, XLoadQueryFont): Use it.
6142 (XLoadQueryFont): Set rbearing field for each variable width
6143 character to avoid needless redraw.
6144 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
6145
446f5f3d
KS
61462004-02-26 Kim F. Storm <storm@cua.dk>
6147
af617d0f
KS
6148 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
6149 as read_socket_hook handler on X aborts if buffer is too small
6150 and W32 handler doesn't always check buffer limit.
6151
446f5f3d
KS
6152 * xdisp.c (handle_single_display_prop): Handle left-fringe and
6153 right-fringe similar to a display margin image. Specifically,
6154 the characters having the fringe prop are no longer shown, and
6155 we use IT_IMAGE/next_element_from_image with image_id = -1 to
6156 do this. Set fringe bitmap face_id in it->face_id.
6157 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
6158 still realize it->face (i.e. the fringe bitmap face).
6159
7d8a0b55
MB
61602004-02-25 Miles Bader <miles@gnu.org>
6161
6162 * xdisp.c (check_it): Check string/string_pos consistency.
6163 (init_iterator): Initialize string-related fields properly.
6164
61652004-02-11 Miles Bader <miles@gnu.org>
6166
6167 * xdisp.c (produce_image_glyph): Force negative descents to zero.
6168
61692004-02-10 Miles Bader <miles@gnu.org>
6170
6171 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
6172 BLOCK_INPUT can be nested, so it doesn't make much sense.
6173
a64387ee 61742004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
6175
6176 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
6177 (xbm_read_bitmap_data): Use unsigned char for image data.
6178
92f5fba2
LT
61792004-02-23 Luc Teirlinck <teirllm@auburn.edu>
6180
6181 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
6182
8565fb3d
JR
61832004-02-22 Jason Rumney <jasonr@gnu.org>
6184
6185 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
6186 correctly over other bitmaps.
6187
a6eeaa81 61882004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
6189
6190 * emacs.c (USAGE1): Split into two halves.
6191 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
6192 (USAGE3): Rename from USAGE2.
6193 (USAGE4): Rename from USAGE3.
f8125c39 6194
4effffca
EZ
61952004-02-21 Juri Linkov <juri@jurta.org>
6196
6197 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
6198 Fix --multibyte. Move --help, --version to USAGE2. Add alias
6199 --file. Fix -f, -l. Sort options. Untabify.
6200 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
6201
923c1e6f
LT
62022004-02-19 Luc Teirlinck <teirllm@auburn.edu>
6203
6204 * category.c (Fdefine_category, Fcategory_docstring)
6205 (Fget_unused_category, Fset_category_table)
6206 (Fcategory_set_mnemonics): Doc fixes.
6207
b0e225fd
KS
62082004-02-20 Kim F. Storm <storm@cua.dk>
6209
6210 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
6211 The following changes are relative to the 2004-01-21 revision.
6212 (NREAD_INPUT_EVENTS): Define as max number of input events to read
6213 in one call to read_socket_hook. Value is 8.
6214 (read_avail_input): Separate and rework handling of read_socket_hook
6215 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
6216 in read_socket_hook case, and repeat if full buffer is read.
6217 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
6218 In non-read_socket_hook case, just use a single input_event, and
6219 call kbd_buffer_store_event on the fly for each character.
6220
b15aa9f9
SM
62212004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
6222
6223 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
6224 Remove unused `gu' alternative.
6225
83c9aa95
AS
62262004-02-19 Andreas Schwab <schwab@suse.de>
6227
6228 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
6229 warning.
6230
cc808173
KS
62312004-02-18 Kim F. Storm <storm@cua.dk>
6232
6233 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
6234 Fix last change.
6235
ab90a54d
KS
62362004-02-17 Kim F. Storm <storm@cua.dk>
6237
b26f249f
KS
6238 * xdisp.c (fast_find_position): Fix return value of new version;
6239 it was inverted compared to the 21.1 version.
6240 (get_window_cursor_type): Don't look at glyph if NULL.
6241 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 6242
ab90a54d
KS
6243 * keyboard.c: Rework previous change; it didn't consider that the
6244 buf array was allocated on the stack.
6245 (prev_read): Remove variable.
6246 (read_avail_input_buf): New static event buffer array.
b9568dfc 6247 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 6248 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
6249 Use in_read_avail_input to handle re-entrance; when re-entered,
6250 fully initialize and use tmp_buf array instead of read_avail_input_buf.
6251 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
6252 is always cleared on entry. To ensure that, we clear (just) the
6253 entries that were used before we return.
6254 (init_keyboard): Initialize read_avail_input_buf here.
6255
b6189c3b 62562004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
6257
6258 * cmds.c (Fend_of_line): Doc fix.
6259
7b5368c1
EZ
62602004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
6261
6262 * keyboard.c (prev_read): New static variable.
6263 (read_avail_input): Use it to zero out only those slots in buf[]
6264 that were used last time we were called.
6265
a6eeaa81 62662004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
6267
6268 * Makefile.in (obj): Move fringe.o from here...
6269 (XOBJ, MAC_OBJ): ...to here.
6270
159c348e
SE
62712004-02-16 Stephen Eglen <stephen@gnu.org>
6272
6273 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
6274
d2f14999
SM
62752004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
6276
b15aa9f9
SM
6277 * data.c (Fbyteorder):
6278 * fringe.c (Fdefine_fringe_bitmap):
6279 * xdisp.c (handle_single_display_prop):
d2f14999
SM
6280 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
6281
8d50508a
JR
62822004-02-16 Jason Rumney <jasonr@gnu.org>
6283
6284 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
6285
dd4497dc
ST
62862004-02-15 Steven Tamm <steventamm@mac.com>
6287
6288 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
6289 controlling emulation of a three button mouse with option and
6290 command keys.
7e26f91b 6291 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
b15aa9f9 6292 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 6293
c9159cb3
KS
62942004-02-15 Kim F. Storm <storm@cua.dk>
6295
2cc52658
KS
6296 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
6297
c9159cb3
KS
6298 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
6299 Perform byte-swapping.
6300
12fde2dc
KS
63012004-02-14 Kim F. Storm <storm@cua.dk>
6302
6303 * dispextern.h (struct draw_fringe_bitmap_params): Change member
6304 bits from char to short to facilitate wider bitmaps.
6305 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
6306 member.
6307
6308 * fringe.c (struct fringe_bitmap): Change member bits from char to
6309 short to facilitate 16 bits wide bitmaps. Modify all standard
6310 bitmaps accordingly.
6311 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
6312 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
6313 (draw_fringe_bitmap): Ditto.
6314 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
6315 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
6316 handle up to 16 bits wide bitmaps.
6317 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 6318 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
6319
6320 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
6321 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
6322 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
6323
6324 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
6325 so it is no longer necessary to expand them here.
6326
6327 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
6328
9d7271e8
KS
63292004-02-12 Kim F. Storm <storm@cua.dk>
6330
6331 * window.c (Fwindow_fringes): Doc fix.
6332
706c1e4f
JD
63332004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6334
6335 * xselect.c (x_get_foreign_selection): Add new optional parameter
6336 time_stamp.
6337 (Fx_get_selection_internal): Ditto, pass time_stamp to
6338 x_get_foreign_selection.
6339
6340 * data.c (Fbyteorder): New function.
6341
c2d12b5d
JD
63422004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6343
6344 * atimer.c: Move include stdio.h to same place as in other files.
6345
6346 * region-cache.c: Ditto.
6347
6348 * sysdep.c: Ditto.
6349
6350 * xfaces.c: Ditto.
6351
4c1947b9
SS
63522004-02-09 Sam Steingold <sds@gnu.org>
6353
89458937 6354 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 6355
82722af3
KS
63562004-02-09 Kim F. Storm <storm@cua.dk>
6357
6358 * fringe.c: New file. Move original fringe related declarations
6359 and code from dispextern.h and xdisp.c here.
6360 Rework code to support user defined fringe bitmaps, redefining
6361 standard bitmaps, ability to overlay user defined bitmap with
6362 overlay arrow bitmap, and add faces to bitmaps.
6363 (Voverflow_newline_into_fringe): Declare here.
6364 (enum fringe_bitmap_align): New enum.
6365 (..._bits): All bitmaps are now defined without bitswapping; that
6366 is now done in init_fringe_once (if necessary).
6367 (standard_bitmaps): New array with specifications for the
6368 standard fringe bitmaps.
6369 (fringe_faces): New array.
6370 (valid_fringe_bitmap_id_p): New function.
6371 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
6372 (draw_fringe_bitmap): New function which draws fringe bitmap,
6373 possibly overlaying bitmap with cursor in right fringe or the
6374 overlay arrow in the left fringe.
6375 (update_window_fringes): Do not handle overlay arrow here.
6376 Compare and copy fringe bitmap faces.
6377 (init_fringe_bitmap): New function.
6378 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
6379 define and destroy user defined fringe bitmaps.
6380 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
6381 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
6382 (syms_of_fringe): New function. Defsubr new DEFUNs.
6383 DEFVAR_LISP Voverflow_newline_into_fringe.
6384 (init_fringe_once, init_fringe): New functions.
6385 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 6386
82722af3
KS
6387 * Makefile.in (obj): Add fringe.o.
6388 (fringe.o): New dependencies.
6389
6390 * dispextern.h (FRINGE_ID_BITS): New definition for number of
6391 bits allocated to hold a fringe number. Increase number of bits
6392 from 4 to 8 to allow user defined fringe bitmaps.
6393 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
6394 left_user_fringe_face_id, right_user_fringe_bitmap,
6395 right_user_fringe_face_id.
6396 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
6397 Move to new file fringe.c.
6398 (MAX_FRINGE_BITMAPS): Define here.
6399 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
6400 and overlay_p. Change member which to int.
6401 (struct redisplay_interface): New members define_fringe_bitmap
6402 and destroy_fringe_bitmap.
6403 (valid_fringe_bitmap_id_p): Add prototype.
6404 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
6405
6406 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
6407 arrows.
6408 (update_frame): Do flush_display if force_flush_display_p to
6409 ensure display (specifically fringes) are updated in a timely
6410 manner when resizing the frame by dragging the mouse.
6411 (update_window_line): Update row if overlay arrow changed.
6412 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
6413 or overlay arrow changed.
6414
6415 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
6416 syms_of_fringe, and init_fringe.
6417
6418 * frame.h (struct frame): New member force_flush_display_p.
6419
6420 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
6421 Add prototypes.
6422
a3993cc8 6423 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 6424 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
6425 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
6426 Use cursor color for displaying cursor in fringe.
82722af3
KS
6427 (x_redisplay_interface): Add null handlers for
6428 define_fringe_bitmap and destroy_fringe_bitmap functions.
6429
6430 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
6431 xterm.c to handle overlayed fringe bitmaps and to use cursor color
6432 for displaying cursor in fringe.
6433 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
6434 specific functions to define and destroy fringe bitmaps in fringe_bmp.
6435 (w32_redisplay_interface): Add them to redisplay_interface.
6436 (w32_term_init): Call w32_init_fringe instead of explicitly
6437 defining fringe bitmaps in fringe_bmp array.
6438 (x_delete_display): Call w32_reset_fringes instead of explicitly
6439 destroying fringe bitmaps in fringe_bmp array.
6440
6441 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
6442 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
6443 (continued_bits, continuation_bits, ov_bits, first_line_bits)
6444 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
6445 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
6446 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
6447 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
6448 Move fringe handling vars and code to new file fringe.c.
6449 (handle_display_prop): Handle left-fringe and right-fringe
6450 display properties; store user fringe bitmaps in iterator.
6451 (move_it_in_display_line_to): Handle cursor in fringe at eob.
6452 (clear_garbaged_frames): Set force_flush_display_p if resized.
6453 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
6454 (display_line): Handle cursor in fringe at eob.
6455 (display_line): Set row user fringe bitmaps from iterator.
6456
6457 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
6458 Use cursor color for displaying cursor in fringe.
6459 (x_redisplay_interface): Add null handlers for
6460 define_fringe_bitmap and destroy_fringe_bitmap functions.
6461
030400eb
JD
64622004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6463
6464 * macfns.c (Fx_change_window_property): Make doc string and
6465 parameters same as for X version.
6466
6467 * w32fns.c (Fx_change_window_property): Ditto.
6468
3af55251
KS
64692004-02-07 Kim F. Storm <storm@cua.dk>
6470
ec110e9e
KS
6471 * xdisp.c (hscroll_window_tree): Position cursor near to right
6472 margin in hscrolled window when jumping to end of line (rather
6473 than centering cursor).
6474
3af55251
KS
6475 * process.c (wait_reading_process_input): Don't do adaptive read
6476 buffering if waiting for a specific process.
6477
b0c138ce
LT
64782004-02-05 Luc Teirlinck <teirllm@auburn.edu>
6479
6480 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
6481 (Fread_minibuffer, Feval_minibuffer)
6482 (Fread_string, Fread_no_blanks_input)
6483 (Fcompleting_read): Doc fixes.
6484 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
6485 completion-regexp-list. Define Qcase_fold_search and staticpro it.
6486 (read_minibuf): Fix initial comment.
6487 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 6488 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
6489 checking completion-regexp-list.
6490 (Fdisplay_completion_list): Make it handle arguments that are
6491 symbols. Doc fix.
6492
9676f5ad 64932004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 6494
9676f5ad 6495 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 6496
9676f5ad
JD
6497 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
6498 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 6499 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 6500 format. Remove unused variable cons.
5b698285
JD
6501
6502 * xselect.c: Include stdio,h.
6503
fc1d15f6
KH
65042004-02-05 Kenichi Handa <handa@m17n.org>
6505
ebaff4af
KH
6506 * fns.c (Fset_char_table_range): Fix previous change.
6507
fc1d15f6
KH
6508 * buffer.c (Fset_buffer_multibyte): Fix docstring.
6509
9676f5ad
JD
65102004-02-04 Luc Teirlinck <teirllm@auburn.edu>
6511
6512 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
6513
da75761f
SM
65142004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
6515
6516 * keymap.c (Vmouse_events): Rename from Vmenu_events.
6517 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
6518
13c5d120
KH
65192004-02-04 Kenichi Handa <handa@m17n.org>
6520
6521 * fns.c (Fset_char_table_range): Handle charsets ascii,
6522 eight-bit-control, and eight-bit-graphic correctly.
6523
2883d842
JR
65242004-02-03 Jason Rumney <jasonr@gnu.org>
6525
6526 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
6527
6528 * w32fns.c (x_to_w32_font): Likewise.
6529
69eff41f
JD
65302004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6531
6532 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
6533 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
6534
6535 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
6536 ClientMessages.
6537
6538 * xselect.c: Include termhooks.h and X11/Xproto.h
6539 (x_check_property_data, x_fill_property_data)
6540 (x_property_data_to_lisp, mouse_position_for_drop)
6541 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 6542 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
6543 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
6544
da75761f 6545 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
6546 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
6547 OUTER_P.
6548 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
6549 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
6550 if vector_ret_p is true.
6551 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 6552
a6eeaa81 65532004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
6554
6555 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
6556 basename of FILE relative to it, not FILE itself.
6557
09721b31
KH
65582004-02-02 Kenichi Handa <handa@m17n.org>
6559
6560 * coding.c (coding_restore_composition): Check invalid
6561 composition data more rigidly.
6562
eb996101
LT
65632004-01-30 Luc Teirlinck <teirllm@auburn.edu>
6564
6565 * fileio.c (Fread_file_name_internal): Correctly handle the case
6566 where insert-default-directory is nil.
6567 (Fread_file_name): Always return an empty string if the user exits
6568 with an empty minibuffer. Adapt the docstring accordingly.
6569 (syms_of_fileio): Adapt the docstring of insert-default-directory
6570 to the change in Fread_file_name.
6571
a6eeaa81 65722004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
6573
6574 * alloca.c [!alloca]: Fix the prototype for xfree.
6575
13f52ed8
KH
65762004-01-29 Kenichi Handa <handa@m17n.org>
6577
6578 * fns.c (string_char_to_byte): Optimize for ASCII only string.
6579 (string_byte_to_char): Likewise.
6580
d57625a0
JR
65812004-01-28 Peter Runestig <peter@runestig.com>
6582
6583 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
6584
a64387ee 65852004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
6586
6587 * unexmacosx.c (unexec_copy): Do not copy more than was
6588 requested to prevent overwriting during unexec.
6589
eb37b8fd
JD
65902004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6591
ce38070a
JD
6592 * process.c (sigchld_handler): Add comment about not calling malloc.
6593
eb37b8fd
JD
6594 * process.h: Add extern to synch_process_termsig.
6595
a64387ee 65962004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 6597
da75761f
SM
6598 * macterm.c (make_mac_frame, make_mac_terminal_frame):
6599 Move setting of scroll bars from make_mac_frame to
6600 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 6601
d62a265d
RS
66022004-01-26 Richard M. Stallman <rms@gnu.org>
6603
6604 * search.c (Freplace_match): Handle nonexistent
6605 back-references properly.
6606
66072004-01-03 Richard M. Stallman <rms@gnu.org>
6608
6609 * window.c (decode_any_window): New function.
6610 (Fwindow_height, Fwindow_width, Fwindow_edges)
6611 (Fwindow_pixel_edges, Fwindow_inside_edges)
6612 (Fwindow_inside_pixel_edges): Use decode_any_window.
6613
ff236419
JD
66142004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6615
6616 * process.h: synch_process_termsig new variable.
6617
6618 * callproc.c: Define synch_process_termsig.
6619 (Fcall_process): Initiate synch_process_termsig to zero and
6620 check if non-zero and get signal name after subprocess has ended.
6621
6622 * process.c (sigchld_handler): Set synch_process_termsig
6623 if terminated by a signal. synch_process_death setting removed.
6624
6625 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
6626
41b867ea
AS
66272004-01-26 Andreas Schwab <schwab@suse.de>
6628
6629 * print.c (print_preprocess): Declare size as EMACS_INT to not
6630 lose bits.
6631 (print_object): Likewise.
6632 * alloc.c (Fpurecopy): Likewise.
6633
a08084ff
LT
66342004-01-25 Luc Teirlinck <teirllm@auburn.edu>
6635
6636 * window.c (Fwindow_minibuffer_p): Doc fix.
6637
b19ac475
JY
66382004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
6639
6640 * editfns.c (Fformat): Make both passes accept the same set of flags.
6641
fe905025
KH
66422004-01-23 Kenichi Handa <handa@m17n.org>
6643
6644 * fns.c (Fmd5): If OBJECT is a buffer different from the current
6645 one, set buffer to OBJECT temporarily.
6646
438fc6c0
SM
66472004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
6648
455316e2
SM
6649 * keyboard.c (kbd_buffer_gcpro): Remove.
6650 (kbd_buffer_store_event, clear_event, Fdiscard_input)
6651 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
6652 Don't initialize and/or maintain the variable any more. It was made
6653 redundant by my commit of 2003-06-15.
6654
438fc6c0
SM
6655 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
6656
5335a4ee
JD
66572004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6658
6659 * lisp.h: Add undef DECL_ALIGN.
6660
dcdaeebc
SM
66612004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
6662
6663 * process.c (wait_reading_process_input) [SYNC_INPUT]:
6664 Check interrupt_input_pending explicitly.
6665
6666 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
6667
6668 * keyboard.c (handle_async_input): New fun,
6669 extracted from input_available_signal.
6670 (input_available_signal, reinvoke_input_signal): Use it.
6671
9076a823
SM
66722004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
6673
d7107586
SM
6674 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
6675
6676 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
6677 manipulation macros for when tags are in the lower bits.
6678 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
6679 (DECL_ALIGN): New macro.
6680 (DEFUN): Use it.
6681
6682 * lisp.h [ENABLE_CHECKING]: Don't force union type.
6683
6684 * s/darwin.h (__attribute__): Remove outdated workaround.
6685
6686 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
6687
6688 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
6689 Don't check range of malloc address.
6690 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
6691
9076a823
SM
6692 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
6693
6694 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
6695
ba029065
KH
66962004-01-19 Kenichi Handa <handa@m17n.org>
6697
6698 * fontset.c (fontset_font_pattern): Fix previous change.
6699
7af0e8d7
MB
67002004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
6701
6702 * xdisp.c (Voverflow_newline_into_fringe)
6703 (move_it_in_display_line_to, redisplay_internal)
6704 (update_window_fringes, redisplay_window, display_line, window):
6705 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
6706 that it compiles without a window-system.
6707 * dispnew.c (direct_output_for_insert, update_window): Likewise.
6708
77a9cf69
KS
67092004-01-16 Kim F. Storm <storm@cua.dk>
6710
6711 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
6712
a64387ee 6713 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
6714 buffer_local_flags for indicate_buffer_boundaries.
6715 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
6716 default- variable for it.
6717
6718 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
6719 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 6720 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
6721 overflowing newlines into right fringe.
6722 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
6723 and indicate_bottom_line_p for buffer boundaries and scrolling.
6724 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
6725 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
6726 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
6727 and HOLLOW_SQUARE_BITMAP.
6728 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
6729 Add prototypes.
6730
6731 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
6732 instead of related indicator fields.
6733 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
6734 (direct_output_for_insert): Handle exact width lines like
6735 contined lines. Call update_window_fringes.
6736 (update_window): Call update_window_fringes.
6737 (scrolling_window): Don't skip desired rows with changed bitmaps.
6738 Check if fringe bitmaps changes when assigning scrolled rows.
6739
6740 * xdisp.c (Voverflow_newline_into_fringe): New variable.
6741 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
6742 (move_it_in_display_line_to): Overflow newline into fringe for
6743 rows that are exactly as wide as the window.
6744 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
6745 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
6746 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
6747 (fringe_bitmaps): Add new bitmaps.
6748 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
6749 Select proper bitmap for cursor in fringe when appropriate.
6750 Handle alignment of bitmap to top or bottom of row.
6751 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
6752 done by update_window_fringes.
6753 (update_window_fringes, draw_window_fringes): New functions.
6754 (redisplay_internal): Call update_window_fringes in case only
6755 cursor row is updated.
6756 (redisplay_window): Call update_window_fringes.
6757 Explicitly call draw_window_fringes if redisplay was done using
6758 the current matrix or the overlay arrow is in the window.
6759 (try_window_reusing_current_matrix): Mark scrolled rows for
6760 fringe update (to update buffer-boundaries / scrolling icons).
6761 (find_last_unchanged_at_beg_row): Handle exact width lines line
6762 continued lines.
6763 (display_line): Overflow newline into fringe for rows that are
6764 exactly as wide as the window. Don't append space for newline
d7107586 6765 in this case.
77a9cf69
KS
6766 (notice_overwritten_cursor): Explicitly clear cursor bitmap
6767 in fringe as if it had been overwritten.
6768 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 6769 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
6770 void-text-area-pointer as user options.
6771 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 6772
77a9cf69
KS
6773 * xterm.c (x_update_window_end): Call draw_window_fringes.
6774 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
6775 in row instead of actually drawing fringe bitmaps.
6776 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
6777 (x_draw_window_cursor): Draw cursor in fringe.
6778
6779 * w32term.c (x_update_window_end): Call draw_window_fringes.
6780 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
6781 in row instead of actually drawing fringe bitmaps.
6782 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
6783 (w32_draw_window_cursor): Draw cursor in fringe.
6784
6785 * macterm.c (x_update_window_end): Call draw_window_fringes.
6786 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
6787 in row instead of actually drawing fringe bitmaps.
6788 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
6789 (mac_draw_window_cursor): Draw cursor in fringe.
6790
a633a954
JD
67912004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6792
6793 * xterm.c (handle_one_xevent): Don't handle characters that are part
6794 of an old style (XLookupString) compose sequence.
6795
80460525
KH
67962004-01-15 Kenichi Handa <handa@m17n.org>
6797
6798 * search.c (Freplace_match): Use make_multibyte_string or
6799 make_unibyte_string according to the buffer multibyteness.
6800
7fc34f85
SM
68012004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
6802
6803 * alloc.c (struct interval_block, struct string_block)
6804 (struct symbol_block, struct marker_block, live_string_p)
6805 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
6806 Better preserve alignment for objects in blocks.
6807 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
6808
6809 * lread.c (defvar_per_buffer): Remove dead declaration.
6810
6811 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
6812 space size.
6813
66070bd1
JD
68142004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6815
6816 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
6817 if a key press should pop down. Only pop down if a key is pressed
6818 outside the menu/dialog.
6819 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
6820 popup_get_selection.
6821 (create_and_show_dialog): Pass 1 for down_on_keypress to
6822 popup_get_selection.
6823
de7515d6
JD
68242004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6825
6826 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
6827 BLOCK/UNBLOCK_INPUT.
6828
160b1b50
JD
68292004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6830
6831 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
6832 specified.
6833
3a9f36e6
KH
68342004-01-08 Kenichi Handa <handa@m17n.org>
6835
6836 * editfns.c (Fformat): Fix '&' to '&&'.
6837
3803eb32
AS
68382004-01-08 Andreas Schwab <schwab@suse.de>
6839
6840 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
6841 size if PSEUDOVECTOR_FLAG is set.
6842
9da88f37
KH
68432004-01-07 Kenichi Handa <handa@m17n.org>
6844
74ac5074
KH
6845 * charset.c (Fdeclare_equiv_charset): Fix docstring.
6846
9da88f37
KH
6847 * fontset.c (fontset_ref_via_base): Fix previous change.
6848
05faee07
KS
68492004-01-07 Kim F. Storm <storm@cua.dk>
6850
6851 * process.c (read_process_output): Only activate adaptive
6852 buffering if we read less than 256 bytes at a time.
6853
634910c8
KS
68542004-01-06 Kim F. Storm <storm@cua.dk>
6855
6856 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
6857 object and image object. Return glyph width and height.
6858 (mode_line_string, marginal_area_string): Ditto.
6859
6860 * dispextern.h (buffer_posn_from_coords, mode_line_string)
6861 (marginal_area_string): Fix prototypes.
6862
6863 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 6864 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
6865 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
6866
6867 * keyboard.c (make_lispy_position): Use modified mode_line_string,
6868 buffer_posn_from_coords, and marginal_area_string functions to
6869 include both string object and image object in the lispy position.
6870 Also add actual glyph width and height to position.
6871 (read_key_sequence): Use real buffer position from mouse
6872 event to find keymap property even when click is in marginal area.
6873
6874 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
6875 mode_line_string and marginal_area_string functions to handle
6876 both string object and image object properties.
d7107586 6877
57951c2e
AS
68782004-01-06 Andreas Schwab <schwab@suse.de>
6879
6880 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
6881 character.
6882
181e6a61
AS
68832004-01-02 Andreas Schwab <schwab@suse.de>
6884
d7107586
SM
6885 * macterm.c (emacs_options, x_initialized, same_x_server):
6886 Remove unused (and duplicated) definitions.
181e6a61 6887
31e0fbdd
KS
68882004-01-02 Kim F. Storm <storm@cua.dk>
6889
6890 * process.h (struct Lisp_Process): New members for adaptive read
6891 buffering: adaptive_read_buffering, read_output_delay, and
6892 read_output_skip.
6893
6894 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
6895 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
6896 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
6897 (process_output_delay_count, process_output_skip): New vars.
6898 (Vprocess_adaptive_read_buffering): New variable.
6899 (make_process): Initialize adaptive read buffering members.
6900 (Fstart_process): Set adaptive_read_buffering member.
6901 (deactivate_process): Cleanup adaptive read buffering.
6902 (wait_reading_process_input): Temporarily omit delayed
6903 subprocesses from the set of file descriptors to read from;
6904 adjust the select timeout if we skipped any subprocesses.
6905 (read_process_output): Increase adaptive read buffering delay if
6906 we read less than a full buffer; reduce delay when we read a
6907 full buffer.
6908 (send_process): Simplify using local Lisp_Process var.
6909 Reset adaptive read buffering delay after write.
6910 (init_process): Initialize process_output_delay_count and
6911 process_output_skip.
6912 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
6913
68c6a789
JR
69142004-01-01 Jason Rumney <jasonr@gnu.org>
6915
d7107586 6916 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 6917
3f70fe82
LT
69182003-12-30 Luc Teirlinck <teirllm@auburn.edu>
6919
6920 * print.c (Ferror_message_string): Add hyperlink in the docstring
6921 to the definition of `signal' in the Elisp manual.
6922 * eval.c (Fsignal): Ditto.
6923
b6189c3b 69242003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
6925
6926 * fns.c (internal_equal): Return t for two NaN arguments.
6927
7abd90ea
RS
69282003-12-29 Richard M. Stallman <rms@gnu.org>
6929
6930 * data.c (store_symval_forwarding): Handle setting
6931 default-fill-column, etc., by changing the value in
6932 buffers that use the default.
6933
6934 * minibuf.c (Fset_minibuffer_window): Doc fix.
6935
6936 * fileio.c (choose_write_coding_system): Ignore auto_saving
6937 if using the visited file for auto saves.
6938 (Fwrite_region): Don't update SAVE_MODIFF
6939 if auto-saving in visited file.
6940
3e7cfcdc
KH
69412003-12-29 Kenichi Handa <handa@m17n.org>
6942
6943 * dispextern.h (face_font_available_p): Extern it.
6944
6945 * fontset.c (Voverriding_fontspec_alist): New variable.
6946 (lookup_overriding_fontspec): New function.
d7107586 6947 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
6948 (fontset_font_pattern): Likewise.
6949 (regulalize_fontname): New function.
6950 (Fset_fontset_font): Call regulalize_fontname.
6951 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
6952 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
6953 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
6954
6955 * xfaces.c (face_font_available_p): New function.
6956
7abd90ea
RS
69572003-12-28 Richard M. Stallman <rms@gnu.org>
6958
6959 * buffer.c (Fother_buffer): Don't crash if BUF is nil
6960 or if its name is nil.
6961
6962 * buffer.c (Fkill_buffer): Don't delete auto-save file
6963 if it's the same as the visited file.
6964
de1d1a40
LT
69652003-12-28 Luc Teirlinck <teirllm@auburn.edu>
6966
6967 * coding.c (Fcheck_coding_system): Doc fix.
6968
204fb75e
KS
69692003-12-28 Kim F. Storm <storm@cua.dk>
6970
6971 * Makefile.in (eval.o): Depend on dispextern.h.
6972
6973 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
6974 image glyph using image's ascent.
6975 (mode_line_string): Return image glyph as object clicked on.
6976 Adjust y0 for image glyph using image's ascent.
6977
6978 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
6979 (struct glyph): New members, ascent and descent. Used to save
6980 this glyph's ascent and descent, instead of having.
6981 (struct glyph): Declare member face_id using FACE_ID_BITS.
6982 (find_hot_spot): Add prototype.
6983
6984 * keyboard.c (Qimage): Remove extern (now in lisp.h).
6985 (QCmap): Declare extern.
6986 (make_lispy_position): When position is inside image hot-spot,
6987 use hot-spot element's id as posn element.
6988
6989 * lisp.h (IMAGEP): New macro to test for image object type.
6990 (Qimage): Declare extern.
6991
6992 * macfns.c (Qimage): Remove extern (now in lisp.h).
6993 (valid_image_p, parse_image_spec): Use IMAGEP macro.
6994
6995 * macterm.c (Qface, Qmouse_face): Remove unused externs.
6996
6997 * w32fns.c (Qimage): Remove extern (now in lisp.h).
6998 (valid_image_p, parse_image_spec): Use IMAGEP macro.
6999
7000 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
7001
7002 * w32term.c (Qface, Qmouse_face): Remove unused externs.
7003
7004 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
7005 pointer types.
7006 (Qrelative_width, Qalign_to): Remove unused variables.
7007 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
7008 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
7009 image maps.
d7107586 7010 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
7011 new dx and dy args.
7012 Remove buffer_only_p arg (always 0). Simplify code accordingly.
7013 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
7014 than row's ascent and height, to get sensible height on tall rows.
7015 (build_desired_tool_bar_string): Remove Qimage extern.
7016 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
7017 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
7018 image glyph is alone on the last line.
7019 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 7020 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 7021 (on_hot_spot_p): New function to check if position is inside an
d7107586 7022 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
7023 (find_hot_spot): New function to search for image hot-spot.
7024 (Flookup_image_map): New defun to search for image hot-spot.
7025 (define_frame_cursor1): New aux function to determine frame pointer.
7026 (note_mode_line_or_margin_highlight, note_mouse_highlight):
7027 Handle `pointer' text property and :pointer image property to
7028 control frame pointer shape. Detect image hot-spots for pointer
7029 and help_echo properties. Use define_frame_cursor1.
7030 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 7031 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
7032 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
7033
7034 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
7035
7036 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
7037 (Qimage): Remove extern (now in lisp.h).
7038 (valid_image_p, parse_image_spec): Use IMAGEP macro.
7039
7040 * xmenu.c (show_help_event): Remove unused code.
7041
7042 * xterm.c (Qface, Qmouse_face): Remove unused externs.
7043 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
7044 row's ascent and descent, to get a sensible height on tall rows.
7045
fc052137
LT
70462003-12-25 Luc Teirlinck <teirllm@auburn.edu>
7047
7048 * minibuf.c (Fcompleting_read): Undo previous change.
7049
a64387ee 70502003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
7051
7052 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
7053 Arguments GCPRO'ed in call to file name handler.
7054
56ffd194
TTN
70552003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
7056
7057 * termcap.c (tgetst1): Scan for "%pN"; if all
7058 N are continuous in [1,9], remove all "%pN".
7059
5202d23d
JD
70602003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7061
f26fab36
JD
7062 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
7063
5202d23d
JD
7064 * xfaces.c (lface_fully_specified_p): Take into account that
7065 MAC OS always have unspecified stipple.
7066
8babaa59
TTN
70672003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
7068
7069 * tparam.c (tparam1): Add handling for `%pN', which
7070 means use param N for the next substitution.
7071
2d176448
TTN
70722003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
7073
7074 * xfaces.c (Fcolor_gray_p): Fix omission bug:
7075 In case `frame' is nil, consult the selected frame.
7076 (Fcolor_supported_p): Likewise.
7077
adb0708c
LT
70782003-12-23 Luc Teirlinck <teirllm@auburn.edu>
7079
000eeb15
LT
7080 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
7081 Doc fixes.
0dc72b11
LT
7082
7083 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
7084 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
7085 (Fread_from_minibuffer): Delete code moved into read_minibuf.
7086 Doc fix.
7087 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
7088 read_minibuf.
7089 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 7090 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 7091
2e4d132b
KH
70922003-12-03 Kenichi Handa <handa@m17n.org>
7093
7094 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
7095 encoding sequence.
7096
3999c705
KH
70972003-12-01 Kenichi Handa <handa@m17n.org>
7098
7099 * composite.c (syms_of_composite): Don't make the compostion hash
7100 table week.
7101
d344ecbb
LT
71022003-11-30 Luc Teirlinck <teirllm@auburn.edu>
7103
7104 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
7105 * textprop.c (Fget_char_property_and_overlay): New function.
7106 (syms_of_textprop): Defsubr it.
7107
03d6484e
JD
71082003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7109
019b1f0e
JD
7110 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
7111 to compile on terminal configuration.
7112
03d6484e
JD
7113 * fileio.c (Fread_file_name): Check use_file_dialog also before
7114 calling Fx_file_dialog.
7115
7116 * fns.c: use_file_dialog: New variable.
7117 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
7118
442d3fd0
KS
71192003-11-29 Kim F. Storm <storm@cua.dk>
7120
7121 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
7122 (syms_of_msdos): Don't intern and staticpro them.
7123
0f6a07a8
KS
71242003-11-27 Kim F. Storm <storm@cua.dk>
7125
7126 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
7127 coordinates relative to glyph at posn. If glyph is an image,
7128 return that as object at posn. Callers changed.
7129 (mode_line_string, marginal_area_string): Calculate and return
7130 pixel coordinates relative to glyph. Callers changed.
7131
7132 * dispextern.h (buffer_posn_from_coords, mode_line_string)
7133 (marginal_area_string): Fix prototypes.
7134 (window_box_left_offset, window_box_right_offset): Add prototypes.
7135
7136 * frame.h (get_specified_cursor_type, get_window_cursor_type):
7137 Remove prototypes.
7138
7139 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
7140
7141 * keyboard.c (make_lispy_position): Add x and y coordinates
7142 relative to the current glyph as 7th element of position.
7143 If glyph is an image, return it in the object element.
7144 (read_key_sequence): Skip checks for keymap property in cases
7145 where POSN_STRING is not a string (e.g. an image).
7146
7147 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
7148 (Vshow_text_cursor_in_void): New variable.
7149 (glyph_to_pixel_coords): Don't use negative hpos.
7150 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
7151 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 7152 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
7153 (calc_pixel_width_or_height): New aux function, implementing
7154 pixel based artihmetic for glyph widths and heights.
7155 (produce_stretch_glyph): Use calc_pixel_width_or_height for
7156 :width, :height, :align-to, and :ascent, thus allowing these to
7157 be specified in pixels as well as multiples of characters.
7158 Don't produce stretch glyphs with zero width or height.
7159 (get_specified_cursor_type): Declare static.
7160 (get_window_cursor_type): Declare static. Add glyph arg to be
7161 able to know when cursor is on an image; always substitute
7162 hollow-box cursor for filled-box cursor on images, to avoid
7163 negative images and flicker when blinking the cursor.
7164 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
7165 (note_mode_line_or_margin_highlight): Use non-text cursor rather
7166 than vertical scroll-bar cursor in display margins.
7167 (note_mouse_highlight): Use non-text cursor rather than text
7168 cursor in fringes and over images in the text area.
7169 Use non-text cursor when mouse pointer is outside editable text,
7170 i.e. in the void after end-of-line or end-of-buffer; this was
7171 already done for W32, but is now standard for all systems --
7172 user can toggle show-text-cursor-in-void to get old behaviour.
7173 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
7174 Vdisplay_pixels_per_inch.
7175
00498bfc
AS
71762003-11-25 Andreas Schwab <schwab@suse.de>
7177
7178 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
7179 EMACS_INT to not lose bits.
7180 (Ffillarray): Don't set bits beyond the size of a bool vector.
7181
edaa824d
KS
71822003-11-25 Kim F. Storm <storm@cua.dk>
7183
7184 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
7185 define this defun on systems that cannot use stderr as lvalue.
7186
74d6f539
GM
71872003-11-24 Gerd Moellmann <gerd@gnu.org>
7188
7189 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
7190 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
7191 ld's default is incompatible with unexec.
7192
6a1ff3ba
KS
71932003-11-23 Kim F. Storm <storm@cua.dk>
7194
63dc7c6b
KS
7195 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
7196 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
7197 (Fforce_window_update): New defun.
7198 (syms_of_window): Defsubr it.
7199 (Fset_window_margins, Fset_window_fringes): Doc fix.
7200
6a1ff3ba
KS
7201 * print.c (Fredirect_debugging_output): New defun.
7202 (syms_of_print): Defsubr it.
7203
aef109b7
LT
72042003-11-22 Luc Teirlinck <teirllm@auburn.edu>
7205
7206 * fns.c (Fset_char_table_parent): Doc fix.
7207
6a1ff3ba 72082003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
7209
7210 * dispnew.c (buffer_posn_from_coords): Return actual row/column
7211 for glyph clicked on, rather than (unused) pixel positions.
7212 (mode_line_string, marginal_area_string): Change X and Y args to
7213 pointers for returning actual row/column for glyph clicked on.
7214 Simplify and optimize loops.
7215
aef109b7
LT
7216 * dispextern.h (mode_line_string, marginal_area_string):
7217 Update prototypes.
63ccbe21
KS
7218
7219 * keyboard.c (make_lispy_position): New function for generating
7220 mouse click positions from frame and pixel coordinates.
7221 Enhanced to return buffer position and actual row/column for
7222 events outside the text area using updated mode_line_string and
7223 marginal_area_string functions.
7224 Return left-fringe and right-fringe clicks as such, rather than
7225 clicks in text area.
7226 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
7227 pixel_to_glyph_coords, as we never use the results.
7228 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
7229 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
7230 Eliminate unused code in WHEEL_EVENT handling.
7231 (make_lispy_movement): Use make_lispy_position.
7232
7233 * window.c (coordinates_in_window): Remove redundant tests.
7234 Fix returned X pixel value for left-margin.
7235
7236 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
7237 mode_line_string and marginal_area_string parameters.
7238
a64387ee 72392003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 7240
d7107586
SM
7241 * w32.c (struct the_group, getgrgid): Add.
7242 * mac.c (struct my_group, getgrgid): Add.
aef109b7 7243
3dbf3426
LT
72442003-11-21 Luc Teirlinck <teirllm@auburn.edu>
7245
7246 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
7247
cae8ddbb 72482003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 7249
d7107586
SM
7250 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
7251 include in call to file name handler. Optionally translate numeric
7252 UID and GID to strings. Update docstring.
7253 (directory_files_internal): Add parameter ID-FORMAT.
7254 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
7255 include in call to file name handler and call to
7256 directory_files_internal. Update Docstring.
7257 (Fdirectory_files): Add dummy parameter in call to
7258 directory_files_internal.
7259 * lisp.h (Qinteger): Add.
7260 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
7261 (Ffile_attributes): Add parameter.
7262 * data.c (Qinteger): Export.
cae8ddbb 7263
2550b848
LT
72642003-11-21 Luc Teirlinck <teirllm@auburn.edu>
7265
3dbf3426 7266 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 7267
88380018
KS
72682003-11-19 Kim F. Storm <storm@cua.dk>
7269
7270 * xdisp.c (init_iterator): Initialize it->start to position
7271 before reseating (in case start position is invisible).
7272 (init_to_row_start): Set it->start to row-start.
7273 (redisplay_window): Accept optional_new_start if start position
7274 is invisible (in which case IT_CHARPOS overshoots PT).
7275 (display_line): Setup row->start from it->start (rather than
7276 it->current which is wrong if first char on line is invisible).
7277 When done, reseat it->start to it->current (= start of next row).
7278 (expose_area): Fix exposure of text area when first char (e.g. TAB)
7279 is only partially visible.
7280
7281 * dispextern.h (struct it): New member start.
7282
854c1a59
SM
72832003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
7284
455316e2
SM
7285 * alloc.c (make_float, Fcons): Clear the markbit at init time.
7286 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
7287 of block_index outside of the macro call.
7288 (Fgarbage_collect): Remove null code.
7289
7290 * m/amdx86-64.h: Don't redefine XPNTR.
7291
854c1a59
SM
7292 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
7293 of VALMASK.
7294
7295 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
7296 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
7297 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
7298
7299 * lisp.h (VALMASK): Only define for non-union type.
7300 (MARKBIT): Remove.
7301 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
7302 (XTYPE): Define unconditionally.
7303 (XSETTYPE): Remove one more remnant.
7304 (EQ): Define differently for the union and non-union cases.
7305 (INTMASK): New bit mask.
7306 (struct Lisp_Marker): Move down to prepare for upcoming patch.
7307 (GC_EQ): Delegate to EQ.
7308
7309 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
7310
a0c6ef2d
JD
73112003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7312
7313 * xterm.c (x_window_to_scroll_bar): Move check of display to
7314 where window_id is compared.
7315
859492c4
KS
73162003-11-17 Kim F. Storm <storm@cua.dk>
7317
7318 * dispextern.h (struct it): New member first_vpos.
7319
7320 * xdisp.c (start_display): Set it->first_vpos.
7321 (try_window_id): Use first_vpos to start display in first _text_
7322 line if no reusable lines at start of window with header line.
7323
810f2256
JD
73242003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7325
7c402969 7326 * w32fns.c (XPutPixel):
854c1a59
SM
7327 * w32bdf.c (w32_init_bdf_font):
7328 * sunfns.c (sel_read):
7329 * process.c (Fmake_network_process):
7330 * frame.c (store_frame_param):
7331 * fontset.c (Fset_fontset_font):
7332 * emacs.c (shut_down_emacs):
a64387ee 7333 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 7334
a32e9bfd
JD
7335 * config.in: Regenerate.
7336
810f2256
JD
7337 * xfns.c (x_window_to_frame, x_any_window_to_frame)
7338 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7339 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
7340 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
7341 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
7342
7343 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
7344
7345 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
7346 (XTmouse_position, handle_one_xevent): Pass Display* to
7347 x_window_to_scroll_bar.
7348 (x_window_to_scroll_bar): Take a Display* argument.
7349 Check that display for frame is equal to Display* argument.
854c1a59 7350 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
7351 x_display_info_for_display instead. Use Display in xev instead
7352 of GDK_DISPLAY.
7353 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 7354 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
7355 (x_connection_closed): Call xg_display_close for GTK.
7356 (x_term_init): Call xg_display_open for additional displays.
7357 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
7358 for GTK.
7359
7360 * xmenu.c (single_menu_item, mouse_position_for_popup)
7361 (x_activate_menubar): Formatting adjustments.
7362
7363 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
7364 adjustments.
7365
7366 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
7367 (xg_display_close, xg_create_default_cursor)
7368 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
7369 handling.
854c1a59
SM
7370 (xg_left_ptr_cursor): Remove.
7371 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
7372 cursor here.
7373 (xg_win_to_widget): Take Display* argument, call
7374 gdk_xid_table_lookup_for_display.
7375 (xg_create_frame_widgets, xg_get_file_name, create_menus)
7376 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
7377 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
7378 in FRAME_X_DISPLAY_INFO.
7379 (xg_get_scroll_id_for_window): Take Display* argument.
7380 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 7381 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256 7382
78819ebb
KS
7383 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
7384 Display* argument.
7385 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
810f2256 7386
0b03cc78
JD
73872003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7388
7389 * xterm.c (x_detect_focus_change): Do not change focus frame for
7390 Enter/LeaveNotify if the current focus frame has explicit focus.
7391
77e688fa
KS
73922003-11-14 Kim F. Storm <storm@cua.dk>
7393
7394 * dispnew.c (update_text_area): Fix redisplay error when hscroll
7395 is active and first glyph is only partially visible.
854c1a59 7396
dd429b03
KH
73972003-11-13 Kenichi Handa <handa@m17n.org>
7398
7399 * xdisp.c (select_frame_for_redisplay): New function.
7400 (redisplay_internal): Record also selected_frame for
7401 unwind_redisplay. Call select_frame_for_redisplay before
7402 redrawing each frame.
7403 (unwind_redisplay): Argument changed to a cons.
7404
6d9266f4
LT
74052003-11-12 Luc Teirlinck <teirllm@auburn.edu>
7406
7407 * fns.c (Fstring_to_multibyte): Doc fix.
7408
80060eb3
KH
74092003-11-11 Kenichi Handa <handa@m17n.org>
7410
7411 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
7412
74305183
JD
74132003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7414
7415 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
7416 program specified positions.
7417
cfda993e
JD
74182003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7419
7420 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
7421
df211069
KH
74222003-11-08 Kenichi Handa <handa@m17n.org>
7423
7424 * Makefile.in (lisp): Add kannada.el.
7425 (shortlisp): Likewise.
7426
4307d534
KH
74272003-11-07 Kenichi Handa <handa@m17n.org>
7428
854c1a59
SM
7429 * coding.c (coding_allocate_composition_data):
7430 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
7431 (coding_restore_composition): Detect invalid composition data.
7432 Give Fstring and Fvector a Lispy integer, not C int.
7433
854c1a59
SM
74342003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
7435
7436 * floatfns.c (Flogb): Don't use VALMASK.
7437
7438 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
7439 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
7440
7441 * lisp.h (XINT): Move the cast to clarify what is going on.
7442 (GCTYPEMASK, XSETTYPE): Remove.
7443 (XGCTYPE): Make it an alias of XTYPE.
7444
d04103a1
JD
74452003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7446
7447 * xterm.c (x_term_init): Fix formatting.
7448
da18b5ac
JD
74492003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7450
78819ebb
KS
7451 * gtkutil.h (xg_have_tear_offs): Declare.
7452 (xg_keep_popup, xg_did_tearoff): Remove.
da18b5ac
JD
7453
7454 * gtkutil.c: Remove variable xg_did_tearoff.
7455 (xg_have_tear_offs): New function.
7456 (tearoff_remove): Just decrease xg_detached_menus.
7457 (tearoff_activate): Increase xg_detached_menus and call
7458 tearoff_remove when tearoff is removed.
854c1a59 7459 (xg_keep_popup): Remove function.
da18b5ac
JD
7460 (create_menus): Give add_tearoff_p as argument to recursive
7461 call to create_menus.
7462 (xg_create_widget): Use variables instead of multiple
7463 strcmp. Tell create_menus to create tear off only for
7464 menu bar menus.
7465 (xg_update_menubar): Change title for a detached menu also.
7466 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
7467 of deep_p.
7468 (xg_initialize): Initialize xg_detached_menus, remove
7469 initialization of xg_did_tearoff.
7470
7471 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
7472 xg_have_tear_offs returns non-zero.
7473 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
7474 call to xg_keep_popup.
7475
64d4923e
AC
74762003-11-01 Andrew Choi <akochoi@shaw.ca>
7477
7478 * macterm.c (XTread_socket): Handle menubar selection and grow
7479 window only for mouseDown events.
854c1a59 7480
6cc8bc07
JD
74812003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7482
7483 * xterm.c (x_term_init): For GTK part, increase x_initialized
7484 to check for more than one display. Use error instead of return 0.
7485
043131c4
AC
74862003-10-31 Andrew Choi <akochoi@shaw.ca>
7487
854c1a59 7488 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
7489 (copy_dysymtab): Call it.
7490
bdda99a1
LT
74912003-10-31 Luc Teirlinck <teirllm@auburn.edu>
7492
7493 * eval.c (Fdefvaralias): Doc fix.
7494
800f42ff 74952003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
7496
7497 * data.c (Fsetplist): Doc fix.
7498
ef35b389
LK
74992003-10-14 Lute Kamstra <lute@gnu.org>
7500
7501 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 7502
ef35b389 75032003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 7504
07107abc
KS
7505 * window.c (Fset_window_margins): Simplify arg checking.
7506
f7005886
RS
75072003-10-13 Richard M. Stallman <rms@gnu.org>
7508
7509 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
7510 (print_partial_compiled_pattern): Replace assert with a printout.
7511 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
7512
7513 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
7514
7515 * window.c (Fset_window_margins): Allow only integers as args.
7516 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
7517 Doc fixes.
7518
9c0c2af5
LK
75192003-10-13 Lute Kamstra <lute@gnu.org>
7520
7521 * window.c (Fset_window_fringes): Elaborate docstring.
7522
3f080e4e
AC
75232003-10-12 Andrew Choi <akochoi@shaw.ca>
7524
854c1a59 7525 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 7526
3f080e4e
AC
7527 * s/darwin.h (GC_MARK_STACK): Define.
7528
0aa513ed
JD
75292003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7530
7531 * window.c (shrink_windows): New function.
7532 (size_window): Call shrink_windows to calculate window sizes when
7533 shrinking frame with more than one window.
7534
6aa8858a
KS
75352003-10-12 Kim F. Storm <storm@cua.dk>
7536
7537 * xdisp.c (compute_fringe_widths): Doc fix.
7538
c2164d91
KH
75392003-10-08 Kenichi Handa <handa@m17n.org>
7540
854c1a59 7541 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 7542
f82ac129
KH
75432003-10-07 Kenichi Handa <handa@m17n.org>
7544
7545 * coding.c (Qcoding_system_define_form): New variable.
7546 (syms_of_coding): Intern and staticpro it.
7547 (Fcheck_coding_system): Try to autoload the definition of
7548 CODING-SYSTEM.
7549
9296c947
LT
75502003-10-05 Luc Teirlinck <teirllm@auburn.edu>
7551
7552 * fns.c (Frequire): Doc fix.
7553
c1f0671a
JD
75542003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7555
3d8c3826
JD
7556 * xfns.c (Fx_send_client_event): New function as a base for
7557 manipulating extended window manager hints.
6dc15d98 7558 (Fx_send_client_event): Remove unused variable s.
3d8c3826 7559
068ae0fd
JD
7560 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
7561 that function is removed.
7562
7563 * xterm.c (x_set_offset): Use move_offset_left/top instead of
7564 x/y_pixels_outer_diff.
7565 (x_check_expected_move): Calculate move_offset_left/top.
7566
7567 * xterm.h (struct x_output): New members: move_offset_top/left.
7568
854c1a59 7569 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
7570 call x_set_offset directly.
7571
7572 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
7573
96f09305
JD
7574 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
7575
7576 * xterm.c (x_delete_display): Free font names and font_encoder
7577 in dpyinfo->font_table.
7578
854c1a59
SM
7579 * xfns.c (Fx_close_connection): Only call XFreeFont here.
7580 Move xfree of font names to x_delete_display.
96f09305 7581
c1f0671a
JD
7582 * xterm.h (struct x_display_info): New member, wm_type.
7583 (struct x_output): New members, expected_top/left and
7584 check_expected_move.
7585
7586 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
7587 is received.
854c1a59
SM
7588 (handle_one_xevent): Rename x_check_expected_move from
7589 x_check_fullscreen_move.
c1f0671a
JD
7590 (x_set_offset): Only add WM decoration sizes to modified_top/left
7591 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 7592 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
7593 Removed fullscreen specific code. Use check_expected_move,
7594 expected_left/top instead. Also, set wm_type.
7595 (x_term_init): Initialize wm_type to unknown.
7596
7597 * frame.c (x_fullscreen_move): Remove addition of WM decoration
7598 sizes to move_x/y.
7599
be2fdba9
KH
76002003-10-03 Kenichi Handa <handa@m17n.org>
7601
7602 * macterm.c (x_load_font): Clear all members of FONTP before start
7603 filling them.
7604
76052003-10-02 Kenichi Handa <handa@m17n.org>
7606
7607 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
7608 before calling find_ccl_program_func. Call find_ccl_program_func
7609 only when fontp->font_encoder is not NULL.
7610
7611 * xterm.c (x_load_font): Clear all members of FONTP before start
7612 filling them.
7613
26a6e439
JPW
76142003-10-03 John Paul Wallington <jpw@gnu.org>
7615
7616 * keymap.c (map_keymap): Don't abort when binding is a vector.
7617
0d4c2dc2
JR
76182003-10-02 Jason Rumney <jasonr@gnu.org>
7619
854c1a59
SM
7620 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
7621 Sync dependencies with Makefile.in.
a63cf46f
JR
7622 (alloca.o): Remove.
7623
0d4c2dc2
JR
7624 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
7625 filling them.
7626
7627 * w32bdf.c (w32_load_bdf_font): Likewise.
7628
ab8f7d5c
RS
76292003-09-30 Richard M. Stallman <rms@gnu.org>
7630
7631 * term.c (set_tty_color_mode): Calculate current_mode_spec
7632 regardless of value of VAL.
7633
854c1a59 7634 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
7635 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
7636 Handle over_used when splitting UNDER.
7637
a64387ee 76382003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
7639
7640 * regex.c (regex_compile): Free the stack when returning from function.
7641
3413f972
KH
76422003-09-28 Kenichi Handa <handa@m17n.org>
7643
7644 * fontset.c (Finternal_char_font): Change return value to
7645 cons (FONT-NAME . GLYPH-CODE).
7646
a6eeaa81 76472003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
7648
7649 * term.c (tty_setup_colors): Treat any negative argument as -1.
7650
f98ddc99
KH
76512003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
7652
7653 * process.c (send_process): Delete unused temp_buf.
7654
66c8f1a8
DL
76552003-09-26 Dave Love <fx@gnu.org>
7656
7657 * xterm.c (x_bitmap_mask): Declare.
7658
ca716c26
DL
76592003-09-25 Dave Love <fx@gnu.org>
7660
7661 * Makefile.in (fns.o): Depend on md5.h.
7662
fbe57420
KS
76632003-09-25 Kim F. Storm <storm@cua.dk>
7664
7665 * window.c (set_window_buffer): Fix redisplay problems when
7666 switching between buffers with different display margin widths.
7667
ef6ae4ff
KS
76682003-09-23 Kim F. Storm <storm@cua.dk>
7669
7670 * process.c (set_socket_option): Fix :bindtodevice option.
7671 (Fset_network_process_option): Update process contact list when
7672 setting option succeeds.
7673 (Fmake_network_process): Doc fix.
7674
68e03c1c
DL
76752003-09-23 Dave Love <fx@gnu.org>
7676
7146d1c1 7677 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 7678
a6eeaa81 76792003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
7680
7681 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
7682 color mode is an integer number (it could be -1).
7683
8fe7d8c8
RS
76842003-09-22 Richard M. Stallman <rms@gnu.org>
7685
7686 * intervals.c (graft_intervals_into_buffer): Correct the main loop
7687 in the case where OVER is longer than UNDER.
7688
2f71b5ea
MY
76892003-09-22 Masatake YAMATO <jet@gyve.org>
7690
7146d1c1 7691 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 7692 `vertical_type'.
7146d1c1 7693
0c4da023
KS
76942003-09-21 Kim F. Storm <storm@cua.dk>
7695
7696 * frame.c (Vdefault_frame_scroll_bars): New variable.
7697 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
7698 (syms_of_frame): DEFVAR_LISP it, and initialize according to
7699 window-system default scroll bar position.
7700
b648413b
KS
7701 * window.c (Fwindow_scroll_bars): Doc fix.
7702
8f5b9e34
JD
77032003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7704
854c1a59 7705 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 7706
b0f23edf
RS
77072003-09-19 Richard M. Stallman <rms@gnu.org>
7708
7709 * atimer.h: Don't include lisp.h.
7710 (P_): Define it here (as well as elsewhere).
7711
7712 * print.c (Fprin1_to_string): Move the PRINTPREPARE
7713 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
7714
7715 * data.c (Fvariable_binding_locus): New function.
7716 (syms_of_data): defsubr it.
7717 (Flocal_variable_p): Delete duplicate call to indirect_variable.
7718
e1283999
DL
77192003-09-18 Dave Love <fx@gnu.org>
7720
ad5f3636
DL
7721 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
7722
e1283999
DL
7723 * process.c (Fnetwork_interface_info): Fix type error.
7724 (Fnetwork_interface_list): Doc fix.
7725 (read_process_output, read_process_output): Delete unused var.
7726
b8c7fd71
KS
77272003-09-17 Kim F. Storm <storm@cua.dk>
7728
7729 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
7730 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
7731 (Fnetwork_interface_info): Check that ifreq struct has required
7732 fields before accessing them; this requires that those fields are
7733 defined as macros, which may be too restrictive on some platforms,
7734 but it is better than failing on other platforms.
7735 (syms_of_process): Only defsubr above fns when included.
7736
11e0a411
DL
77372003-09-17 Dave Love <fx@gnu.org>
7738
7739 * unexalpha.c: Don't include varargs.h.
7740
e9c50801
KS
77412003-09-17 Kim F. Storm <storm@cua.dk>
7742
7743 * process.c (Fset_process_sentinel): Add sentinel to childp plist
7744 for network process.
7745 (socket_options): Add `:' prefix to option names. Add optbit field.
7746 (set_socket_option): Remove no_error arg and special handling of s < 0.
7747 Return 1<<optbit for known option, 0 for unknown.
7748 Do not interpret 0 as false for boolean option (only nil).
7749 Pass failed option and value to report_file_error.
7146d1c1 7750 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
7751 (Fset_network_process_option): New function to set just one option.
7752 (Fmake_network_process): Allow :coding arg to be a cons.
7753 Allow :server arg to be an integer specifying backlog size.
7754 Remove :options arg, and allow options to be specified directly
7755 as :KEY, VALUE pairs. Parse these options before binding socket.
7756 As before, :reuseaddr t is default for a server process, but this
7757 can now be disabled by specifying :reuseaddr nil.
7758 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
7759 (init_process): Availability of network options is now checked with
7760 simpler syntax (featurep 'make-network-process :OPTION); use loop to
7761 setup features.
7762 (syms_of_process): Fix defsubr's for the replaced functions.
7763
a0fc3644
DL
77642003-09-16 Dave Love <fx@gnu.org>
7765
7766 * Makefile.in: Depend on coding.h.
7767
6df2a645
KS
77682003-09-14 Kim F. Storm <storm@cua.dk>
7769
7770 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
7771 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
7772 (syms_of_process): Defsubr them.
7773
7774 * config.in: Regenerate.
7146d1c1
SM
7775
77762003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
7777
7778 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
7779 * m/news-r6.h (XUNMARK): Remove.
7780 * m/mips.h (XUNMARK): Remove.
7781 * m/mips-siemens.h (XUNMARK): Remove.
7782 * m/iris4d.h (XUNMARK): Remove.
7783 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
7784
0930c1a1
SM
77852003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
7786
31003b9e
SM
7787 * lisp.h (VALBITS): Don't remove 1 for the markbit.
7788 (union Lisp_Object): Use unsigned int for types. Remove markbit.
7789 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
7790 (XTYPE): Use unsigned right-shift.
7791 (XMARKBIT, XMARK, XUNMARK): Remove.
7792
0930c1a1
SM
7793 * alloc.c (init_intervals, init_symbol, init_marker):
7794 Don't preallocate anything.
7795 (Fgarbage_collect, mark_object): Ignore the markbit.
7796
7797 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
7798
19bb0fcd 77992003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
7800
7801 * xdisp.c (pint2hrstr): New function.
7802 (decode_mode_spec): Add `%i' and `%I' specs.
7803 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
7804 for `mode-line-format'.
7805
03bb6a06
AS
78062003-09-07 Andreas Schwab <schwab@suse.de>
7807
7808 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
7809 avoid warning.
7810
a6eeaa81 78112003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 7812
0930c1a1 7813 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 7814
ed159bbf
KS
78152003-09-03 Kim F. Storm <storm@cua.dk>
7816
7817 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
7818 change (superseded by 2002-08-30 change); the default blink-off
7819 cursor is now again "no cursor".
7820
fe64a394
JR
78212003-09-01 Jason Rumney <jasonr@gnu.org>
7822
7823 * makefile.w32-in (alloca.o): Remove.
7824 (coding.o): Depend on intervals.h
7825 (emacs.o, bytecode.o): Depend on window.h
7826
c0175e24
DL
78272003-09-01 Dave Love <fx@gnu.org>
7828
7829 * Makefile.in (alloca.o): Remove commands.
7830 (coding.o): Depend on intervals.h composite.h window.h.
7831 (emacs.o): Depend on window.h keyboard.h keymap.h.
7832 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
7833 (bytecode.o): Depend on window.h.
7834
a24d4cb2
JR
78352003-08-31 Jason Rumney <jasonr@gnu.org>
7836
4bc2315e
JR
7837 * w32term.c (w32_per_char_metric): Allow cached metrics to be
7838 returned even when font_type is unknown.
7839
a24d4cb2
JR
7840 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
7841
9d35adc7
JD
78422003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7843
7844 * xterm.c (x_term_init): Initialize new fields in x_display_info.
7845
7846 * xterm.h (struct x_display_info): Add red/green/blue_bits and
7847 *_offset.
7848
7849 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
7850 calculate pixel value.
7851
6f68b035
GM
78522003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
7853
0930c1a1
SM
7854 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
7855 Don't tell redisplay display is accurate when it's actually been
7856 paused for pending input.
6f68b035 7857
4828b4d7
RS
78582003-08-29 Richard M. Stallman <rms@gnu.org>
7859
7860 * dispnew.c (adjust_glyph_matrix): Call window_box
7861 whenever W is nonzero.
7862
7863 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
7864 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 7865 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
7866 Use indirect_variable to trace thru variable aliases.
7867
7868 * config.in: Updated.
7869
7870 * callint.c (Fcall_interactively): Save and restore
7871 Vthis_command, Vthis_original_command, real_this_command,
7872 and current_kboard->Vlast_command.
7873
7874 * abbrev.c (Fexpand_abbrev): Insert before deleting.
7875
e019878d
GM
78762003-08-29 Gerd Moellmann <gerd@gnu.org>
7877
7878 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
7879
85478bc6
KH
78802003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
7881
0930c1a1 7882 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
7883 (decode_coding_sjis_big5): Likewise.
7884
07ce82d3
JR
78852003-08-27 Jason Rumney <jasonr@gnu.org>
7886
d3703de3
JR
7887 * w32.c (sys_pipe): Protect against file descriptor overflow.
7888
ee4a01d1
JR
7889 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
7890
07ce82d3
JR
7891 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
7892
a64387ee 78932003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
7894
7895 * xfns.c (Vgtk_version_string): New variable.
7896 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
7897
a6eeaa81 78982003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 7899
0930c1a1 7900 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 7901
5459e42a
EZ
7902 * Makefile.in (msdos.o): Depend on intervals.h.
7903
0930c1a1 7904 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 7905
231d6cfb
JD
79062003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7907
7908 * xterm.h (struct x_display_info): New fields: client_leader_window
7909 and Xatom_wm_client_leader.
7910
7911 * xterm.c (x_initialize): Move call to x_session_initialize to ...
7912 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
7913
7914 * xsmfns.c (create_client_leader_window): New function.
7915 (x_session_initialize): Call create_client_leader_window, take
7916 dpyinfo as argument.
7917
7918 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
7919
7920 * Makefile.in (xsmfns.o): Add more depenedencies.
7921
afa88464
DL
79222003-08-21 Dave Love <fx@gnu.org>
7923
7924 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
7925
f730033e
KH
79262003-08-21 Kenichi Handa <handa@m17n.org>
7927
7928 * term.c (term_init): Fix previous change; don't rely on the
7929 length of `buffer' if TERMINFO is defined.
7930
6dca786c
DL
79312003-08-20 Dave Love <fx@gnu.org>
7932
7933 * atimer.h: Include lisp.h.
7934
7935 * lisp.h (EMACS_LISP_H): New.
7936 (popup_activated_flag): Don't declare.
7937
7938 * alloca.c: Some merging with gnulib. Change logic and doc
7939 concerning (x)malloc/(x)free -- no longer Emacs-specific.
7940 [DO_BLOCK_INPUT]: Don't include lisp.h.
7941 (xmalloc, xfree): Declare.
7942 (malloc): Don't declare.
7943
0930c1a1 7944 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
7945 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
7946 atimer.h, blockinput.h.
7947
7948 * alloc.c (lisp_align_malloc): Change type of `aligned'.
7949
78819ebb 7950 * alloca.s: Remove.
6dca786c 7951
3a06a6d9
RS
79522003-08-19 Gerd Moellmann <gerd@gnu.org>
7953
7954 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
7955 use -lncurses.
7956
7957 * term.c (term_init): Use a buffer of size 4096 for tgetent since
7958 FreeBSD returns something longer than 2044. Abort if the end of
7959 the buffer is overwritten.
7960
27eeee55
MB
79612003-08-19 Miles Bader <miles@gnu.org>
7962
7963 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
7964
2f297815
GM
79652003-08-19 Gerd Moellmann <gerd@gnu.org>
7966
f4446bbf
GM
7967 * alloc.c (lisp_align_malloc): Check for memory full when
7968 allocating ablocks, which also avoids freeing a pointer into an
7969 ablocks structure.
7970
7971 * puresize.h (BASE_PURESIZE): Increase to 1100000.
7972
0930c1a1 7973 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 7974
0e7d7aae
RS
79752003-08-16 Richard M. Stallman <rms@gnu.org>
7976
7977 * editfns.c (Fencode_time): Doc fix.
7978
79792003-08-16 David Ponce <david@dponce.com>
7980
7981 * fileio.c (Fwrite_region): Fix conditional expression to issue
7982 the right message.
7983
b6189c3b 79842003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
7985
7986 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 7987 Set default value to 1.
0e7d7aae 7988
5d551295
KH
79892003-08-15 Kenichi Handa <handa@m17n.org>
7990
7991 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
7992 what autoscaled.
7993 (best_matching_font): Once we find a better scalable font, set
7994 non_scalable_has_exact_height_p to 1.
7995 (try_font_list): Call try_alternative_families to try any family
7996 with the given registry.
7997
1661e56b
AS
79982003-08-09 Andreas Schwab <schwab@suse.de>
7999
f29181dc
AS
8000 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
8001
1661e56b
AS
8002 * print.c (print_string): Fix printing of multibyte string with
8003 nontrivial printcharfun.
8004
465aa50a
JD
80052003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8006
8007 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
8008
8009 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
8010
e430e5ba
KH
80112003-07-31 Kenichi Handa <handa@m17n.org>
8012
8013 * process.c (read_process_output): Return the actually read bytes
8014 instead of the result of decoding.
8015
97e7188e
KH
80162003-07-31 Kenichi Handa <handa@m17n.org>
8017
8018 * xterm.h (struct x_bitmap_record): New member have_mask.
8019
8020 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
8021 to 0.
8022 (x_create_bitmap_from_file): Likewise.
8023 (x_destroy_bitmap): Check have_mask member before freeing a mask.
8024 (x_destroy_all_bitmaps): Likewise.
8025 (x_create_bitmap_mask): Set have_mask member to 1.
8026
b53094d6
RS
80272003-07-30 Richard M. Stallman <rms@gnu.org>
8028
8029 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
8030
631f2082
JD
80312003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8032
8033 * gtkutil.c (xg_mark_data): Update calls to mark_object.
8034
c855f2ca
RS
80352003-07-29 Richard M. Stallman <rms@gnu.org>
8036
8037 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
8038 Conditionalize XIM code on HAVE_XIM.
8039
8040 * fns.c (Fclear_string): New function.
8041 (syms_of_fns): defsubr it.
8042
b6189c3b 80432003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 8044
0930c1a1 8045 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 8046
29ea8ae9
SM
80472003-07-22 Stefan Monnier <monnier@cs.yale.edu>
8048
8049 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
8050
8051 * buffer.c (delete_all_overlays): New function.
8052 * buffer.h (delete_all_overlays): Declare.
8053 * coding.c (run_pre_post_conversion_on_str):
8054 * print.c (temp_output_buffer_setup):
8055 * fileio.c (Finsert_file_contents):
8056 * minibuf.c (get_minibuffer): Use it.
8057
1dd7ccf2
AC
80582003-07-22 Andrew Choi <akochoi@shaw.ca>
8059
8060 * unexmacosx.c (unexec_regions_sort_compare):
8061 (unexec_regions_merge): New functions. Sort and merge unexec
8062 regions before dumping them.
8063
f57bd967
DL
80642003-07-22 Dave Love <fx@gnu.org>
8065
8066 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
8067
7cdee936
SM
80682003-07-21 Stefan Monnier <monnier@cs.yale.edu>
8069
8070 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
8071 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
8072 MARKBIT as the gcmarkbit for strings.
8073
e50886d3
RS
80742003-07-21 Richard M. Stallman <rms@gnu.org>
8075
8076 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
8077
29ea8ae9 8078 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
8079 (syms_of_fns): Corresponding change.
8080
8081 * alloc.c (syms_of_alloc): Doc fixes.
8082
80832003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
8084
8085 * s/netbsd.h: Use -Wl syntax.
8086
fdc39b59
RS
80872003-07-17 Richard M. Stallman <rms@gnu.org>
8088
8089 * xterm.c (xim_initialize): Redo 6/24 change.
8090
9c53385f
SM
80912003-07-15 Stefan Monnier <monnier@cs.yale.edu>
8092
8093 * buffer.c (copy_overlays): Use EMACS_INT for positions.
8094 (Fswitch_to_buffer): Don't signal an error when switching to the same
8095 buffer in a dedicated window.
8096
8097 * alloc.c: Use bitmaps for cons, as was done for floats.
8098 (init_float, init_cons): Let the normal code allocate the first block.
8099 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
8100 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
8101 New macros.
8102 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
8103 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
8104 (live_cons_p): Check the pointer is not past the `conses' array.
8105 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
8106 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
8107 (survives_gc_p): Use CONS_MARKED_P and simplify.
8108 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
8109
dde13196
PE
81102003-07-13 Paul Eggert <eggert@twinsun.com>
8111
8112 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
8113 puts it into BSS instead, at least on Solaris 8 and 9.
8114 This is a valid optimization, and it may occur on other platforms,
8115 so Emacs should not assume that initializing a static variable to
8116 zero puts it into data.
8117 * alloc.c (pure, staticvec):
8118 Initialize these arrays to nonzero, so that they're not
8119 put into BSS by that optimization.
8120
a801bc34
SM
81212003-07-13 Stefan Monnier <monnier@cs.yale.edu>
8122
8123 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
8124 (lisp_align_malloc): Use posix_memalign is available.
8125 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
8126 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
8127 for consistency. Update users.
8128
0c8b2afa
RS
81292003-07-13 Richard M. Stallman <rms@gnu.org>
8130
8131 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
8132
668c2ab0
JB
81332003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
8134
8135 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
8136 and use the Gtk+ function gtk_window_icon_from_file if available.
8137
8138 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
8139 handle mask of bitmaps.
8140 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
8141 mask property.
8142 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
8143
8144 * xterm.h (xg_set_icon): New function.
8145
800bebe3
RS
81462003-07-12 Paul Eggert <eggert@twinsun.com>
8147
8148 * unexelf.c (unexec): Consider a section to precede the .bss
8149 section if its addresses overlap that of .bss.
8150
69e38995
RS
81512003-07-12 Richard M. Stallman <rms@gnu.org>
8152
8153 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
8154
8155 * config.in (HAVE_CRTIN): Add #undef.
8156 (INLINE): Really inline only if OPTIMIZE is defined.
8157
8158 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
8159 END_FILES_1.
8160 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 8161 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
8162
8163 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
8164 (TERMINFO): Define.
8165 (LIBS_TERMCAP): Define.
8166 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
8167
8168 * xfns.c: Include libpng/png.h instead of png.h.
8169
f1d0c238
AS
81702003-07-11 Andreas Schwab <schwab@suse.de>
8171
8172 * buffer.c (modify_overlay): Update prototype.
8173 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
8174 Likewise.
8175
5f6bf5fe
SM
81762003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8177
8178 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
8179 (struct interval): Move to intervals.h.
8180 (struct Lisp_Marker): Use EMACS_INT for position info.
8181 (forward_point): Remove prototype of defunct function.
8182 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
8183 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
8184 (syms_of_textprop, set_text_properties): Remove prototypes that are
8185 already in intervals.h.
8186
8187 * intervals.h (struct interval): Move from lisp.h.
8188 Use EMACS_INT for position and size info.
8189
8190 * coding.c: Include intervals.h for Fset_text_properties.
8191
8192 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
8193 position and length information.
8194
2765b457
SM
81952003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8196
8197 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
8198 position and length information.
8199
2410d73a
SM
82002003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8201
8202 Change overlays_after and overlays_before so the overlays themselves
8203 are linked into lists, rather than using cons cells. After all each
8204 Lisp_Misc already occupies 5 words, so we can add a `next' field to
8205 Lisp_Overlay for free and save up one cons cell per overlay (not
8206 to mention one indirection when traversing the list of overlay).
8207
8208 * lisp.h (struct Lisp_Overlay): New field `next'.
8209
8210 * buffer.h (struct buffer): Change overlays_before and overlays_after
8211 from Lisp lists of overlays to pointers to overlays.
8212
8213 * buffer.c (overlay_strings, recenter_overlay_lists):
8214 Fix typo in eassert in last commit.
8215 (unchain_overlay): New function.
8216 (add_overlay_mod_hooklist): Use AREF.
8217 (copy_overlays, reset_buffer, overlays_at, overlays_in)
8218 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
8219 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
8220 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
8221 (report_overlay_modification, evaporate_overlays, init_buffer_once):
8222 Adjust to new type of overlays_(before|after).
8223
8224 * alloc.c (mark_object): Mark the new `next' field of overlays.
8225 (mark_buffer): Manually mark the overlays_(after|before) fields.
8226
8227 * coding.c (run_pre_post_conversion_on_str):
8228 * editfns.c (overlays_around):
8229 * xdisp.c (load_overlay_strings):
8230 * fileio.c (Finsert_file_contents):
8231 * indent.c (current_column):
8232 * insdel.c (signal_before_change, signal_after_change):
8233 * intervals.c (set_point_both):
8234 * print.c (temp_output_buffer_setup): Use new type for
8235 overlays_(before|after).
8236
04812929
SM
82372003-07-08 Stefan Monnier <monnier@cs.yale.edu>
8238
8239 * buffer.c (report_overlay_modification): Don't run hooks while
8240 traversing the list of overlays.
8241
8242 * buffer.h (struct buffer): Use an int for overlay_center.
8243 (overlays_at, evaporate_overlays, recenter_overlay_lists)
8244 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
8245
8246 * buffer.c (reset_buffer, recenter_overlay_lists)
8247 (adjust_overlays_for_insert, adjust_overlays_for_delete)
8248 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
8249 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
8250 (overlays_at, evaporate_overlays, recenter_overlay_lists)
8251 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
8252
8253 * xdisp.c (fast_find_position): Remove unused var.
8254
8255 * cmds.c (Qexpand_abbrev): New sym.
8256 (syms_of_cmds): Initialize it.
8257 (internal_self_insert): Use it to call expand-abbrev.
8258
2e7ecf15
KS
82592003-07-09 Kim F. Storm <storm@cua.dk>
8260
f9711de4 8261 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 8262 was configured with --without-xim.
42f81f64 8263 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 8264
c6de56a0
RS
82652003-07-07 Richard M. Stallman <rms@gnu.org>
8266
8267 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
8268
8269 * alloc.c (Fgarbage_collect): Doc fix.
8270
b6189c3b 82712003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
8272
8273 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
8274
bfe1a3f7
SM
82752003-07-06 Stefan Monnier <monnier@cs.yale.edu>
8276
04812929
SM
8277 * minibuf.c (read_minibuf): UNGCPRO before returning.
8278 (Ftry_completion, Fall_completions): Doc fix.
8279
bfe1a3f7
SM
8280 * alloc.c (live_float_p): Check that p is not past the `floats' array,
8281 now that `floats' is not the last element of the struct any more.
8282
ee79d1aa
JR
82832003-07-06 Jason Rumney <jasonr@gnu.org>
8284
8285 * w32term.h (ClipboardSequence_Proc): New type.
8286
8287 * w32fns.c (clipboard_sequence_fn): New variable.
8288 (globals_of_w32fns): Initialize it.
8289
8290 * w32select.c (last_clipboard_sequence_number): New variable.
8291 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
8292 number if possible.
8293
49723c04
SM
82942003-07-06 Stefan Monnier <monnier@cs.yale.edu>
8295
4698665f
SM
8296 * m/amdx86-64.h (MARKBIT):
8297 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
8298 MARKBIT and ARRAY_MARK_FLAG any more.
8299
8300 * m/hp800.h (XSETMARKBIT):
8301 * m/sr2k.h (XSETMARKBIT):
8302 * lisp.h (XSETMARKBIT): Remove unused macro.
8303
49723c04
SM
8304 * lisp.h (mark_object): Change prototype.
8305
8306 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
8307 (last_marked): Change accordingly.
8308 (mark_interval, mark_maybe_object, mark_maybe_pointer)
8309 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
8310 (mark_buffer): Update calls to mark_object.
8311
8312 * bytecode.c (mark_byte_stack):
8313 * fns.c (sweep_weak_table):
8314 * keyboard.c (mark_kboards): Update calls to mark_object.
8315
1d660eca
JR
83162003-07-06 Jason Rumney <jasonr@gnu.org>
8317
8318 * alloc.c (struct ablock): Only include padding when there is some.
8319
618b5ae4
SM
83202003-07-04 Stefan Monnier <monnier@cs.yale.edu>
8321
8322 * alloc.c (ALIGN): Add casts to simplify usage.
8323 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
8324 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
8325 (struct ablock, struct ablocks): New types.
8326 (free_ablock): New global var.
8327 (lisp_align_malloc, lisp_align_free): New functions.
8328 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
8329 (struct float_block): Reorder and add gcmarkbits.
8330 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
8331 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
8332 (init_float, make_float): Use lisp_align_malloc.
8333 (free_float, live_float_p): Don't use `type' any more.
8334 (make_float): Use FLOAT_UNMARK to access to mark bit.
8335 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
8336 Use FLOAT_MARKED_P to access the mark bit.
8337 (pure_alloc): Simplify use of ALIGN.
8338 (mark_object): Use FLOAT_MARK to access the mark bit.
8339 (gc_sweep): Use new macros to access the float's mark bit.
8340 (init_alloc_once): Init free_ablock.
8341
8342 * lisp.h (struct Lisp_Float): Remove unused field `type'.
8343
3ef06d12
SM
83442003-06-27 Stefan Monnier <monnier@cs.yale.edu>
8345
8346 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
8347 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
8348 (allocate_buffer): Move.
8349 (string_bytes): Don't mask markbit of `size_byte'.
8350 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
8351 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
8352 Use the `size' field of buffers (rather than the `name' field) for
8353 the mark bit, as is done for all other vectorlike objects.
8354 Use the new macros to access the mark bit of vectorlike objects.
8355
e81043aa
RS
83562003-06-26 Richard M. Stallman <rms@gnu.org>
8357
8358 * puresize.h (BASE_PURESIZE): Increment base size.
8359
8360 * xdisp.c (fast_find_position): Enable Gerd's new definition.
8361
8362 * xterm.c (xim_initialize): Undo previous change.
8363
2d0834cc
SM
83642003-06-26 Stefan Monnier <monnier@cs.yale.edu>
8365
8366 * alloc.c (survives_gc_p): Simplify.
8367
8368 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
8369
8370 * window.c (Fset_window_dedicated_p): Simplify.
8371 (display_buffer_1): Don't raise the win from which minibuf was entered.
8372 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
8373 (Fminibuffer_selected_window): Simplify.
8374
8375 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
8376
8377 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
8378 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
8379
8380 * insdel.c (check_markers, adjust_markers_for_delete)
8381 (adjust_markers_for_insert, adjust_markers_for_replace)
8382 (prepare_to_modify_buffer, RESTORE_VALUE):
8383 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
8384 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
8385 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
8386 * alloc.c (Fmake_marker, free_marker, gc_sweep):
8387 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
8388 * editfns.c (save_excursion_restore, transpose_markers):
8389 * window.c (delete_window):
8390 * xdisp.c (message_dolog): Update for new types.
8391
d54ae3d8
JD
83922003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8393
a5f696ac
JD
8394 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
8395 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 8396 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
8397
8398 * frame.c (make_frame): Initialize default_face_done_p.
8399
8400 * frame.h (struct frame): Add default_face_done_p.
8401
d54ae3d8
JD
8402 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
8403 will be defined.
8404
2336fe58
SM
84052003-06-25 Stefan Monnier <monnier@cs.yale.edu>
8406
8407 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
8408 Initialize the new field `gcmarkbit'.
8409 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
8410 (mark_interval_tree): Don't mark the tree separately from the nodes.
8411 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
8412 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
8413 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
8414
8415 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
8416 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
8417 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
8418 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
8419 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
8420
bcea31c2
DL
84212003-06-24 Dave Love <fx@gnu.org>
8422
8423 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
8424
8425 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
8426 from gnulib.
8427
2601f59e
RS
84282003-06-21 Richard M. Stallman <rms@gnu.org>
8429
8430 * fileio.c (Fwrite_region): Alternate messages
8431 for append and partial write.
8432
8433 * keyboard.c (read_key_sequence): When converting upcase fn key to
8434 downcase, update fkey and keytran so `backspace' gets translated.
8435
8436 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
8437
8438 * process.c (wait_reading_process_input): Don't signal SIGIO
8439 in batch mode.
8440
b5d2c621
KH
84412003-06-17 Kenichi Handa <handa@m17n.org>
8442
8443 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
8444 composite.h.
8445
8446 * xselect.c: Don't include charset.h, coding.h, composite.h.
8447 (Qforeign_selection): New variable.
8448 (syms_of_xselect): Intern and static it.
8449 (selection_data_to_lisp_data): Return a unibyte string made from
8450 data with `foreign-selection' text property.
8451
6793bc63
SM
84522003-06-15 Stefan Monnier <monnier@cs.yale.edu>
8453
8454 * termhooks.h (EVENT_INIT): New macro.
8455
8456 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
8457
8458 * alloc.c (mark_kboards): Move to keyboard.c.
8459
8460 * keyboard.c (record_asynch_buffer_change, read_avail_input):
8461 * xterm.c (x_dispatch_event):
8462 * xmenu.c (find_and_call_menu_selection):
8463 * xdisp.c (handle_tool_bar_click):
8464 * w32menu.c (menubar_selection_callback):
8465 * sysdep.c (kbd_input_ast, read_input_waiting):
8466 * msdos.c (dos_rawgetc):
8467 * macterm.c (mac_check_for_quit_char):
8468 * macmenu.c (menubar_selection_callback):
8469 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
8470 data to kbd_buffer_store_event.
8471
b3ea810c
KS
84722003-06-15 Kim F. Storm <storm@cua.dk>
8473
8474 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 8475 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 8476
b8f75eda
KG
84772003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
8478
8479 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
8480
ba92ce48
KH
84812003-06-12 Kenichi Handa <handa@m17n.org>
8482
8483 * fileio.c (Fwrite_region): Save and restore restriction.
8484
b80263be
DL
84852003-06-12 Dave Love <fx@gnu.org>
8486
8487 * alloca.c (alloca): Declare arg as size_t.
8488
6793bc63
SM
8489 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
8490 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 8491
b23c0a83
DL
84922003-06-11 Dave Love <fx@gnu.org>
8493
8494 * search.c (shrink_regexp_cache): Use xrealloc.
8495 (syms_of_search): Use xmalloc.
8496
700e47c2
KS
84972003-06-10 Kim F. Storm <storm@cua.dk>
8498
8499 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
8500 Adjust phys_cursor.x to be relative to window box, rather than
8501 text area before checking -- to ensure cursor is redrawn when
8502 exposing window.
8503 Note: This also fixes a similar (older) bug if display margins
8504 are present.
8505
f11aa0b2
KH
85062003-06-06 Kenichi Handa <handa@m17n.org>
8507
8508 * coding.c (encoding_buffer_size): If coding->type is
8509 coding_type_ccl, double magnification on CRLF encoding.
8510
3d143690
JR
85112003-06-06 Jason Rumney <jasonr@gnu.org>
8512
8513 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
8514 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
8515
8516 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
8517 Mac too.
8518
f16205ca
DL
85192003-06-05 Dave Love <fx@gnu.org>
8520
b23c0a83
DL
8521 * strftime.c: Merge changes from gnulib.
8522
f16205ca
DL
8523 * mktime.c (__mktime_internal): Merge changes from gnulib
8524 involving year 69 and dst2.
8525
8526 Changes to merge with gnulib version and be consistent with the
8527 autoconf test:
8528
6793bc63
SM
8529 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
8530 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
8531 [HAVE_LOCALE_H]: Include locale.h.
8532 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
8533
9b87a0bc
KS
85342003-06-05 Kim F. Storm <storm@cua.dk>
8535
8536 * window.c (coordinates_in_window): Convert X and Y to window
8537 relative coordinates inside mode-line and header-line parts.
8538 Convert X and Y to margin area relative coordinates inside left
8539 and right display margin parts.
8540
5a8a15ec
JR
85412003-06-05 Jason Rumney <jasonr@gnu.org>
8542
8543 * w32fns.c (add_system_logical_colors_to_map): New function.
8544 (Fx_open_connection): Use it.
8545
01ed8ff1
SM
85462003-06-04 Stefan Monnier <monnier@cs.yale.edu>
8547
8548 * process.c (allocate_pty): Revert part of the previous patch.
8549 (Faccept_process_output): Simplify.
8550
b427b65d
JR
85512003-06-04 Jason Rumney <jasonr@gnu.org>
8552
8553 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
8554
8555 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
8556 (lispy_mouse_wheel_names): Remove.
8557 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
8558 Always define drag_and_drop_syms.
8559
8560 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
8561 WHEEL_EVENT events.
8562
914a8c47
SM
85632003-06-03 Stefan Monnier <monnier@cs.yale.edu>
8564
01ed8ff1
SM
8565 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
8566
914a8c47
SM
8567 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
8568
adcb132c
JD
85692003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8570
8571 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
8572 menu item label.
8573
be781fa7
RS
85742003-06-03 Richard M. Stallman <rms@gnu.org>
8575
8576 * window.c (Fwindow_edges): Doc fix.
8577 (Fwindow_pixel_edges, Fwindow_inside_edges)
8578 (Fwindow_inside_pixel_edges): New functions.
8579 (syms_of_window): defsubr them.
8580
8581 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
8582 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
8583
914a8c47
SM
85842003-06-02 Stefan Monnier <monnier@cs.yale.edu>
8585
8586 * dispnew.c (Fsit_for): Don't lie about the number of args.
8587
5b07197a
DL
85882003-06-02 Dave Love <fx@gnu.org>
8589
8590 * callproc.c: Use HAVE_FCNTL_H, not USG5.
8591 (syms_of_callproc) <process-environment>: Doc fix.
8592
8593 * doc.c: Use HAVE_FCNTL_H, not USG5.
8594
8595 * xfaces.c (font_rescale_ratio): Fix for K&R.
8596
8597 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
8598
8599 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
8600
8601 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
8602
8603 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
8604 (xg_create_frame_widgets): Use ENCODE_UTF_8.
8605
d7107586 8606 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
8607
8608 * xmenu.c (ENCODE_MENU_STRING): New.
8609 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
8610 Use it.
8611
8612 * coding.h (ENCODE_UTF_8): New.
8613 (Qutf_8): Declare.
8614
8615 * coding.c (Qutf_8): New.
8616 (syms_of_coding): Intern it.
8617
8618 * fns.c: Doc fixes.
8619
7335b336
KH
86202003-06-02 Kenichi Handa <handa@m17n.org>
8621
8622 * buffer.c (Fset_buffer_multibyte): Fix previous change.
8623
914a8c47
SM
86242003-06-01 Stefan Monnier <monnier@cs.yale.edu>
8625
8626 * lread.c (openp): Make sure STR is a string.
8627
9862c135
JR
86282003-06-01 David Ponce <david@dponce.com>
8629
cab27d04 8630 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
9862c135
JR
8631 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
8632
8633 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
8634 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
8635 (discard_mouse_events): Discard WHEEL_EVENT events too.
8636 (lispy_wheel_names, wheel_syms): New.
8637 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
cab27d04 8638 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
914a8c47 8639 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
8640
8641 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
8642 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
8643 WHEEL_EVENT events.
8644
f984e73e
JPW
86452003-05-31 John Paul Wallington <jpw@gnu.org>
8646
8647 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
8648 timer are in lisp/emacs-lisp.
8649
1efcd78f
KH
86502003-05-31 Kenichi Handa <handa@m17n.org>
8651
458c8af4
KH
8652 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
8653 region when a buffer is changed to unibyte.
8654
1efcd78f
KH
8655 * charset.h (VALID_LEADING_CODE_P): New macro.
8656 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
8657
778e2804
KH
8658 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
8659 is nonzero, accept multibyte form of eight-bit-control chars.
8660 (decode_composition_emacs_mule): Likewise.
8661 (decode_coding_emacs_mule): Likewise.
8662 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
8663 multibyte form of eight-bit-control chars.
8664
8665 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
8666 (Finsert_file_contents): If coding-system-for-read is bound to
8667 Qauto_save_coding, use the coding system emacs-mule with special
8668 setting for recovering a file.
8669 (choose_write_coding_system): On auto saving, use the coding
8670 system emacs-mule with special setting for auto saving.
8671 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
8672
034060e4
KH
86732003-05-30 Kenichi Handa <handa@m17n.org>
8674
8675 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
8676 properly before calling ccl_driver.
8677
778e2804 8678 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4 8679
cab27d04 8680 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
034060e4
KH
8681 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
8682 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
8683
595f5aa5
GM
86842003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
8685
8686 * xfaces.c (realize_default_face): Do not abort if lface is
8687 non-existent - reverts change from 2003-05-19.
8688
103e0180
KH
86892003-05-29 Kenichi Handa <handa@m17n.org>
8690
8691 * coding.c (decode_coding_iso2022): Pay attention to the byte
8692 sequence of CTEXT extended segment, and retain those bytes as is.
8693
86942003-05-28 Kenichi Handa <handa@m17n.org>
8695
cab27d04 8696 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
103e0180
KH
8697 of CODING_REPLACEMENT_CHARACTER.
8698 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
8699 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
8700 check this flag on encoding.
cab27d04
SM
8701 (encode_coding_sjis_big5):
8702 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
8703 (Fset_terminal_coding_system_internal):
8704 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
8705 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
8706
8707 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
103e0180
KH
8708 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
8709 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
8710
ff6a3bfb 87112003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 8712
ff6a3bfb
RS
8713 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
8714
8715 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 8716
1963c428
KS
87172003-05-28 Kim F. Storm <storm@cua.dk>
8718
8719 * xdisp.c (expose_window): Fix error in calculation of
8720 window relative coordinates of area to redisplay.
8721
2b5d4601
JR
87222003-05-27 Jason Rumney <jasonr@gnu.org>
8723
8724 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
8725
1c64a4a2
JB
87262003-05-27 David Ponce <david@dponce.com>
8727
8728 Handle W32 mouse wheel events as mouse click events, like in X.
8729
8730 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
8731 MOUSE_WHEEL_EVENT anymore.
8732
8733 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
8734 Scrolling down/up the mouse wheel is respectively mapped to mouse
8735 button 4 and 5.
8736 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
8737 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
8738 WM_MOUSEWHEEL events.
8739
2d031b89
AS
87402003-05-27 Andreas Schwab <schwab@suse.de>
8741
20464fdf
AS
8742 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
8743
2d031b89
AS
8744 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
8745 partially visible line.
8746
8747 * alloc.c (Fgarbage_collect): Fix last change.
8748
97bc76d4
JPW
87492003-05-26 John Paul Wallington <jpw@gnu.org>
8750
8751 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
8752
56613f06
SM
87532003-05-25 Stefan Monnier <monnier@cs.yale.edu>
8754
8755 * window.c (Fset_window_buffer): Add type of `keep_margins'.
8756 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
8757
8758 * window.h (window_box_text_cols): Declare.
8759
8760 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
8761 (x_draw_vertical_border): Remove unused var `f'.
8762
8763 * xfaces.c (build_scalable_font_name): Remove `unused var
8764 pixel_size' warning.
8765
8766 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
8767
8768 * unexelf.c (unexec): Remove `unused var n' warning.
8769
8770 * strftime.c (my_strftime_localtime_r): Remove `defined but
8771 unused' warning.
8772
8773 * process.c (allocate_pty): Remove `unused var stb' and
8774 `cp might be used uninitialized' warnings.
8775
8776 * dispnew.c (mode_line_string): Remove unused var `f'.
8777
8778 * coding.c (find_safe_codings): Remove unused var `i'.
8779
8780 * bytecode.c (Fbyte_code): Remove `unused val' warning.
8781
8782 * buffer.c (Fkill_buffer): Remove unused var `list'.
8783
8784 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
8785
93421a1f
JD
87862003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8787
8788 * frame.c (make_frame): Condition want_fullscreen with
8789 HAVE_WINDOW_SYSTEM.
8790
c4b8aebc
JB
87912003-05-25 Juanma Barranquero <lektu@terra.es>
8792
8793 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
8794 (Fwindow_scroll_bars): Fix typo in docstring.
8795
0416870b
KS
87962003-05-24 Kim F. Storm <storm@cua.dk>
8797
8798 The following changes serve several purposes:
8799
8800 1) Swap the position of fringes and display margins in windows, i.e.
8801 the fringes are now displayed between the margins and the text area
8802 (by default).
8803
8804 2) Allow fringe and scroll bar parameters to be set per-buffer and
8805 per-window (like display margins). Such settings are now stored
8806 in window configurations, preserved when frames are resized, and
9018a88e 8807 copied when windows are split vertically or horizontally.
0416870b
KS
8808 Several bugs related to display margins have been fixed.
8809
8810 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 8811
0416870b
KS
8812 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
8813 rather than FRAME_WIDTH (FRAME_FONT (f)).
8814
8815 5) Introduce a consistent naming of variables, members and macros
8816 depending on whether their value is measured in pixels or in
8817 canonical columns/lines. Pixel dimensions are named *_width and
8818 *_height, while canonical columns/lines are named *_cols and
8819 *_lines. Pixel positions are named *_x and *_y, while column/line
8820 positions are named *_col and *_line.
8821
8822 6) Consolidate more of the X, W32, and MAC gui code by moving
8823 common data into struct frame, and generalize it for the non-gui
8824 case by using suitable defaults.
8825
8826 7) Cleanup and consolidate the macros controlling frame and window
8827 layout into frame.h and window.h, and generalize the use of the
8828 various window_box_* functions (enhanced to handle the new fringe
8829 position and the per-window fringe and scroll bar settings).
8830
8831 * frame.h (struct frame): Rename members height to text_lines,
8832 width to text_cols, window_height to total_lines, window_width to
8833 total_cols, new_height to new_text_lines, new_width to
8834 new_text_cols. All uses changed.
8835 (struct frame): New members which consolidate common members of
8836 x_output, w32_output, and mac_output structures: left_pos,
8837 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
8838 win_gravity, size_hint_flags, border_width, internal_border_width,
8839 line_height, fringe_cols, left_fringe_width, right_fringe_width,
8840 want_fullscreen. All uses changed.
8841 (struct frame): New member column_width contaning the canonical
8842 column width, analogue to line_height. All uses changed.
8843 (struct frame): Rename members scroll_bar_pixel_width to
8844 config_scroll_bar_width, and scroll_bar_cols to
8845 config_scroll_bar_cols. All uses changed.
8846 (struct frame): New member scroll_bar_actual_width which
8847 consolidates and renames the vertical_scroll_bar_extra member of
8848 x_output, w32_output, and mac_output structures. All uses changed.
cab27d04 8849 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
0416870b
KS
8850 from x/w32/macterm.h files. All uses changed. Also change code
8851 which referred to f->output_data...->pixel_height.
cab27d04 8852 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
f63fd14e 8853 from x/w32/macterm.h files. All uses changed. Also change code
0416870b 8854 which referred to f->output_data...->pixel_width.
cab27d04 8855 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
0416870b 8856 Also change code which referred to f->height.
cab27d04 8857 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
0416870b
KS
8858 Also change code which referred to f->width.
8859 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
8860 to update new_text_lines and new_text_cols members directly.
cab27d04 8861 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
0416870b 8862 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
cab27d04 8863 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
0416870b
KS
8864 FRAME_SCROLL_BAR_COLS. All uses changed.
8865 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
cab27d04 8866 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
0416870b
KS
8867 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
8868 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
8869 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
cab27d04
SM
8870 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
8871 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
8872 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
0416870b
KS
8873 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
8874 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
cab27d04
SM
8875 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
8876 Unconditionally return line_height member (it now has proper value
8877 also for non-window frames).
8878 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
0416870b
KS
8879 return new column_width member (rather than the default font width).
8880 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
cab27d04 8881 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
0416870b
KS
8882 from x/w32/macterm.h files. Unconditionally return corresponding
8883 member of frame structure (they now have proper values also for
8884 non-window frames).
cab27d04 8885 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
0416870b
KS
8886 Calculate return value from left and right widths.
8887 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
8888 internal_border_width member (has proper value for non-window frame).
cab27d04
SM
8889 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
8890 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
8891 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
8892 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
8893 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
0416870b 8894 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 8895 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
0416870b 8896 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 8897 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
0416870b 8898 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
cab27d04 8899 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
0416870b 8900 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
cab27d04 8901 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
0416870b 8902 consolidated from x/mac/w32term.h.
cab27d04 8903 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
0416870b 8904 consolidated from x/mac/w32term.h.
cab27d04 8905 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
0416870b 8906 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
cab27d04 8907 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
0416870b
KS
8908 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
8909
8910 * window.h (struct window): Rename members left to left_col,
8911 top to top_line, height to total_lines, width to total_cols,
8912 left_margin_width to left_margin_cols, right_margin_width to
8913 right_margin_cols, orig_height to orig_total_lines, orig_top to
8914 orig_top_line. All uses changed.
8915 (struct window): New members left_fringe_width, right_fringe_width,
8916 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
8917 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
8918 New macros primarily used to simplify other macros.
8919 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
8920 referred to XINT (w->width).
8921 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
8922 referred to XINT (w->height).
8923 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
8924 referred to XINT (w->width) * canon_x_unit.
8925 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
8926 referred to XINT (w->height) * canon_y_unit.
8927 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
8928 referred to XINT (w->left).
cab27d04 8929 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
0416870b
KS
8930 all uses and code that referred to XINT (w->left) + XINT (w->width).
8931 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
8932 referred to XINT (w->top).
8933 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
8934 referred to XINT (w->top) + XINT (w->height).
8935 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
8936 referred to XINT (w->left) * canon_x_unit.
8937 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
8938 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
8939 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
8940 referred to XINT (w->top) * canon_y_unit.
8941 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
8942 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
8943 (WINDOW_LEFTMOST_P): New macro.
cab27d04 8944 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
0416870b 8945 All uses changed.
cab27d04 8946 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
0416870b 8947 All uses changed.
cab27d04 8948 (WINDOW_BOX_LEFT_EDGE_X): Rename from
0416870b
KS
8949 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
8950 Do not exclude left fringe width.
cab27d04 8951 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
0416870b
KS
8952 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
8953 Do not exclude fringe widths.
8954 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
8955 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
8956 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
8957 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
8958 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
8959 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
8960 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
8961 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
8962 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
8963 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
8964 New macros. Change code which referenced corresponding
8965 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
8966 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
8967 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
8968 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
8969 allow per-window scroll-bar settings.
8970 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
8971 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
8972 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
8973 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
8974 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
8975 FRAME_SCROLL_BAR_WIDTH.
8976 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 8977 (WINDOW_SCROLL_BAR_AREA_X): New macros.
cab27d04 8978 (WINDOW_HEADER_LINE_HEIGHT): Rename from
0416870b 8979 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
cab27d04 8980 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
0416870b 8981 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
cab27d04 8982 (WINDOW_BOX_TEXT_HEIGHT): Rename from
0416870b
KS
8983 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
8984 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
8985 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
cab27d04
SM
8986 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
8987 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
0416870b 8988 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
cab27d04 8989 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
0416870b
KS
8990 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
8991 (window_from_coordinates): Update prototype.
8992 (Fset_window_buffer): Update EXFUN.
8993 (set_window_buffer): Update prototype.
9018a88e 8994
0416870b 8995 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 8996 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
8997 changed.
8998 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
8999 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
9000 internal_border_width is now set to 0 for non-window frames.
9001 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
9002 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
9003 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
9004 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
9005 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
9006 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
9007 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
9008 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
9009 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 9010 Move to window.h and renamed [see window.h changes].
0416870b
KS
9011 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
9012 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
9013 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
9014 Use WINDOW_TOTAL_LINES.
0416870b
KS
9015 (frame_update_line_height): Remove prototype.
9016
9017 * buffer.h (struct buffer): Rename members measured in columns:
9018 left_margin_width to left_margin_cols, right_margin_width to
9019 right_margin_cols. All uses changed.
9020 New members left_fringe_width, right_fringe_width,
9021 fringes_outside_margins for per-buffer fringe settings.
9022 New members scroll_bar_width and vertical_scroll_bar_type for
9023 per-buffer scroll bar settings.
9024
9025 * buffer.c (init_buffer_once): Set buffer_defaults and
9026 buffer_local_flags for new buffer-local variables
9027 left_fringe_width, right_fringe_width, fringes_outside_margins,
9028 scroll_bar_width, and vertical_scroll_bar_type.
9029 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
9030 default-* variables for them.
9031
9032 * dispnew.c: Make (many) trivial substitutions for renamed and
9033 new macros in dispextern.h, frame.h and window.h.
9034 (mode_line_string): No need to adjust width for mode lines, as it
9035 is already adjusted by the caller.
9036 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 9037
0416870b
KS
9038 * frame.c: Make (many) trivial substitutions for renamed and
9039 new macros in dispextern.h, frame.h and window.h.
9040 (make_frame): Initialize left_fringe_width, right_fringe_width,
9041 fringe_cols, scroll_bar_actual_width, border_width,
9042 internal_border_width, column_width, line_height, x_pixels_diff,
9043 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
9044 members with values suitable for a non-window frames.
9045
9046 * gtkutil.c: Make (many) trivial substitutions for renamed and
9047 new macros in dispextern.h, frame.h and window.h.
9018a88e 9048
0416870b
KS
9049 * indent.c: Make (few) trivial substitutions for renamed and
9050 new macros in dispextern.h, frame.h and window.h.
9051
9052 * keyboard.c: Make (many) trivial substitutions for renamed and
9053 new macros in dispextern.h, frame.h and window.h.
9054 (make_lispy_event): Use window positions returned from
9055 window_from_coordinates when constructing the lisp event for
9056 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
9057 (incorrect) values locally.
9058 (make_lispy_movement): Use window positions returned from
9059 window_from_coordinates when constructing the lisp event, rather
9060 than calculating (incorrect) values locally.
9061
9062 * scroll.c: Make (some) trivial substitutions for renamed and
9063 new macros in dispextern.h, frame.h and window.h.
9064
9065 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
9066 scroll-bars.
9067
9068 * sysdep.c: Make (few) trivial substitutions for renamed and
9069 new macros in dispextern.h, frame.h and window.h.
9070
9071 * term.c: Make (some) trivial substitutions for renamed and
9072 new macros in dispextern.h, frame.h and window.h.
9073
9074 * widget.c: Make (few) trivial substitutions for renamed and
9075 new macros in dispextern.h, frame.h and window.h.
9076
9077 * window.c: Make (many) trivial substitutions for renamed and
9078 new macros in dispextern.h, frame.h and window.h.
9079 (make_window): Initialize new members
9080 left_margin_cols, right_margin_cols, left_fringe_width,
9081 right_fringe_width, fringes_outside_margins, scroll_bar_width,
9082 and vertical_scroll_bar_type.
cab27d04 9083 (coordinates_in_window): Adapt to new fringe/margin positions
9018a88e 9084 and per-window fringes and scroll-bars.
0416870b 9085 Fix bug related to incorrectly adjusting coordinates by
9018a88e 9086 frame's internal_border_width (the effect normally negible since
0416870b
KS
9087 the internal_border_width is typically 0 or 1 pixel, but very
9088 noticeable for an internal_border_width of e.g. 25 pixels).
9089 Upon successful return (other than ON_NOTHING), the coordinates
9090 are now always properly converted to window relative for the
9091 given display element.
9092 (window_from_coordinates): Add new parameters wx and wy to
9093 return the window relative x and y position in the returned
9094 window and part. A null arg means, don't return the position.
9095 All callers changed.
9096 (adjust_window_margins): New function which may reduce the width
9097 of the display margins if a window's text area is too small after
9098 resizing or splitting windows.
9099 (size_window): Fix bug that did not account for display margin
9100 widths when checking the minimum width of a window; use
9101 adjust_window_margins.
9102 (set_window_buffer): Call Fset_window_fringes and
9103 Fset_window_scroll_bars to setup per-window elements.
9104 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
9105 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
9106 (e.g. after splitting a window or resizing the frame).
9107 All callers changed.
0416870b
KS
9108 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
9109 (Fsplit_window): Duplicate original window's display margin,
9110 fringe, and scroll-bar settings; then call Fset_window_buffer with
9111 KEEP_MARGINS non-nil. This fixes a bug which caused a split
9112 window to only preserve the display margins in one of the windows.
c4b8aebc 9113 When splitting horizontally, call adjust_window_margins on both
0416870b 9114 windows to ensure that the text area of the new windows is non too
f9711de4 9115 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
9116 width of the split window was less than the width of the display
9117 margins.
cab27d04 9118 (window_box_text_cols): Rename from window_internal_width.
9018a88e 9119 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
9120 Fix bug that caused vertical separator to be subtracted also on
9121 window frames. Fix another bug that did not reduce the returned
9122 value by the columns used for display margins.
9123 (window_scroll_line_based): Fix bug related to scrolling too much
9124 when display margins are present (implicitly fixed by the fix to
9125 window_box_text_cols).
9126 (scroll_left, scroll_right): Fix bug related to scrolling too far
9127 by default when display margins are present (implicitly fixed by
9128 the fix to window_box_text_cols).
9129 (struct saved_window): Rename members left to left_col, top to
9130 top_line, width to total_cols, height to total_lines, orig_top to
9131 orig_top_line, orig_height to orig_total_lines. All uses changed.
9132 New members left_margin_cols, right_margin_cols,
9133 left_fringe_width, right_fringe_width, fringes_outside_margins,
9134 scroll_bar_width, and vertical_scroll_bar_type for saving
9135 per-window display elements.
9136 (Fset_window_configuration): Restore display margins, fringes,
9137 and scroll bar settings. This fixes a bug which caused display
9138 margins to be discarded when saving and restoring a window
9139 configuration.
9140 (save_window_save): Save display margins, fringes, and scroll bar
9141 settings. This fixes a bug which caused display margins to be
9142 discarded when saving and restoring a window configuration.
9143 (Fset_window_margins): Do nothing if display margins are not
9144 really changed. Otherwise, call adjust_window_margins to ensure
9145 the text area doesn't get too narrow. This fixes a bug which
f9711de4 9146 could cause Emacs to trap if setting display margins wider than
0416870b
KS
9147 the width of the window.
9148 (Fset_window_fringes): New defun to allow user to specifically set
9149 this window's fringe widths and position vs. display margins.
cab27d04 9150 (Fwindow_fringes): New defun to return window's actual fringe settings.
0416870b
KS
9151 (Fset_window_scroll_bars): New defun to allow user to specifically
9152 set this window's scroll bar width and position.
9153 (Fwindow_scroll_bars): New defun to return window's actual scroll
9154 bar settings.
9155 (compare_window_configurations): Also compare display margins,
9156 fringes, and scroll bar settings.
9157 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
9158
9159 * xdisp.c: Make (many) trivial substitutions for renamed and
9160 new macros in dispextern.h, frame.h and window.h.
9161 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 9162 and new fringe vs. display margin position. Note that returned
0416870b
KS
9163 value is no longer guaranteed to be a whole multiple of the frame
9164 column width, since per-window fringes may now be any width.
9165 (window_box_left_offset): New function like window_box_left, but
9166 value is relative to left border of window (rather than frame).
9167 (window_box_right_offset): New function like window_box_right,
9168 but value is relative to left border of window.
9169 (window_box_left): Adapt to per-window fringes and scroll bars,
9170 and new fringe vs. display margin position. Simplify by using
9171 WINDOW_LEFT_EDGE_X and window_box_left_offset.
9172 (window_box): Allow null args for unnecessary return values;
9173 change/simplify relevant callers.
9174 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
9175 and new fringe vs. display margin position.
9176 Use window_box_left_offset and window_box_right_offset
0416870b 9177 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
9178 scroll bars, and new fringe vs. display margin position.
9179 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
9180 (draw_fringe_bitmap): Rework to handle per-window fringes and new
9181 fringe vs. display margin position.
9182 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
9183 (redisplay_window): Adapt to per-window scroll bars.
9184 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
9185 bars, and new fringe vs. display margin position.
9186 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 9187 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
9188 bars, and new fringe vs. display margin position. Fix bug which
9189 increased total width of full_width rows by width of scroll bars
9190 although window's total width already includes that.
9191 (x_fix_overlapping_area): Simplify using window_box_left_offset.
9192 (expose_area): Simplify using window_box_left_offset.
9193 (x_draw_vertical_border): Handle per-window scroll bar settings,
9194 mixing windows with left, right and no scroll bars.
9195
9196 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
9197 where it's used in x_list_fonts (for clarity).
9198 (frame_update_line_height): Remove unused function; functionality
9199 is now done directly when setting the default font in x_set_font.
9200
9201 * xfns.c: Make (many) trivial substitutions for renamed and
9202 new macros in dispextern.h, frame.h and window.h.
9203
9204 * xmenu.c: Make (some) trivial substitutions for renamed and
9205 new macros in dispextern.h, frame.h and window.h.
9206
9207 * xterm.h (struct x_output): Move members left_pos, top_pos,
9208 border_width, pixel_height, pixel_width, line_height,
9209 internal_border_width, vertical_scroll_bar_extra,
9210 left_fringe_width, right_fringe_width, fringe_cols,
9211 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9212 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
9213 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9214 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9215 (PIXEL_WIDTH, PIXEL_HEIGHT)
9216 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9217 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9218 frame.h and renamed [see frame.h changes].
9219 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9220 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9221 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9222 and renamed [see frame.h changes].
9018a88e 9223
0416870b
KS
9224 * xterm.c: Make (several) trivial substitutions for renamed and
9225 new macros in dispextern.h, frame.h and window.h.
cab27d04 9226 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
9227 (scroll_run): Adapt to new fringe position.
9228 (glyph_rect): Use window coordinates returned from
9229 window_from_coordinates rather than frame_to_window_pixel_xy.
9230 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
9231 scroll-bars.
9232 (handle_one_xevent): Simplify a USE_GTK conditional.
9233 (x_clip_to_row): Remove superfluous whole_line_p arg and code
9234 (fringes are now inside margins, i.e. always in the clipping area).
9235 All callers changed.
9236 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9237 directly, then call compute_fringe_widths. Don't call
9238 frame_update_line_height.
9239
9240 * w32term.h (struct w32_output): Move members left_pos, top_pos,
9241 border_width, pixel_height, pixel_width, line_height,
9242 internal_border_width, vertical_scroll_bar_extra,
9243 left_fringe_width, right_fringe_width, fringe_cols,
9244 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9245 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
9246 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9247 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9248 (PIXEL_WIDTH, PIXEL_HEIGHT)
9249 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9250 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9251 frame.h and renamed [see frame.h changes].
9252 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9253 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9254 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9255 and renamed [see frame.h changes].
9018a88e 9256
0416870b
KS
9257 * w32term.c: Make (several) trivial substitutions for renamed and
9258 new macros in dispextern.h, frame.h and window.h.
cab27d04 9259 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
9260 (glyph_rect): Use window coordinates returned from
9261 window_from_coordinates rather than frame_to_window_pixel_xy.
9262 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
9263 scroll-bars.
9264 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
9265 (fringes are now inside margins, i.e. always in the clipping area).
9266 All callers changed.
9267 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9268 directly, then call compute_fringe_widths. Don't call
9269 frame_update_line_height.
9270
9271 * w32console.c: Make (few) trivial substitutions for renamed and
9272 new macros in dispextern.h, frame.h and window.h.
9273
9274 * w32fns.c: Make (many) trivial substitutions for renamed and
9275 new macros in dispextern.h, frame.h and window.h.
9276
9277 * w32menu.c: Make (few) trivial substitutions for renamed and
9278 new macros in dispextern.h, frame.h and window.h.
9279
9280 * macterm.h (struct mac_output): Move members left_pos, top_pos,
9281 border_width, pixel_height, pixel_width, line_height,
9282 internal_border_width, vertical_scroll_bar_extra,
9283 left_fringe_width, right_fringe_width, fringe_cols,
9284 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9285 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
9286 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9287 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9288 (PIXEL_WIDTH, PIXEL_HEIGHT)
9289 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9290 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9291 frame.h and renamed [see frame.h changes].
9292 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9293 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9294 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9295 and renamed [see frame.h changes].
9018a88e 9296
0416870b
KS
9297 * macterm.c: Make (several) trivial substitutions for renamed and
9298 new macros in dispextern.h, frame.h and window.h.
cab27d04 9299 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
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 (x_clip_to_row): Remove superfluous whole_line_p arg and code
9305 (fringes are now inside margins, i.e. always in the clipping area).
9306 All callers changed.
9307 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9308 directly, then call compute_fringe_widths. Don't call
9309 frame_update_line_height.
9310
9311 * macfns.c: Make (several) trivial substitutions for renamed and
9312 new macros in dispextern.h, frame.h and window.h.
9018a88e 9313 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
9314
9315 * macmenu.c: Make (few) trivial substitutions for renamed and
9316 new macros in dispextern.h, frame.h and window.h.
9317
9318 * msdos.h (struct x_output): Remove members left_pos, top_pos,
9319 and line_height, and use corresponding new members in struct
9320 frame. All uses changed.
9321 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
9322 superseeded by corresponding macros in frame.h.
9323
9324 * msdos.c: Make (several) trivial substitutions for renamed and
9325 new macros in dispextern.h, frame.h and window.h.
9326 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 9327 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
9328 (internal_terminal_init): No need to initialize line_height here;
9329 it now defaults to 1.
9330
9018a88e
SM
93312003-05-24 Stefan Monnier <monnier@cs.yale.edu>
9332
9333 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
9334 dropping `down' events.
9335
016bd3c0
AS
93362003-05-24 Andreas Schwab <schwab@suse.de>
9337
9338 * coding.c (find_safe_codings): Fix last change.
9339
4dacadcc
TTN
93402003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
9341
9342 * xfns.c (x_window): Fix typo from 2003-05-21 change.
9343
319830ce
SM
93442003-05-23 Stefan Monnier <monnier@cs.yale.edu>
9345
9018a88e
SM
9346 * xdisp.c (display_mode_element): Increase max depth.
9347 Simplify the error handling code. Use a different error string
9348 for the case where we hit the depth limit.
9349
319830ce
SM
9350 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
9351
9352 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
9353
93542003-05-21 Stefan Monnier <monnier@cs.yale.edu>
9355
9356 * intervals.c (get_local_map): Don't get char-property of previous
9357 point any more: get_pos_property already does it and better.
9358
c67de8ba
DL
93592003-05-21 Dave Love <fx@gnu.org>
9360
9361 [Merged from unicode branch.]
9362
9363 * xfns.c (x_window, x_window): Use use_xim.
9364
9365 * xterm.c (use_xim): Initialize.
9366 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
9367 (x_term_init): Maybe set use_xim.
9368
9369 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
9370
edd3ff1d
JR
93712003-05-21 Jason Rumney <jasonr@gnu.org>
9372
9373 * unexw32.c (_start): Remove _fmode initialization.
9374
9375 * emacs.c (main) [WINDOWSNT]: Move it here.
9376
463f55ee
DL
93772003-05-20 Dave Love <fx@gnu.org>
9378
9379 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
9380
af253914
RS
93812003-05-19 Richard M. Stallman <rms@gnu.org>
9382
9383 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
9384 as value for QCfont attribute.
9385 (realize_default_face): lface should already exist; crash if not.
9386 Specify 0 for FORCE_P when calling set_lface_from_font_name.
9387
9388 * frame.c (Fignore_event): Doc fix.
9389
1d211019
KH
93902003-05-19 Kenichi Handa <handa@m17n.org>
9391
9392 * coding.c (decode_coding_string): Handle post-read-conversion
9393 even if the coding doesn't require decoding.
9394
4dd68254
RS
93952003-05-18 Richard M. Stallman <rms@gnu.org>
9396
9397 * callproc.c (Fcall_process_region): Doc fix.
9398
14d87dc9
SM
93992003-05-17 Stefan Monnier <monnier@cs.yale.edu>
9400
deca5d96
SM
9401 * lread.c (Fload): Print a message if package is obsolete.
9402
14d87dc9
SM
9403 * window.c (Fselect_window): Add optional `norecord' arg.
9404 (select_window_1): Fold into Fselect_window.
9405 (select_window_norecord): New function.
9406 (temp_output_buffer_show): Use it. Preserve current buffer.
9407
9408 * window.h (Fselect_window): Update declaration.
9409
9410 * window.c (delete_window, Fother_window, Fset_window_configuration):
9411 * minibuf.c (read_minibuf):
9412 * macterm.c (x_new_focus_frame):
9413 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
9414 * callint.c (Fcall_interactively):
9415 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
9416
9417 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
9418
78f52183
DK
94192003-05-17 David Kastrup <dak@gnu.org>
9420
9421 * process.c (read_process_output): Back out change from 2003-03-09.
9422
14d87dc9
SM
94232003-05-17 Stefan Monnier <monnier@cs.yale.edu>
9424
9425 * editfns.c (get_pos_property): Don't assume that `object' = nil.
9426
9427 * textprop.c (text_property_stickiness): New arg `buffer'.
9428
9429 * intervals.h (text_property_stickiness): New arg `buffer'.
9430 (get_pos_property): Declare.
9431
9432 * intervals.c (get_local_map): Use get_pos_property, to obey
9433 stickiness and empty overlays.
9434 (create_root_interval, graft_intervals_into_buffer): Use BEG.
9435 (merge_properties, intervals_equal, merge_properties_sticky):
9436 Use XCAR, XCDR.
9437 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
9438
1fd1cc2f
RS
94392003-05-17 Richard M. Stallman <rms@gnu.org>
9440
4f9f637a
RS
9441 * minibuf.c (read_minibuf): If buffer is empty, record the default
9442 in the history.
9443 (Fminibuffer_complete_word): When deleting the overlap, take account
9444 of its real position.
9445
9446 * fns.c (map_char_table): Fix previous change.
9447
1fd1cc2f
RS
9448 * syntax.c (find_defun_start):
9449 When open_paren_in_column_0_is_defun_start,
9450 return beginning of buffer.
9451
9452 * lisp.h (map_char_table): Declare added arg.
9453
9454 * fns.c (map_char_table): New arg TABLE gets the master table.
9455 All calls changed.
9456 Process default and inheritance, resorting to Faref if necessary.
9457
9458 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
9459 (Faccessible_keymaps): Pass new arg to map_char_table.
9460
9461 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
9462
9463 * casetab.c (set_case_table): Pass new arg to map_char_table.
9464
9465 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
9466
9467 * lisp.h (specbinding_func): New typedef.
9468 (struct specbinding): Use specbinding_func, to put the `volatile'
9469 in the right place.
9470
9471 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
9472 to avoid GCC warning.
14d87dc9 9473
b6189c3b 94742003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 9475
14d87dc9 9476 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 9477
35fb885d
SM
94782003-05-15 Stefan Monnier <monnier@cs.yale.edu>
9479
9480 * keyboard.c (apply_modifiers): Don't fill the other cache.
9481
9a274fbd
SM
94822003-05-14 Stefan Monnier <monnier@cs.yale.edu>
9483
c55b5fad
SM
9484 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
9485
9a274fbd
SM
9486 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
9487 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
9488 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
9489 (Fset_window_configuration, Fcurrent_window_configuration)
9490 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
9491 (Fpos_visible_in_window_p, mark_window_cursors_off)
9492 (window_internal_height, window_internal_width, Frecenter)
9493 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
9494 (replace_buffer_in_all_windows, init_window_once, init_window)
9495 (syms_of_window, keys_of_window): Move from lisp.h.
9496 * lisp.h: Move window.c declarations to window.h.
9497
9498 * bytecode.c: Include window.h.
9499 * emacs.c: Include window.h.
9500
14d87dc9 9501 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
9502 (keyremap): Add `parent' field.
9503 (keyremap_step): Use it. Remove `parent' argument.
9504 (read_key_sequence): Setup and use the new `parent' field.
9505
fd93e331
SM
95062003-05-11 Stefan Monnier <monnier@cs.yale.edu>
9507
9508 * keyboard.c (adjust_point_for_property): Ensure termination.
9509
1c4001a1
SM
95102003-05-10 Stefan Monnier <monnier@cs.yale.edu>
9511
9512 * keyboard.c (follow_key): Remove dead variable `did_meta'.
9513 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
9514 duplicated handling of function-key-map and key-translation-map
9515 in read_key_sequence.
9516 (read_key_sequence): Use them.
9517
9518 * keyboard.c (adjust_point_for_property): Try harder to move point
9519 to the non-sticky end of an invisible property.
9520
9521 * xdisp.c (single_display_prop_intangible_p): Make `space' display
9522 property intangible as well.
9523
780379b1
AS
95242003-05-10 Andreas Schwab <schwab@suse.de>
9525
9526 * xmenu.c (single_menu_item): Change last parameter to void* to
9527 avoid warning.
9528
ca2de342
RS
95292003-05-09 Richard M. Stallman <rms@gnu.org>
9530
9531 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
9532 Bind Qinhibit_modification_hooks to t so there will be no GC.
9533 Rename local `tem' to `save_deactivate_mark'.
9534
9535 * eval.c (specpdl_ptr): Declare volatile.
9536 (unbind_to): Copy the whole binding and decrement specpdl_ptr
9537 before doing the work of unbinding it.
9538
9539 * lisp.h (struct specbinding): Declare elements volatile.
9540 (specpdl_ptr): Declare volatile.
9541
9542 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
9543
9544 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
9545 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
9546
347003be
DL
95472003-05-08 Dave Love <fx@gnu.org>
9548
9549 * coding.c (Vlast_coding_system_used): Doc fix.
9550
5adcec23
JR
95512003-05-07 Jason Rumney <jasonr@gnu.org>
9552
9553 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
9554 when system does not support them.
9555
5fe3b8a4
SM
95562003-05-05 Stefan Monnier <monnier@cs.yale.edu>
9557
9558 * fileio.c (Qwrite_region_annotate_functions): New var.
9559 (build_annotations): Use it to process the global part of the hook.
9560 (syms_of_fileio): Init and staticpro it.
9561
9562 * keyboard.c (safe_run_hooks_error): Display a message instead of
9563 silently ignoring the error.
9564
95652003-05-03 Stefan Monnier <monnier@cs.yale.edu>
9566
9567 * keyboard.c (input_available_signal): Mark static.
9568 (menu_bar_items): Use map_keymap.
9569 (menu_bar_one_keymap): Remove.
9570 (menu_bar_item): Adjust arglist (for use in map_keymap).
9571 Properly hide a second binding when not both are keymaps.
9572
9573 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
9574 (single_keymap_panes): Use it and map_keymap.
9575 (single_menu_item): Use skp as well.
9576
9577 * keymap.h (map_keymap_function_t): New type.
9578 (map_keymap): Declare.
9579
9580 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
9581 (map_keymap_call, Fmap_keymap): New functions.
9582 (syms_of_keymap): Defsubr map-keymap.
9583
4b1b4443
JD
95842003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9585
9586 * gtkutil.c (create_dialog, make_widget_for_menu_item)
9587 (make_menu_item, create_menus, xg_update_menu_item): Don't call
9588 ..._with_mnemonic functions for menu items.
9589
1f816871
KH
95902003-05-01 Kenichi Handa <handa@m17n.org>
9591
9592 * coding.c (coding_system_accept_latin_extra_p): Delete this
9593 function.
9594 (find_safe_codings): Pay attention to
9595 the property tranlsation-table-for-encode of each codings.
9596 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
9597
5ed6ba5b
SM
95982003-05-01 Stefan Monnier <monnier@cs.yale.edu>
9599
9600 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
9601
32c06229
SM
96022003-04-30 Stefan Monnier <monnier@cs.yale.edu>
9603
9604 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
9605
9606 * lisp.h (CHECK): Wrap args in parenthesis.
9607 (specbind): Fix doc: symbol = Qnil is not supported any more.
9608
9609 * bytecode.c (Fbyte_code) <unwind-protect>:
9610 Use Fprogn rather than 0 and Qnil.
9611
9612 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
9613 `double', and `triple' modifiers as well.
9614
ed3c3314
RS
96152003-04-30 Richard M. Stallman <rms@gnu.org>
9616
9617 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
9618
9619 * alloc.c (abort_on_gc): New variable.
9620 (Fgarbage_collect): Abort if abort_on_gc is set.
9621
9622 * lisp.h (abort_on_gc): Add decl.
9623
9624 * eval.c (Fsignal): Clear abort_on_gc.
9625
9626 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 9627 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
9628
9629 * xdisp.c (move_it_vertically_backward): Do the final big else
9630 even if nlines is 0.
9631
9632 * xdisp.c (redisplay_internal): Finish the per-frame loop
9633 even if redisplay is suspended by input.
9634
0b325c12
AC
96352003-04-24 Andrew Choi <akochoi@shaw.ca>
9636
9637 * macterm.c (x_list_fonts): Return all fonts that match if
9638 maxnames = -1.
9639
4e837cd0
KH
96402003-04-25 Kenichi Handa <handa@m17n.org>
9641
9642 * syntax.c (skip_chars): Fix previous change.
9643
9af7511a
KH
96442003-04-24 Kenichi Handa <handa@m17n.org>
9645
9646 * syntax.c (skip_chars): Make the code faster by using the common
9647 technique of *p, *stop, and *endp.
9648
e3b2c21f
JD
96492003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9650
9651 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 9652 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
9653 being updated.
9654
32c06229
SM
96552003-04-19 Stefan Monnier <monnier@cs.yale.edu>
9656
9657 * eval.c (Fapply): Undo last change and add a comment about why.
9658
c6464167
MB
96592003-04-18 Miles Bader <miles@gnu.org>
9660
9661 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
9662 pickier PARSE_MULTIBYTE_SEQ.
9663
e509f168
SM
96642003-04-17 Stefan Monnier <monnier@cs.yale.edu>
9665
9666 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
9667 Use XCDR, XCAR, CONSP.
9668 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
9669 (Fapply): Remove unnecessary GCPRO.
9670
9671 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
9672
9673 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
9674
9675 * buffer.h: Don't hardcode BEG==1.
9676
9677 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
9678
5ceea398
RS
96792003-04-16 Richard M. Stallman <rms@gnu.org>
9680
9681 * xdisp.c (try_window, try_window_reusing_current_matrix):
9682 When at end of window, set window_end_pos to Z-ZV.
9683
9684 * buffer.c (Foverlay_recenter): Doc fix.
9685
e509f168
SM
96862003-04-14 Stefan Monnier <monnier@cs.yale.edu>
9687
9688 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
9689
d243e605
AC
96902003-04-14 Andrew Choi <akochoi@shaw.ca>
9691
9692 * macterm.c (mac_check_for_quit_char): Don't check more often than
9693 once a second.
9694
6901b111
SM
96952003-04-11 Stefan Monnier <monnier@cs.yale.edu>
9696
9697 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
9698 specially, so that they can't hide an implicit switch-frame event.
9699 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
9700 (head_table): Use switch-frame as event_kind for select-window.
9701 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
9702
9703 * editfns.c (Fformat): Lisp_Object/int mixup.
9704 (format2): Remove unused var numargs.
9705
e301806f 97062003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 9707
6901b111 9708 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
9709 (Qafter_insert_file_set_coding): New variable.
9710 (syms_of_fileio): Initialize and staticpro it. Delete declaration
9711 for after-insert-file-adjust-coding-function.
9712 (Finsert_file_contents): Call Qafter_insert_file_set_coding
9713 instead of Vafter_insert_file_adjust_coding_function.
9714
38914424
KH
97152003-04-11 Kenichi Handa <handa@m17n.org>
9716
9717 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
9718
9719 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
9720 string. Callers changed.
9721
97222003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 9723
6901b111 9724 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 9725 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
9726 (Finsert_file_contents):
9727 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
9728 decode-format.
9729
f979dc05
JD
97302003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9731
9732 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
9733 get GtkAdjustment as widget now is a GtkRange.
9734
9735 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
9736 GtkRange to avoid memory leak.
9737
f8c6b4c2 97382003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 9739
50ebc53d
KH
9740 * xfaces.c (Vface_font_rescale_alist): New variable.
9741 (struct font_name): New member rescale_ratio.
9742 (font_rescale_ratio): New function.
6901b111 9743 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
9744 (better_font_p): On comparing point sized, pay attention to
9745 recale_ratio member of fonts.
9746 (build_scalable_font_name): Reflect font->rescale_ratio in the
9747 font name.
6901b111 9748 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 9749
cb98871c
KH
9750 * lread.c (read1): Before calling index, check if the 2nd
9751 arguemnt is in ASCII range.
9752
4773b8ca
RS
97532003-04-08 Richard M. Stallman <rms@gnu.org>
9754
b0ada147
RS
9755 * fileio.c (Ffile_symlink_p): Doc fix.
9756
9757 * editfns.c (Fformat): Translate positions of text properties
9758 in the format string to apply them to the result.
9759
4773b8ca
RS
9760 * fileio.c (Finsert_file_contents): Doc fix.
9761 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
9762
97632003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 9764
4773b8ca
RS
9765 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
9766
e8f25745 97672003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 9768
e8f25745
ST
9769 * mac.c (init_mac_osx_environment): Switch libexec and bin so
9770 that self-contained application finds libexec files.
9771
f8c6b4c2 97722003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 9773
6901b111
SM
9774 * coding.c (code_convert_region_unwind):
9775 Set Vlast_coding_system_used to the argument.
2310d84c
KH
9776 (code_convert_region): If post-read-conversion function changed
9777 the value of last-coding-sytem, keep the new value in
9778 coding->symbol so that it won't be overridden.
9779 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
9780 (coding_system_accept_latin_extra_p): New function.
9781 (find_safe_codings): Pay attention to characters registered in
9782 latin-extra-code-table.
2310d84c 9783
39c9a034
TTN
97842003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
9785
9786 * Makefile.in (md5.o): Add missing dependency info.
9787
eb67c5d6
RS
97882003-04-06 Richard M. Stallman <rms@gnu.org>
9789
9790 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
9791
9792 * marker.c (verify_bytepos): New function.
9793
9794 * intervals.c (set_intervals_multibyte_1): When becoming
9795 multibyte, adjust right and left child sizes to a whole set of
9796 characters. If an interval gets zero total-length, delete it.
9797 If an interval consists of just its children, delete one of them.
9798
9799 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
9800 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 9801
eb67c5d6
RS
9802 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
9803 All calls deleted.
9804 (lisp_malloc): Do the work here directly.
9805
b1f81fc5
JB
98062003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
9807
9808 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
9809 char tables.
9810
98112003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
9812
9813 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
9814 destructively change "%S" to "%s".
9815
774666fb
MB
98162003-04-03 Miles Bader <miles@gnu.org>
9817
9818 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
9819 always set.
9820
19c37f01
DL
98212003-04-01 Dave Love <fx@gnu.org>
9822
9823 * xfns.c (xpm_lookup_color): Grok "opaque".
9824
2f4b24c3
AC
98252003-03-31 Andrew Choi <akochoi@shaw.ca>
9826
9827 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
9828 parent window ID.
9829
9830 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
9831
9832 * macterm.h (struct mac_output): Define x_pixels_diff and
9833 y_pixels_diff.
b1f81fc5 9834
9443fcf6
JB
98352003-03-31 Juanma Barranquero <lektu@terra.es>
9836
9837 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
9838 blockinput.h and files included from it.
9839
e072891b
KS
98402003-03-31 Kim F. Storm <storm@cua.dk>
9841
9842 The following changes consolidates the common code related to
9843 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
9844 files into frame.c.
9443fcf6 9845
e072891b
KS
9846 * frame.c: Include blockinput.h.
9847 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
9848 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
9849 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
9850 related vars here.
9851 (struct frame_parm_table, frame_parms): New table for describing
9852 frame parameters and their associated Q-variable.
9853 The order of the parameters corresponds to the sequence of the
9854 frame_parm_handlers table in redisplay_interface.
9855 (x_fullscreen_move, x_set_frame_parameters)
9856 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
9857 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
9858 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9859 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
9860 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
9861 Generic functions for processing of frame parameters.
9862 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
9863 (display_x_get_resource, x_get_resource_string): Functions for
9864 generic access to X resources.
9865 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
9866 (x_default_parameter, Fx_parse_geometry): Functions for generic
9867 access to frame parameters.
6901b111
SM
9868 (x_figure_window_size): Generic calculation of frame size.
9869 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
9870 (syms_of_frame): Intern and staticpro frame parameter variables.
9871 Defvar_lisp Vx_resource_class and Vx_resource_name here.
9872 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 9873
e072891b
KS
9874 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
9875 parameter related vars defined in frame.c.
9876 (EMACS_CLASS): Define here.
9877 (enum FULLSCREEN_*): Define here.
9878 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
9879 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
9880 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
9881 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
9882 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
9883 (x_set_visibility, x_set_autoraise, x_set_autolower)
9884 (x_set_unsplittable, x_set_vertical_scroll_bars)
9885 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
9886 (x_figure_window_size): Add prototypes.
9887
9888 * dispextern.h (frame_parm_handler): New typedef.
9889 (struct redisplay_interface): New member frame_parm_handlers.
9890 (enum resource_types): Move declaration here.
9891 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
9892 (x_default_parameter): Add prototypes.
9893
9894 * window.c: Remove extern decl for frame parameter vars.
9895 (change_window_heights): New generic function;
9896 replaces x_change_window_heights. All users changed.
9897
9898 * window.h (change_window_heights): Add prototype.
9899
9900 * xfaces.c: Remove extern decl for frame parameter vars.
9901
9902 * xterm.h (EMACS_CLASS): Remove. Use generic define.
9903 (struct w32_display_info): Fix type of xrdb member.
9904 (enum FULLSCREEN_*): Remove.
9905 Remove prototypes for generic functions (in frame.h).
9906
9907 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
9908 parameters now defined in frame.h and frame.c.
f63fd14e 9909 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
9910 (enum x_frame_parms): Remove (bogus, unused enum).
9911 (check_x_display_info): Make non-static (for frame.c).
9912 (struct x_frame_parm_table, x_frame_parms): Remove.
9913 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
9914 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
9915 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9916 (x_change_window_heights, x_set_autoraise, x_set_autolower)
9917 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
9918 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
9919 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
9920 Remove. Use generic functions instead.
9921 (enum resource_types): Remove.
9922 (x_set_scroll_bar_default_width): New global function (for frame.c).
9923 (Fx_create_frame): Depend on x_figure_window_size to add space for
9924 toolbar and setup size_hint_flags.
9925 (x_frame_parm_handlers): New table for redisplay_interface.
9926 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 9927
e072891b 9928 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 9929 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
9930 (x_redisplay_interface): Add x_frame_parm_handlers member.
9931
9932 * w32gui.h (XrmDatabase): New (dummy) typedef.
9933
9934 * w32term.h (EMACS_CLASS): Remove. Use generic define.
9935 (struct w32_display_info): Fix type of xrdb member.
9936 (enum FULLSCREEN_*): Remove.
9937 (x_fullscreen_adjust): Remove prototype.
9938
9939 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
9940 parameters now defined in frame.h and frame.c.
f63fd14e 9941 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
9942 (enum x_frame_parms): Remove (bogus, unused enum).
9943 (check_x_display_info): Make non-static (for frame.c).
9944 (struct x_frame_parm_table, x_frame_parms): Remove.
9945 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
9946 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
9947 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9948 (x_change_window_heights, x_set_autoraise, x_set_autolower)
9949 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
9950 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
9951 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
9952 Remove. Use generic functions instead.
9953 (enum resource_types): Remove.
9954 (x_set_scroll_bar_default_width): New global function (for frame.c).
9955 (Fx_create_frame): Depend on x_figure_window_size to add space for
9956 toolbar and setup size_hint_flags.
9957 (w32_frame_parm_handlers): New table for redisplay_interface.
9958 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 9959
e072891b
KS
9960 * w32term.c: Remove unnecessary extern declarations.
9961 (x_fullscreen_adjust): Remove. Use generic instead.
9962 (x_redisplay_interface): Add w32_frame_parm_handlers member.
9963
9964 * w32reg.c (x_get_string_resource): Use XrmDatabase.
9965
9966 * macgui.h (XrmDatabase): New (dummy) typedef.
9967
9968 * macterm.h (EMACS_CLASS): Remove.
9969 (struct mac_display_info): Add xrdb member.
9970 (struct mac_output): Add want_fullscreen member.
9971
9972 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
9973 parameters now defined in frame.h and frame.c.
f63fd14e 9974 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
9975 (check_x_display_info): Make non-static (for frame.c).
9976 (struct x_frame_parm_table, x_frame_parms): Remove.
9977 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
9978 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
9979 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9980 (x_change_window_heights, x_set_autoraise, x_set_autolower)
9981 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
9982 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
9983 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
9984 Remove. Use generic functions instead.
9985 (enum resource_types): Remove.
9986 (x_set_scroll_bar_default_width): New global function (for frame.c).
9987 (mac_frame_parm_handlers): New table for redisplay_interface.
9988 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 9989
e072891b
KS
9990 * macterm.c: Remove unnecessary extern declarations.
9991 (x_redisplay_interface): Add mac_frame_parm_handlers member.
9992
3e6a560b
KS
9993 * Makefile.in (frame.o): Add dependency on blockinput.h and files
9994 included from it (atimer.h and systime.h).
9995
7b7b454e
AS
99962003-03-30 Andreas Schwab <schwab@suse.de>
9997
9998 * xdisp.c (x_insert_glyphs): Fix swapped width and height
9999 parameters for shift_glyphs_for_insert.
10000
10001 * macterm.c (x_redisplay_interface): Add missing entry for
10002 draw_vertical_window_border.
10003
beb402de
KG
100042003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
10005
10006 * fileio.c (Fexpand_file_name): In the no-handler case, after
10007 expanding, look again for a handler and invoke it. This is needed
10008 for filenames like "/foo/../user@host:/bar/../baz" -- the first
10009 expansion produces "/user@host:/bar/../baz" which needs to be
10010 expanded again for the finame result "/user@host:/baz".
10011
b676f356
JD
100122003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10013
10014 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
10015 of area to be redrawn for better performance.
10016
3c671a56
SM
100172003-03-28 Stefan Monnier <monnier@cs.yale.edu>
10018
10019 * xterm.c (take_vertical_position_into_account): Remove.
10020 (xt_action_hook): Call set_vertical_scroll_bar if needed.
10021 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
10022 (xm_scroll_callback, x_create_toolkit_scroll_bar)
10023 (x_set_toolkit_scroll_bar_thumb): Simplify.
10024 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
10025 (XTread_socket): Remove unused var.
10026 (x_make_frame_invisible): Replace goto with else.
10027
10028 * xdisp.c (set_vertical_scroll_bar): New fun.
10029 (redisplay_window): Use it.
10030
84f2e615
RS
100312003-03-26 Richard M. Stallman <rms@gnu.org>
10032
10033 * xdisp.c (update_tool_bar): Recompute tool bar if
10034 update_mode_lines is set. Set w->update_mode_line
10035 only if the tool bar contents actually change.
10036 (update_menu_bar): Undo previous change.
10037
70b6104c
JD
100382003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10039
5fd6f727
JD
10040 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
10041 (xg_frame_set_char_size): Calculate scroll bar width before frame
10042 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
10043 (xg_separator_p): Check for all documented separator types.
10044 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
10045 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
10046
70b6104c
JD
10047 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
10048 so tool bar gets updated.
10049
d9b36d19
SM
100502003-03-26 Stefan Monnier <monnier@cs.yale.edu>
10051
10052 * data.c (store_symval_forwarding): Re-instate part of the code
10053 that was deleted with too much enthusiasm.
10054
100552003-03-25 Stefan Monnier <monnier@cs.yale.edu>
10056
10057 * data.c (store_symval_forwarding): Delete special read-only
10058 hack for type == -1, since we now use ->constant instead.
10059 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
10060
10061 * buffer.c (overlays_in): Declare static.
10062 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
10063 `constant' field rather than the variable's `type' field.
10064
365fa1b3
AC
100652003-03-24 Andrew Choi <akochoi@shaw.ca>
10066
10067 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
10068
10069 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
10070
10071 * fns.c [MAC_OSX]: Do not redefine vector.
10072
10073 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
10074
10075 * macgui.h: Remove definition of No_Cursor.
10076
d9b36d19 10077 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
10078
10079 * xdisp.c: Define No_Cursor.
10080 (x_write_glyphs, notice_overwritten_cursor)
10081 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
10082 (note_mouse_highlight): Remove Mac-specific code.
10083 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 10084
c0bcce6f
JPW
100852003-03-24 John Paul Wallington <jpw@gnu.org>
10086
10087 * xdisp.c (redisplay_window): If mini window's buffer is not
10088 empty, then redisplay it like other windows.
10089
a526b96c
KS
100902003-03-23 Kim F. Storm <storm@cua.dk>
10091
10092 * w32term.c (w32_draw_window_cursor): Fix last change.
10093
37ab321e
KH
100942003-03-23 Kenichi Handa <handa@m17n.org>
10095
a526b96c
KS
10096 * alloc.c (make_string_from_bytes, make_specified_string):
10097 Add `const' for the arg CONTENTS.
37ab321e
KH
10098
10099 * lisp.h (make_string_from_bytes, make_specified_string):
10100 Prototypes adjusted.
10101
7863d625
JD
101022003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10103
a526b96c 10104 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 10105
7863d625
JD
10106 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
10107 (XG_SB_RANGE): New define.
10108
10109 * gtkutil.c (xg_fixed_handle_expose): New function.
10110 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
10111 expose events.
10112 (xg_update_scrollbar_pos): Take two more arguments, left and width
10113 of scroll bar including borders.
10114 Clear left and right part outside scroll bar separately as some
10115 themes have bars that are not an even number of pixels.
d9b36d19 10116 Don't set reallocate_redraws, don't call
7863d625
JD
10117 gdk_window_process_all_updates.
10118 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
10119 so no need to change it. Calculate size and value with XG_SB_RANGE.
10120
d9b36d19
SM
10121 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
10122 Pass left and width of scroll bar including borders to
7863d625
JD
10123 xg_update_scrollbar_pos.
10124
af0ad939
TTN
101252003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
10126
10127 * Makefile.in: Make sure space precedes end-of-line backslashes.
10128
b22139fd
KS
101292003-03-22 Kim F. Storm <storm@cua.dk>
10130
10131 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
10132 Add generic versions here. Remove system specific versions
10133 defined elsewhere.
10134
10135 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
10136 Add prototypes.
10137
6e6410cf
KS
10138 * xterm.h (STORE_NATIVE_RECT): New macro.
10139
5c9cc435
KS
101402003-03-21 Kim F. Storm <storm@cua.dk>
10141
00c64fab
SM
10142 * xdisp.c (get_glyph_string_clip_rect):
10143 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
10144
10145 * dispextern.h (struct redisplay_interface): Add active_p
10146 argument to draw_window_cursor member. All uses changed.
10147
acd37560
KS
101482003-03-21 Kim F. Storm <storm@cua.dk>
10149
10150 The following changes consolidate code related to writing and
10151 inserting glyphs, exposing frame, the tool bar, the mouse face,
10152 the output cursor, and help echo from xterm.c, w32term.c and
10153 macterm.c into xdisp.c. It also generalizes the use of the
10154 window_part enum instead of using numeric values throughout.
af0ad939 10155
acd37560
KS
10156 * xdisp.c: Consolidate gui-independent code here.
10157 Include keymap.h.
10158 (Qhelp_echo): Import.
10159 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
10160 (help_echo_string, help_echo_window, help_echo_object)
10161 (previous_help_echo_string, help_echo_pos): Declare here.
10162 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
10163 (estimate_mode_line_height): Define here. Handle windowing
10164 systems directly (without using estimate_mode_line_height_hook).
10165 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
10166 (update_window_cursor, update_cursor_in_window_tree)
10167 (fast_find_position, fast_find_string_pos)
10168 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
10169 (expose_area, expose_line, expose_overlaps, expose_window)
10170 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
10171 declared static as they are only used locally in xdisp.c.
10172 (draw_glyphs): Rename from x_draw_glyphs and make static.
10173 (tool_bar_item_info, notice_overwritten_cursor): Make static.
10174 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
10175 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 10176 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
10177 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
10178 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
10179 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
10180 (note_mouse_highlight, x_clear_window_mouse_face)
10181 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
10182 (x_intersect_rectangles): New generic functions for use by xdisp.c
10183 and GUI front-ends.
10184 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
10185 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
10186
10187 * dispextern.h (Display_Info): Generic typedef for *_display_info.
10188 (NativeRectangle): Generic typedef for rectangle type.
10189 (enum window_part): Move here from window.c.
10190 (struct redisplay_interface): New members flush_display_optional,
10191 define_frame_cursor, clear_frame_area, draw_window_cursor,
10192 draw_vertical_window_border, shift_glyphs_for_insert.
10193 Rename member clear_mouse_face to clear_window_mouse_face.
10194 (estimate_mode_line_height_hook): Remove hook.
10195 (auto_raise_tool_bar_buttons_p): Don't declare extern.
10196 (tool_bar_item_info): Remove prototype.
10197 (help_echo_string, help_echo_window, help_echo_object)
10198 (previous_help_echo_string, help_echo_pos)
10199 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
10200 (x_stretch_cursor_p, output_cursor): Declare extern.
10201 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
10202 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
10203 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
10204 (display_and_set_cursor, set_output_cursor, x_cursor_to)
10205 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
10206 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
10207 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
10208 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
10209 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
10210 Add prototypes.
10211 (mode_line_string, marginal_area_string): Fix prototypes.
10212
10213 * window.c (enum window_part): Move to dispextern.h.
10214 (coordinates_in_window): Use enum window_part member names
10215 instead of numbers to describe return value.
10216 (struct check_window_data): Change part member to window_part.
10217 (check_window_containing): Return window_part unaltered.
10218 (window_from_coordinates): Change part arg from int to enum
10219 window_part. Allow part arg to be null. All users changed.
10220
10221 * window.h (window_from_coordinates): Fix prototype.
10222
10223 * term.c (estimate_mode_line_height): Move to xdisp.c.
10224
10225 * keyboard.c (make_lispy_event): Use enum window_part.
10226
10227 * dispnew.c (mode_line_string, marginal_area_string): Use enum
10228 window_part instead of int in arg list. Users changed.
10229
10230 * xterm.h (No_Cursor): Declare as None for X.
10231 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 10232
acd37560
KS
10233 * xterm.c: Remove consolidated defines and code.
10234 (BETWEEN): Remove unused macro.
10235 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
10236 (x_define_frame_cursor, x_clear_frame_area)
10237 (x_draw_window_cursor): New X-specific functions for RIF.
10238 (x_redisplay_interface): Add new members.
10239
10240 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
10241
10242 * w32term.h (struct w32_output): Remove cross_cursor member.
10243
10244 * w32term.c: Remove consolidated defines and code.
10245 (BETWEEN): Remove unused macro.
10246 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
10247 (w32_define_frame_cursor, w32_clear_frame_area)
10248 (w32_draw_window_cursor): New W32-specific functions for RIF.
10249 (w32_redisplay_interface): Add new members.
10250
a64387ee 10251 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
10252 (XRectangle): Add X compatible rectangle type.
10253 (NativeRectangle): Declare as RECT for W32.
10254 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
10255
10256 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
10257
10258 * w32console.c: Remove consolidated defines and code.
af0ad939 10259
acd37560
KS
10260 * msdos.h (Display_Info): Add generic typedef.
10261
10262 * msdos.c: Remove consolidated defines and code.
10263 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
10264
10265 * macterm.h (struct mac_output): Replace member cross_cursor by
10266 hand_cursor.
10267 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
10268
10269 * macterm.c: Remove consolidated defines and code.
10270 (BETWEEN): Remove unused macro.
10271 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
10272 (mac_define_frame_cursor, mac_clear_frame_area)
10273 (mac_draw_window_cursor): New Mac-specific functions for RIF.
10274 (x_redisplay_interface): Add new members.
10275
10276 * macgui.h (No_Cursor): Define as 0 for Mac.
10277 (XRectangle): Add X compatible rectangle type.
10278 (NativeRectangle): Declare as Rect for Mac.
10279 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
10280
204ccab1
KS
10281 * macfns.c (x_set_mouse_color): Setup hand_cursor.
10282 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 10283
9443fcf6 10284 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
10285 included from it. Add dependency on keymap.h.
10286
10287 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
10288
8ba01a70 102892003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
10290
10291 * fileio.c (Fexpand_file_name): Fix previous change.
10292
8ba01a70 102932003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
10294
10295 * fileio.c (Ffile_name_directory): Reconstruct file name by
10296 make_specified_string.
10297 (Ffile_name_nondirectory, Ffile_name_as_directory)
10298 (Fdirectory_file_name, Fexpand_file_name)
10299 (Fsubstitute_in_file_name): Likewise.
10300 (Fread_file_name): Compare decoded homedir with DIR and
10301 DEFAULT_FILENAME.
10302
10303 * alloc.c (make_specified_string): If NCHARS is negative, count
10304 the number of characters.
10305
19536747
JD
103062003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10307
de38ae5a
JD
10308 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
10309 all widgets.
10310
19536747
JD
10311 * gtkutil.h: Removed xg_ignore_next_thumb.
10312
37ab321e 103132003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
10314
10315 * coding.c (Vchar_coding_system_table): Remove this variable.
10316 (Vcoding_system_safe_chars): New variable.
10317 (intersection): Remove this function.
10318 (find_safe_codings): Don't use Vchar_coding_system_table, but try
10319 all codings in SAFE_CODINGS.
00c64fab 10320 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
10321 find_safe_codings. Get generic coding systems from
10322 Vcoding_system_safe_chars.
10323 (Fdefine_coding_system_internal): New function.
10324 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
10325 Initialize and staticpro Vcoding_system_safe_chars.
10326
17097258
JD
103272003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10328
2a2071c3
JD
10329 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
10330 equal old values before updating.
10331
17097258
JD
10332 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
10333
10334 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
10335
103362003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10337
10338 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
10339 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
10340 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
10341 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
10342 (xg_create_scroll_bar): Pass bar to button event callback.
10343 (xg_find_top_left_in_fixed): New function.
10344 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
10345 whole scroll bar area. Get old position with
10346 xg_find_top_left_in_fixed, calculate and only clear needed areas.
10347 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
10348 dragging is in progress. Calculate whole as for Motif.
10349 Remove code that saved last values. Call gtk_range functions to
10350 set scroll bar sizes.
10351
10352 * gtkutil.h: Removed xg_ignore_next_thumb.
10353
8cb9dfbf
JB
103542003-03-17 Juanma Barranquero <lektu@terra.es>
10355
10356 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
10357 and files included from it.
10358
00c64fab
SM
103592003-03-18 Stefan Monnier <monnier@cs.yale.edu>
10360
10361 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
10362 multiple occurrences of the same keymap under different prefixes.
10363 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
10364
c45bb3b2
JR
103652003-03-16 Jason Rumney <jasonr@gnu.org>
10366
10367 * w32gui.h: Use HDC for Display.
10368
10369 * w32term.c (w32_encode_char): Prevent double-byte chars from
10370 crashing Emacs.
10371
10372 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
10373 as binary.
10374
2a6d0874
JB
103752003-03-16 Juanma Barranquero <lektu@terra.es>
10376
10377 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
10378
03eb5fab
KS
103792003-03-16 Kim F. Storm <storm@cua.dk>
10380
10381 The following changes consolidate some of the gui-independent
10382 parts of the processing and drawing of "glyph strings" from
10383 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 10384
03eb5fab
KS
10385 * dispextern.h (struct glyph): Reduce face_id member from 22 to
10386 21 bits (this reduces number of faces from 4M to 2M).
10387 Replace W32 specific w32_font_type member (2 bits) by generic
10388 font_type member (3 bits) for portability.
10389 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
10390 (enum draw_glyphs_face): Define here.
10391 (struct glyph_string): Define here. Merge W32 and X versions.
10392 (struct redisplay_interface): New members per_char_metric,
10393 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
10394 (VCENTER_BASELINE_OFFSET): Define here.
10395 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
10396 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
10397
10398 * xdisp.c: Consolidate gui-independent "glyph string" code here.
10399 (dump_glyph_string): Moved here.
10400 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
10401 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
10402 (fill_composite_glyph_string, fill_glyph_string)
10403 (fill_image_glyph_string, fill_stretch_glyph_string)
10404 (left_overwritten, left_overwriting, right_overwritten)
10405 (right_overwriting, get_char_face_and_encoding)
10406 (set_glyph_string_background_width, compute_overhangs_and_x)
10407 (append_glyph, append_composite_glyph, produce_image_glyph)
10408 (take_vertical_position_into_account, append_stretch_glyph)
10409 (produce_stretch_glyph): New generic functions (based on X version).
10410 Call platform specific functions through rif.
10411 (INIT_GLYPH_STRING): New macro, hides W32 details.
10412 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
10413 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
10414 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
10415 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
10416 (notice_overwritten_cursor):
10417 Generic functions exported to platform modules. Users changed.
10418
10419 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
10420 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
10421 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 10422 New macros for consolidated code.
2a6d0874 10423
03eb5fab
KS
10424 * xterm.c: Remove consolidated defines and code.
10425 (x_per_char_metric, x_encode_char)
10426 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
10427 (x_redisplay_interface): Add new members.
10428
10429 * w32gui.h (Display): Add dummy typedef for consolidation.
10430 (XChar2b): Define alias for wchar_t for consolidation.
10431 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
10432
10433 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 10434 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
10435 New macros for consolidation.
10436
fad49844 10437 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
10438 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
10439 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
10440 (w32_per_char_metric): Change font_type arg to int for RIF.
10441 (w32_encode_char): Return int according to RIF requirements.
10442 (w32_compute_glyph_string_overhangs): Adapt to RIF.
10443 (w32_get_glyph_overhangs): New function for RIF. Uses generic
10444 x_get_glyph_overhangs.
10445 (w32_redisplay_interface): Add new members.
10446
10447 * macgui.h (XChar2b): Move typedef here for consolidation.
10448 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
10449
10450 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
10451 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
10452 consolidation.
10453
10454 * macterm.c: Remove consolidated defines and code.
10455 (mac_per_char_metric): New function for RIF.
00c64fab 10456 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
10457 (mac_compute_glyph_string_overhangs): Adapt for RIF.
10458 (x_redisplay_interface): Add new members.
10459
00c64fab
SM
104602003-03-15 Stefan Monnier <monnier@cs.yale.edu>
10461
10462 * keymap.c (Vmenu_events): New var.
10463 (syms_of_keymap): Initialize it.
10464 (where_is_internal): Check more carefully what is a menu event.
10465
225c7a07
RS
104662003-03-14 Richard M. Stallman <rms@gnu.org>
10467
10468 * lread.c (read1): After #!, exit loop on eof.
10469
cea9be54
JD
104702003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10471
9ea0e54d
JD
10472 * gtkutil.h: Add declaration for xg_frame_cleared.
10473
0cb35f4e
JD
10474 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
10475
cea9be54
JD
10476 * gtkutil.c (struct xg_last_sb_pos): New structure.
10477 (handle_fixed_child): New function.
10478 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
10479 and force a redraw on them.
10480 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
10481 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
10482 so we can avoid unneeded redraws.
10483 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
10484 and force a redraw on the scroll bar.
10485 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
10486 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 10487 (xg_frame_cleared): New function.
cea9be54 10488
20b853f3
KH
104892003-03-13 Kenichi Handa <handa@m17n.org>
10490
10491 * coding.c (Fdetect_coding_region): Fix docstring.
10492 (Fdetect_coding_string): Fix docstring.
10493
7a555aff
AS
104942003-03-13 Andreas Schwab <schwab@suse.de>
10495
25cc0080
AS
10496 * gtkutil.c: Add prototype for create_menus.
10497
30225431
AS
10498 * data.c (long_to_cons): Fix type of top.
10499
10500 * xselect.c (selection_data_to_lisp_data): Use int instead of
10501 long for an integer of size 4.
10502
7a555aff 10503 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 10504 (xg_tool_bar_help_callback): Likewise.
7a555aff 10505
a3e4741f
AS
105062003-03-12 Andreas Schwab <schwab@suse.de>
10507
10508 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
10509
9668be7c
KS
105102003-03-12 Kim F. Storm <storm@cua.dk>
10511
03eb5fab 10512 The following changes consolidate the fringe handling from
9668be7c 10513 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 10514
9668be7c
KS
10515 * xdisp.c: Consolidate fringe handling code here.
10516 (left_bits, right_bits, continued_bits, continuation_bits)
10517 (ov_bits, zv_bits): Define fringe bitmaps.
10518 (fringe_bitmaps): New array holding fringe bitmaps.
10519 (draw_fringe_bitmap): Draw a specific bitmap; call display
10520 specific drawing routine via rif->draw_fringe_bitmap.
10521 (draw_row_fringe_bitmaps): Generic replacement for
10522 x_draw_row_fringe_bitmaps; all callers changed.
10523 (compute_fringe_widths): Generic replacement for
10524 x_compute_fringe_widths; all callers changed.
10525
10526 * dispextern.h (enum fringe_bitmap_type): Define here.
10527 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
10528 (fringe_bitmaps): Declare extern.
10529 (struct redisplay_interface): New member draw_fringe_bitmap.
10530 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
10531
10532 * xterm.c: Remove generic fringe code.
10533 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
10534 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
10535
10536 * w32term.c: Remove generic fringe code.
10537 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
10538 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 10539
9668be7c
KS
10540 * macterm.c: Remove generic fringe code.
10541 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
10542 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
10543
00a88f32
SM
105442003-03-11 Stefan Monnier <monnier@cs.yale.edu>
10545
10546 * print.c (Fprin1_to_string): Return unibyte string if possible.
10547
1d1de695
DK
105482003-03-09 David Kastrup <dak@gnu.org>
10549
10550 * process.c (read_process_output): We have allocated enough space
10551 for readmax and carryover, so actually use the alloted space.
10552
257f40f2
JD
105532003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10554
10555 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
10556 toolkit scrollbar click.
10557
10558 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
10559 for USE_GTK.
10560 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
10561 also.
10562 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
10563 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 10564
78819ebb 10565 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
257f40f2
JD
10566
10567 * gtkutil.c (xg_get_scroll_id_for_window): New function.
10568 (xg_tool_bar_item_expose_callback): New function.
10569 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
10570 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
10571 on the tool bar widget.
10572 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
10573 to expose on the tool bar item widgets.
10574
15213141
JD
105752003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10576
26b74a0b 10577 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 10578 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
10579 deleted from the image cache).
10580
15213141
JD
10581 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
10582 the event isn't for a frame (i.e. for dialogs).
10583
20b853f3 105842003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
10585
10586 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
10587 composition components reaches the limit, terminate composing.
10588 (COMPOSITION_OK): New macro.
00a88f32 10589 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
10590 composition is found.
10591 (coding_restore_composition): Adjust the number of composition
10592 components if it is not sane.
10593
c9029fe5
JB
105942003-03-06 Juanma Barranquero <lektu@terra.es>
10595
10596 * w32term.h (struct w32_display_info): Add xrdb member to support
10597 passing resources via -xrm on Windows.
10598
10599 * w32term.c (w32_make_rdb): New function.
10600 (w32_term_init): Use it to initialize xrdb member of w32_display_info
10601 struct. Delete leftover code.
10602
10603 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
10604 for resources passed on the command line.
10605
10606 * w32reg.c (w32_get_rdb_resource): New function.
10607 (x_get_string_resource): Use it, so resources passed with -xrm
10608 supercede the ones in the registry.
10609
9d00001f
JD
106102003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10611
10612 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
10613 instead of x_top_window_to_frame.
10614
ca2417b9
JD
106152003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10616
10617 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
10618 when restarting Emacs.
10619
5b20caf0
RS
106202003-03-03 Richard M. Stallman <rms@gnu.org>
10621
10622 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
10623 to run kill-buffer-query-functions.
10624 (Qkill_buffer_query_functions): New var.
10625 (syms_of_buffer): Init and staticpro it.
10626
58e91b77
JD
106272003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10628
10629 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
10630
932357b4
KS
106312003-02-25 Kim F. Storm <storm@cua.dk>
10632
10633 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
10634 If centering point failed to make whole line visible and vscroll
10635 is non-zero, disable vscroll and try centering point again.
10636
10637 * lread.c (read1): Accept `single space' syntax like (? x).
10638
bb8db7e1
JD
106392003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10640
10641 * keyboard.c (cancel_hourglass_unwind): Surround with
10642 #ifdef HAVE_X_WINDOWS
10643
47d77aab
KH
106442003-02-25 Kenichi Handa <handa@m17n.org>
10645
10646 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
10647 process only when "subprocesses" is defined.
10648
6a097c0c
SM
106492003-02-24 Stefan Monnier <monnier@cs.yale.edu>
10650
10651 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
10652
0b063c27
JB
106532003-02-24 Juanma Barranquero <lektu@terra.es>
10654
d1135afc
JB
10655 * callint.c (fix_command): Declare as static void and move before
10656 Fcall_interactively.
10657
0b063c27
JB
10658 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
10659 (syms_of_xdisp): Don't initialize Qwhen.
10660
0af912f0
JD
106612003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10662
10663 * keyboard.c (cancel_hourglass_unwind): New function.
10664 (command_loop_1): Cancel hourglass with unwind-protect.
10665
120d0a23
RS
106662003-02-23 Richard M. Stallman <rms@gnu.org>
10667
10668 * callint.c (fix_command): New subroutine, from Fcall_interactively.
10669 Detect (when ... (region-beginning)) etc.
10670 (Fcall_interactively): Call fix_command.
10671 (Qif, Qwhen): New variables.
10672 (syms_of_callint): Init and staticpro them.
0b063c27 10673
120d0a23
RS
10674 * regex.c (print_partial_compiled_pattern): Output to stderr.
10675
4ece81a6
KG
106762003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
10677
10678 * dired.c (directory_files_internal): Don't expand directory.
10679 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
10680 instead. From Lars Hansen <larsh@math.ku.dk>.
10681
e52bd6b7
SM
106822003-02-22 Stefan Monnier <monnier@cs.yale.edu>
10683
10684 * fns.c (string_to_multibyte): Remove unused var i.
10685 (Flanginfo): Fix int/Lisp_Object mixup.
10686 (void_call2): New fun.
10687 (Fmap_char_table): Use it in place of call2.
10688
10689 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
10690
10691 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
10692
10693 * keymap.c (copy_keymap_1): Make it static.
10694
10695 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
10696
c33ef7c4
JB
106972003-02-22 David Ponce <david@dponce.com>
10698
10699 * lread.c (Fload): Don't check STRING_MULTIBYTE.
10700
16782258
JD
107012003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10702
10703 * process.h: Removed subtty field from struct Lisp_Process.
10704
10705 * process.c (create_process): Remove setting of subtty.
10706 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
10707 (Fprocess_running_child_p, process_send_signal):
10708 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
10709 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
10710
3abeca61
KG
107112003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
10712
10713 * keymap.c (Fdefine_key): Doc fix.
10714
92a8ce63
JB
107152003-02-21 Juanma Barranquero <lektu@terra.es>
10716
10717 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
10718
10719 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
10720 POLLING_PROBLEM_IN_SELECT.
10721
10722 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
10723 Delete #undef of POLLING_PROBLEM_IN_SELECT.
10724
10725 * s/hpux10-20.h: New file.
10726
e52bd6b7
SM
10727 * process.c (wait_reading_process_input):
10728 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 10729
20f1ef2e
KH
107302003-02-20 Kenichi Handa <handa@m17n.org>
10731
32d0a9dc
KH
10732 * fontset.c (check_fontset_name): If NAME is nil, return the
10733 default fontset.
10734 (override_font_info): New function.
e52bd6b7 10735 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
10736 (Ffontset_info): If FONTSET is not the default fontset, merge
10737 FONTSET onto the copy of the default fontset, and work on that
10738 copy. Document that NAME nil means the default fontset.
10739 (Ffontset_font): Document that NAME nil means the default fontset.
10740
20f1ef2e
KH
10741 * process.c (setup_process_coding_systems): If the process's
10742 in/out descriptor is -1, do nothing.
10743
77d1daf2
AS
107442003-02-19 Andreas Schwab <schwab@suse.de>
10745
e52bd6b7
SM
10746 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
10747 Add prototypes.
77d1daf2 10748
f9a45bb3
KH
107492003-02-19 Kenichi Handa <handa@m17n.org>
10750
10751 * xfaces.c (try_alternative_families): Try all scalable fonts if
10752 Vscalable_fonts_allowed is not Qt.
10753
72ecb43c
JD
107542003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10755
10756 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
10757
ee5be7c3
JD
107582003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10759
10760 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
10761 names.
10762
10763 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 10764 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
10765 x_face_list_fonts.
10766 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
10767 (Fx_list_fonts): Set maxnames to -1 to get all font names.
10768
4cd519a7
KS
107692003-02-18 Kim F. Storm <storm@cua.dk>
10770
068f9882
KS
10771 * lread.c (read1): Fix last change.
10772 "`" is not always special. Allow "?" after a character constant.
4cd519a7 10773
7290a344
AC
107742003-02-18 Andrew Choi <akochoi@shaw.ca>
10775
10776 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
10777
1f7fa69b
AS
107782003-02-18 Andreas Schwab <schwab@suse.de>
10779
10780 * window.c (window_scroll_pixel_based): Move outside a
10781 multi-glyph character before setting new window start.
10782
10783 * xdisp.c (in_display_vector_p): New function.
10784 * dispextern.h (in_display_vector_p): Declare.
10785
23e21195
KS
107862003-02-18 Kim F. Storm <storm@cua.dk>
10787
10788 * lread.c (read1): Fix and relax read syntax.
10789 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
10790 Only recognize "," after dotted-pair dot if inside backquote.
10791 Never include "`" or "," (inside backquote) in a symbol.
10792 Allow dotted-pair dot after a character constant.
10793 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 10794
f098b121
JD
107952003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10796
10797 * gtkutil.c (xg_tool_bar_expose_callback): New function.
10798 (xg_create_tool_bar): Force style of tool bar to be horizontal with
10799 icons. Set name of tool bar to emacs-toolbar.
10800 (update_frame_tool_bar): Connect expose event to
10801 xg_tool_bar_expose_callback.
10802
63020c46
RS
108032003-02-17 Richard M. Stallman <rms@gnu.org>
10804
10805 * keyboard.c (this_command_key_count_reset): New variable.
10806 Initiatize to 0 where this_command_key_count is set.
10807 (read_char): Save and restore this_command_key_count_reset
10808 around input method code.
10809 (read_char): If this_command_key_count_reset, echo reread commands.
10810 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
10811
fb4452cc
KH
108122003-02-17 Kenichi Handa <handa@m17n.org>
10813
10814 * fns.c (string_to_multibyte): Always return a multibyte string.
10815
bd11cc09
JR
108162003-02-16 Jason Rumney <jasonr@gnu.org>
10817
e52bd6b7
SM
10818 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
10819 Negative max_fonts parameter means list all.
bd11cc09 10820
4cdf4bde
DL
108212003-02-14 Dave Love <fx@gnu.org>
10822
10823 * fns.c (Flanginfo): Doc fix.
10824
023b93f6
KS
108252003-02-13 Kim F. Storm <storm@cua.dk>
10826
37cd4238
KS
10827 * lread.c (read_escape): Interpret \s as a SPACE character, except
10828 for \s-X in a character constant which still is the super modifier.
10829 (read1): Signal an `invalid read syntax' error if a character
10830 constant is immediately followed by a digit or symbol character.
10831
140a6b7e
KS
10832 * search.c (Fmatch_data): Doc fix. Explicitly state that
10833 match-data is undefined if last search failed.
10834
3419757d 10835 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
023b93f6
KS
10836 All uses changed.
10837
7d5c86e5
JB
108382003-02-12 Juanma Barranquero <lektu@terra.es>
10839
10840 * eval.c (Fdefmacro): Fix typo.
10841
295fff2c
KS
108422003-02-12 Kim F. Storm <storm@cua.dk>
10843
10844 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
10845 macro is a string, convert meta modifiers in string when copying
10846 the string into a vector.
10847
60f3202d
KS
108482003-02-11 Kim F. Storm <storm@cua.dk>
10849
10850 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
10851
61cb0b53
KH
108522003-02-11 Kenichi Handa <handa@m17n.org>
10853
10854 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
10855
7392e23c
KS
108562003-02-10 Kim F. Storm <storm@cua.dk>
10857
10858 * process.c: Doc fixes.
10859 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
10860
ce4254bd
KH
108612003-02-10 Kenichi Handa <handa@m17n.org>
10862
9c7a329a
KH
10863 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
10864
ce4254bd
KH
10865 * process.c (QCfilter_multibyte): New variable.
10866 (setup_process_coding_systems): New function.
e52bd6b7
SM
10867 (Fset_process_buffer, Fset_process_filter):
10868 Call setup_process_coding_systems.
ce4254bd
KH
10869 (Fstart_process): Initialize the member `filter_multibyte' of
10870 struct Lisp_Process.
10871 (create_process): Call setup_process_coding_systems.
10872 (Fmake_network_process): New keyward `:filter-multibyte'.
10873 Initialize the member `filter_multibyte' of struct Lisp_Process.
10874 Call setup_process_coding_systems.
10875 (server_accept_connection): Call setup_process_coding_systems.
10876 (read_process_output): If the process has a filter, decide the
10877 multibyteness of a string to given to the filter by
10878 `filter_multibyte' member of the process. If the process doesn't
10879 have a filter and the result of conversion is unibyte, use
10880 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
10881 multibyte form.
10882 (Fset_process_coding_system): Call setup_process_coding_systems.
10883 (Fset_process_filter_multibyte): New function.
10884 (Fprocess_filter_multibyte_p): New function.
10885 (syms_of_process): Intern and staticpro QCfilter_multibyte.
10886 Defsubr Sset_process_filter_multibyte and
10887 Sprocess_filter_multibyte_p.
10888
10889 * process.h (struct Lisp_Process): New member filter_multibyte.
10890
10891 * lisp.h (setup_process_coding_systems): Add prototype.
10892
10893 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
10894 process, update coding systems for the process.
10895
b08d5f59
KH
108962003-02-09 Kenichi Handa <handa@m17n.org>
10897
10898 * fns.c (string_to_multibyte): New function.
10899 (Fstring_to_multibyte): New function.
10900 (syms_of_fns): Defsubr it.
10901
0dfd93c0
AS
109022003-02-08 Andreas Schwab <schwab@suse.de>
10903
10904 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
10905 instead of the substitution.
10906
7b76ca1c
JD
109072003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10908
10909 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
10910
10911 * xmenu.c (menu_position_func): Adjust menu popup position so that
10912 the menu is fully visible.
7b76ca1c 10913
2436a4e4
JD
109142003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10915
10916 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
10917 (x_make_frame_invisible, x_wm_set_icon_position):
10918 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
10919
10920 * xfns.c (x_set_name, x_set_title): Ditto.
10921
37d1e680
RS
109222003-02-04 Richard M. Stallman <rms@gnu.org>
10923
10924 * keyboard.c (echo_now): Update before_command_echo_length.
10925 (Freset_this_command_lengths): Reset this_command_key_count etc.
10926 immediately rather than arranging to do it later.
10927 (before_command_key_count_1, before_command_echo_length_1)
10928 (before_command_restore_flag): Vars deleted.
10929 (add_command_key): Don't handle before_command_restore_flag.
10930 (read_char, record_menu_key): Don't update before_command_key_count or
10931 before_command_echo_length.
10932 (read_char): Don't handle before_command_restore_flag.
10933
10934 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
10935 in direct-output clauses if it wouldn't be called in the ordinary case.
10936
578846a3
KS
109372003-02-04 Kim F. Storm <storm@cua.dk>
10938
10939 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
10940
49853a4d
JD
109412003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10942
10943 * gtkutil.c (remove_from_container): Copying list is not needed.
10944 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
10945 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
10946 on list returned from gtk_container_get_children to avoid memory leak.
10947
8b53dc06
JR
109482003-02-01 Jason Rumney <jasonr@gnu.org>
10949
5d54d177
JR
10950 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
10951 local malloc.
10952 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
10953 definitions in xpm.h.
10954 (init_xpm_functions): New function.
f63fd14e 10955 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
10956 (init_external_image_libraries): Try to load libXpm.dll.
10957
8b53dc06
JR
10958 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
10959 timestamp.
10960
b222e415
DL
109612003-01-31 Dave Love <fx@gnu.org>
10962
10963 * syntax.c (Fskip_chars_forward)
10964 (open-paren-in-column-0-is-defun-start): Doc fix.
10965
c60ee5e7
JB
109662003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
10967
10968 * fileio.c: Support // at start of name for Cygwin (just added proper
10969 preprocessor tests).
10970
10971 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
10972
10973 * Makefile.in: Use @EXEEXT@ for Cygwin.
10974
10975 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
10976
10977 * s/cygwin.h: Added for Cygwin port.
10978
53b37591
JB
109792003-01-31 Juanma Barranquero <lektu@terra.es>
10980
10981 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
10982 when including gif_lib.h.
fe929957 10983 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
10984 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
10985 Windows. Disable color table lookups. Call library functions
53b37591 10986 through pointers determined at runtime.
fe929957
JB
10987 (init_external_image_libraries): Try to load libungif.dll and
10988 libtiff.dll.
53b37591 10989
45415a8f
KH
109902003-01-31 Kenichi Handa <handa@m17n.org>
10991
10992 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 10993 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 10994
a97e4138
JD
109952003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10996
e52bd6b7 10997 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 10998
6eed9bed
DL
109992003-01-30 Dave Love <fx@gnu.org>
11000
11001 * alloc.c (Vgc_elapsed, gcs_done): New variables.
11002 (Fgarbage_collect): Use them.
11003 (init_alloc, syms_of_alloc): Set them up.
11004
100dcd40
JB
110052003-01-30 Juanma Barranquero <lektu@terra.es>
11006
11007 * w32fns.c (init_external_image_libraries): Add missing operator.
11008
fbd852af
JR
110092003-01-29 Jason Rumney <jasonr@gnu.org>
11010
11011 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
11012 an alternative name for jpeg.dll.
11013
8a2d8020
KH
110142003-01-29 Kenichi Handa <handa@m17n.org>
11015
11016 * xdisp.c (set_cursor_from_row): Pay attention to string display
11017 properties.
11018
058c18c7
AC
110192003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
11020
11021 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
11022 <escape>.
11023 (keycode_to_xkeysym_table): Reformat and add more comments.
11024 (XTread_socket): Drop special case for backspace.
11025
385f11cf
AC
110262003-01-28 Andrew Choi <akochoi@shaw.ca>
11027
11028 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
11029 values in old-style RGB specs.
11030
c922a224
JB
110312003-01-27 Juanma Barranquero <lektu@terra.es>
11032
11033 * w32fns.c (init_external_image_libraries): Try alternate names for the
11034 jpeg dll.
11035
0a1d6de0
JD
110362003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11037
11038 * gtkutil.c (create_dialog, xg_separator_p)
11039 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
11040 before calling strcmp or strlen.
11041
a97e4138 110422003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
11043
11044 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
11045 and handle image load failure.
11046
28908312
JR
110472003-01-26 Jason Rumney <jasonr@gnu.org>
11048
11049 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
11050 New functions.
f63fd14e
JB
11051 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
11052 Disable color table lookups. Call jpeg library functions
28908312
JR
11053 through pointers determined at runtime.
11054 (init_external_image_libraries): Try to load jpeg.dll.
11055
84e47416
RS
110562003-01-25 Richard M. Stallman <rms@gnu.org>
11057
11058 * lisp.h: Declare format2 instead of format1.
11059
11060 * fileio.c (barf_or_query_if_file_exists):
11061 Call format2 instead of format1.
11062
11063 * editfns.c (format2): New function, replaces format1
11064 but takes exactly two Lisp Objects as format args.
11065
11066 * buffer.c (Fkill_buffer): Call format2 instead of format1.
11067
a97e4138 110682003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
11069
11070 * xterm.h: Change to return value of x_dispatch_event to int.
11071
11072 * xterm.c (x_filter_event): New function.
11073 (event_handler_gdk, XTread_socket): Call x_filter_event.
11074 (x_dispatch_event): Change to return value of finish.
11075 (event_handler_gdk): Use return value from x_dispatch_event.
11076
11077 * xfns.c (x_window): Call create_frame_xic for GTK version to
11078 initialize input methods.
11079
11080 * gtkutil.h: Add (void) prototypes.
11081
11082 * gtkutil.c (create_menus): Remove code that puts the help menu to
11083 the right.
11084
54eefef1
JR
110852003-01-25 Jason Rumney <jasonr@gnu.org>
11086
11087 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
11088 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
11089 (png_load): Adjust colors for Windows. Use Windows
11090 bitmaps. Disable color table lookups.
c262430d
JR
11091 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
11092 (init_png_functions): New function.
11093 (png_read_from_memory, png_load): Call png library functions
11094 through pointers determined at runtime.
11095 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
11096 (init_external_image_libraries): New function.
11097 (init_xfns): Call it.
54eefef1 11098
1a9e275b
AS
110992003-01-24 Andreas Schwab <schwab@suse.de>
11100
11101 * minibuf.c (Fminibuffer_message): Verify type of parameter.
11102
a97e4138 111032003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
11104
11105 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
11106 of static initializer.
11107
422eec7e
DL
111082003-01-24 Dave Love <fx@gnu.org>
11109
11110 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
11111 architectures.
11112
11113 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
11114 Use __alignof__.
11115
2a026b04
KH
111162003-01-24 Kenichi Handa <handa@m17n.org>
11117
11118 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 11119 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
11120 (command_loop_1): Call adjust_point_for_property with proper
11121 second arg.
11122
a18bb28d
JR
111232003-01-22 Jason Rumney <jasonr@gnu.org>
11124
11125 Sync changes with xterm.c and xfns.c.
11126
11127 * w32term.c (x_draw_glyph_string_foreground)
11128 (x_draw_composite_glyph_string_foreground): Implement overstriking.
11129
11130 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
11131 phys_cursor's hpos is overwritten. This is still not completely
11132 correct, as it doesn't really make sense to use hpos at all to
11133 get the cursor glyph (as that is relative to the width of the
11134 characters on the line, which may have changed during the update).
11135
11136 * w32term.c (notice_overwritten_cursor): Handle the special case
11137 of the cursor being in the first blank non-text line at the
11138 end of a window.
11139
11140 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11141 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11142 Compute from the x position returned by x_draw_glyphs.
11143
11144 (x_display_and_set_cursor): Don't set phys_cursor_width here,
11145 except for NO_CURSOR and system caret, to make phys_cursor_width
11146 contain what its name suggests.
11147 (notice_overwritten_cursor): Consider the cursor image erased if
11148 the output area intersects the cursor image in y-direction.
11149
6a097c0c
SM
11150 * w32term.c (note_mode_line_or_margin_highlight): Rename from
11151 note_mode_line_highlight and extend.
a18bb28d
JR
11152
11153 * w32term.c (last_window): New variable.
11154 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
11155 (note_mouse_movement): Remove reimplemented code in #if 0.
11156
11157 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
11158 not update_mode_lines, and always set it to 1.
11159
ac6e47ef
JR
111602003-01-21 Jason Rumney <jasonr@gnu.org>
11161
11162 * w32fns.c (IDC_HAND): Define it if system headers don't.
11163
111642003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11165
11166 * w32term.h (struct w32_output): New member hand_cursor.
11167 (WM_EMACS_SETCURSOR): New message definition.
11168
11169 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
11170 function w32_define_cursor.
11171 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
11172 position, change member name output_data.x to output_data.w32 and
11173 add function w32_define_cursor.
11174 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
11175 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
11176 (w32_initialize_display_info):
11177 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
11178
11179 * w32fns.c (Vx_hand_shape): New variable.
11180 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
11181 WM_EMACS_SETCURSOR.
11182 (x-create-frame): Setup Cursor types.
11183
ceb39a17
JB
111842003-01-21 David Ponce <david@dponce.com>
11185
ac6e47ef 11186 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 11187 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 11188 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 11189 2002-09-30.)
ac6e47ef
JR
11190 (w32_draw_relief_rect): Declare all args.
11191 (w32_define_cursor): New.
11192
11193 * w32fns.c (w32_load_cursor): New function.
11194 (w32_init_class): Use it.
11195 (x_put_x_image): Declare all args.
11196
b6189c3b 111972003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
11198
11199 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
11200
a97e4138 112012003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
11202
11203 * gtkutil.c: Must include stdio.h before termhooks.h
11204
83fc9c63
DL
112052003-01-21 Dave Love <fx@gnu.org>
11206
11207 * alloc.c (Fgc_status): Print zombie list.
11208 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
11209 Fix assignment of zombies.
11210 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
11211 Don't take car of non-cons.
11212
11213 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
11214
11215 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
11216
fe04b8c8
JR
112172003-01-20 David Ponce <david@dponce.com>
11218
11219 * w32menu.c (digest_single_submenu): Declare all args.
11220
11221 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
11222 changes in xmenu.c:
11223
11224 (parse_single_submenu): Use individual keymap's prompt
11225 string as pane name, if there is one.
11226 (set_frame_menubar): Save menu_items_n_panes from each call to
11227 parse_single_submenu and use it when calling digest_single_submenu.
11228
539e69a9
ST
112292003-01-20 Steven Tamm <steventamm@mac.com>
11230
7e26f91b 11231 * macterm.c (XTread_socket): Check for valid, visible window
539e69a9
ST
11232 before sending a scroll-wheel event.
11233
675d000f
RS
112342003-01-20 Richard M. Stallman <rms@gnu.org>
11235
11236 * xdisp.c (redisplay_window): If mini window's buffer is not
11237 a minibuffer, then redisplay it like other windows.
11238
a97e4138 112392003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
11240
11241 * gtkutil.c (xg_create_frame_widgets): Check if there is an
11242 external tool bar before setting tool bar height.
11243
048addec
JD
112442003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11245
11246 * xterm.c (handle_one_xevent): Surround popup_activated
11247 with #ifdef:s for non-toolkit version.
11248
11249 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
11250 (gtkutil.o): New file.
11251 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
11252 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
11253
11254 * gtkutil.c: New file for GTK version.
11255
11256 * gtkutil.h: New file for GTK version.
11257
11258 * xterm.h: Add xt_or_gtk_widget.
11259 Include gtk files for USE_GTK.
11260 (struct x_output): Add toolbar_height.
11261 (struct x_output): Add GTK widgets and Gdk size_hints.
11262 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
11263 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
11264 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
11265
11266 * xterm.c: Include gtkutil.h for USE_GTK.
78819ebb 11267 (free_frame_menubar): Declare extern void for USE_GTK.
048addec
JD
11268 (note_mouse_highlight): Check popup_activated for USE_GTK.
11269 (xt_action_hook): Don't compile if USE_GTK.
11270 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
11271 (xg_scroll_callback): New function.
11272 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
11273 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
11274 for USE_GTK.
11275 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
11276 xg_show_scroll_bar for USE_GTK.
11277 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
11278 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
11279 (event_handler_gdk): New function for USE_GTK.
11280 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
11281 (handle_one_xevent): Make sure widget is mapped before
11282 calling x_real_positions for USE_GTK.
11283 (XTread_socket): Add GTK event loop for USE_GTK.
11284 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
11285 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
11286 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
11287 (x_iconify_frame): Add code for USE_GTK.
11288 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
11289 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
11290 is in gtkutil.c.
11291 (x_term_init): Add initialization for GTK.
11292 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
11293
11294 * xmenu.c: Include gtkutil.h for USE_GTK.
11295 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
11296 (single_menu_item, single_menu_item, Fx_popup_dialog):
11297 Check for USE_GTK.
048addec
JD
11298 (popup_widget_loop): New function for USE_GTK.
11299 (x_activate_menubar): Add code for USE_GTK.
11300 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
11301 (menu_highlight_callback, menubar_selection_callback):
11302 Add USE_GTK versions.
048addec
JD
11303 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
11304 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
11305 (free_frame_menubar): Only compile if not USE_GTK. GTK version
11306 is in gtkutil.c.
11307 (popup_selection_callback): New version for USE_GTK.
11308 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 11309 one USE_X_TOOLKIT version.
048addec
JD
11310 (xmenu_show): Call create_and_show_popup_menu.
11311 (dialog_selection_callback): New version for USE_GTK.
11312 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 11313 one USE_X_TOOLKIT version.
048addec
JD
11314 (xdialog_show): Call create_and_show_dialog.
11315
11316 * xfns.c: Include gtkutil for USE_GTK.
11317 (x_window_to_frame, x_any_window_to_frame)
11318 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
11319 (x_top_window_to_frame): Add code for USE_GTK.
11320 (x_set_background_color): Call xg_set_background_color for GTK.
11321 (x_set_menu_bar_lines): Check for USE_GTK.
11322 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
11323 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
11324 (x_window): Call xg_create_frame_widgets for USE_GTK.
11325 (Fx_create_frame): Check for USE_GTK
11326 (Fx_file_dialog): New implementation for USE_GTK.
11327
11328 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
11329 (update_menu_bar): Add check for USE_GTK.
11330 (update_tool_bar): Add check for USE_GTK and external tool bar.
11331 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
11332 (redisplay_internal): Add check for USE_GTK and popup_activated.
11333 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
11334 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
11335 (display_menu_bar): Add check for USE_GTK
11336
78819ebb 11337 * lisp.h (Vx_resource_name): Declare extern.
048addec 11338
a64387ee 11339 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
11340 for USE_GTK.
11341 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
11342
11343 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
11344 (FRAME_EXTERNAL_TOOL_BAR): New macro.
11345 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
11346
11347 * fileio.c (Fread_file_name): Add check for USE_GTK.
11348
6bdb309a
SM
11349 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
11350 Add check for USE_GTK.
048addec
JD
11351
11352 * config.in: Added HAVE_GTK
11353
11354 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
11355
113562003-01-18 Stefan Monnier <monnier@cs.yale.edu>
11357
11358 * charset.h (Funibyte_char_to_multibyte): Export.
11359
113602003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11361
11362 * xmenu.c (mouse_position_for_popup): New function.
11363 (Fx_popup_menu): Call mouse_position_for_popup for X and
11364 mouse_position_hook for others.
11365
113662003-01-17 Kim F. Storm <storm@cua.dk>
11367
11368 * editfns.c (Finsert): Mention `string-make-multibyte' and
11369 `string-as-multibyte' in doc string.
11370
113712003-01-17 Kenichi Handa <handa@m17n.org>
11372
11373 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 11374
048addec
JD
11375 * editfns.c (Fformat): Convert an unibyte char argument that is
11376 formatted by "%c" to multibyte if the total result must be a
11377 multibyte string.
cd7df9c0 11378
048addec 113792003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 11380
048addec
JD
11381 * process.c (set-process-filter): Document unibyte/multibyte-ness
11382 of string argument.
56210ecd 11383
048addec 113842003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 11385
048addec 11386 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 11387
048addec
JD
11388 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
11389 (re_search_2): Likewise.
6df8b9fe 11390
048addec 113912003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 11392
048addec
JD
11393 * xdisp.c (message_dolog): Fix bug of the case that *Message*
11394 buffer is unibyte.
292ddc31 11395
048addec 113962003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 11397
048addec 11398 * fns.c (Fsubstring): Clarify doc string.
292ddc31 11399
048addec
JD
11400 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
11401 (Fprevious_char_property_change)
11402 (Fnext_single_char_property_change)
11403 (Fprevious_single_char_property_change, Fnext_property_change)
11404 (Fnext_single_property_change, Fprevious_property_change)
11405 (Fprevious_single_property_change, Fadd_text_properties)
11406 (Fput_text_property, Fset_text_properties)
11407 (Fremove_text_properties, Fremove_list_of_text_properties)
11408 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 11409
048addec 114102003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 11411
048addec
JD
11412 * process.h (struct Lisp_Process): New member plist replaces old
11413 member private_vars. All uses changed.
63e4e4c6 11414
048addec 11415 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 11416 (QCplist): Rename from QCvars. Change all uses.
048addec 11417 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 11418 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 11419 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 11420 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 11421
048addec 114222003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 11423
6bdb309a 11424 * m/delta.h: Remove (obsolete).
e833850f 11425
048addec 114262003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 11427
048addec
JD
11428 * fileio.c (Fdelete_directory, Fdelete_file): Document the
11429 behaviour in front of symlinks.
11430 (Fdelete_file): Raise an error on directories.
817cb127 11431
048addec 114322003-01-13 Dave Love <fx@gnu.org>
817cb127 11433
048addec 11434 * fns.c (Freverse): Use QUIT.
3e8cf2ea 11435
048addec 114362003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 11437
048addec
JD
11438 * minibuf.c (minibuffer_completion_contents):
11439 Error if point is inside prompt.
3e8cf2ea 11440
048addec
JD
11441 * keyboard.c (command_loop_1): Don't redisplay directly
11442 if there's a post-command-hook.
3e8cf2ea 11443
048addec
JD
11444 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
11445 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 11446
048addec 114472003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 11448
048addec 11449 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 11450
048addec
JD
11451 * process.c (QCvars): New variable.
11452 (syms_of_process): Intern and staticpro it.
11453 (Fset_process_contact): Removed function.
11454 (Fprocess_variable, Fset_process_variable): New functions.
11455 (syms_of_process): Defsubr them.
11456 (Fstart_process): Initialize private_vars plist to nil.
11457 (Fmake_network_process): New arg :vars to setup the private
11458 variables for new network process.
11459 (server_accept_connection): Copy server's private variables to
11460 client process.
2c10f029 11461
048addec
JD
11462 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
11463 crashes). Code rewritten and simplified. Now directly aligns the
11464 pointer and recalculates pure_bytes_used, rather than aligning the
11465 size and adjusting the pointer.
b8a76c6c 11466
048addec 114672003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 11468
048addec
JD
11469 * process.c (Fset_process_contact): New function.
11470 (syms_of_process): defsubr it.
11471 (make-network-process): Update doc.
3a8d0899 11472
048addec 114732003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 11474
048addec
JD
11475 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
11476 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 11477
048addec 114782003-01-10 Dave Love <fx@gnu.org>
4abc7470 11479
048addec 11480 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 11481
048addec 114822003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 11483
048addec
JD
11484 * process.c (Fmake_network_process): Convert new port number
11485 to host byte order for `:service t' case. From Mario Lang.
bf338245 11486
048addec 114872003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 11488
048addec
JD
11489 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
11490 instead of XtAppProcessEvent.
bf338245 11491
048addec
JD
11492 * xterm.c (handle_one_xevent): New function.
11493 (x_dispatch_event): New function.
11494 (XTread_socket): Call handle_one_xevent.
bf338245 11495
048addec 11496 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 11497
048addec
JD
11498 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
11499 call XQueryPointer to get coordinates.
11500 (popup_get_selection): Do not set popup_activated_flag to zero,
11501 let popup_deactivate_callback do that. Needed for Motif.
11502 Call x_dispatch_event instead of XtDispatchEvent.
11503 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 11504
048addec 115052003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 11506
6bdb309a 11507 * process.c (server_accept_connection): Fix recording of new
048addec
JD
11508 connection's local address in :local property of contact info.
11509 (Fmake_network_process): Record local network address for new
11510 client processes in :local property of contact info.
6bdb309a 11511 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 11512
048addec 115132003-01-07 Dave Love <fx@gnu.org>
00e3ab56 11514
048addec 11515 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 11516
048addec 115172003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 11518
048addec 11519 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 11520
048addec
JD
11521 * eval.c (Fuser_variable_p): Doc change. For custom variables,
11522 use the same test as for custom-variable-p.
8c6d74c6 11523
048addec 115242003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 11525
048addec
JD
11526 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
11527 Count LAST_LINE_MISFIT in scroll margin for end of window.
11528 Move label too_near_end before setting SCROLL_MARGIN_POS.
11529 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 11530
048addec
JD
11531 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
11532 scroll_conservatively case. If scrolling that much doesn't change
11533 STARTP, move it down one line.
e833850f 11534
048addec
JD
11535 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
11536 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 11537
048addec
JD
11538 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
11539 selected frame.
8c6d74c6 11540
048addec 11541 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
3419757d 11542 (syms_of_keymap): Staticpro them.
048addec
JD
11543 (Fapropos_internal): Initialize them and clear them out.
11544 Don't GCPRO them.
8c6d74c6 11545
048addec
JD
11546 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
11547 Doc fixes.
8c6d74c6 11548
048addec
JD
11549 * lisp.h: New misc type Lisp_Save_Value.
11550 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
11551 (XSAVE_VALUE): New macro.
11552 (struct Lisp_Save_Value): New data type.
11553 (union Lisp_Misc): Add u_save_value alternative.
78819ebb 11554 (make_save_value): Declare.
8c6d74c6 11555
048addec 11556 * alloc.c (make_save_value): New function.
8c6d74c6 11557
048addec
JD
11558 * xterm.c (x_catch_errors): Save dpy using make_save_value.
11559 (x_catch_errors_unwind): Call XSync.
8c6d74c6 11560
048addec 115612003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 11562
048addec 11563 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 11564
048addec
JD
11565 * keyboard.c (command_loop_1): Call adjust_point_for_property
11566 in direct action cases for Qforward_char and Qbackward_char.
11567 Set already_adjusted so it won't be done twice.
8c6d74c6 11568
b6189c3b 115692002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 11570
048addec
JD
11571 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
11572 type definition of size_t.
8c609cff 11573
048addec 115742003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 11575
048addec
JD
11576 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
11577 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 11578
048addec 115792002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 11580
048addec
JD
11581 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
11582 to default to t.
fa634a5e 11583
048addec 115842002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 11585
048addec 11586 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 11587
048addec 115882002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 11589
7e26f91b 11590 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
048addec
JD
11591 allow building in a different directory than source. Uses some
11592 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 11593
048addec 115942002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 11595
048addec
JD
11596 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
11597 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
11598 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
11599 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 11600
048addec 116012002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 11602
048addec
JD
11603 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
11604 <scroll-down-aggressively>: Doc fix.
2155ecf3 11605
048addec
JD
11606 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
11607 string as pane name, if there is one.
11608 (set_frame_menubar): Save menu_items_n_panes from each call to
11609 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 11610
048addec
JD
11611 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
11612 Don't try to make last line fully visible if it is past end of window.
61f1d295 11613
048addec 116142002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 11615
048addec
JD
11616 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
11617 (mac_menu_show): Add support for hierarchical popup menus.
11618 (add_menu_item): Remove indentation support.
11619 (fill_submenu, fill_menu): Create hierarchical menus
11620 instead of using indentation.
0b17a217 11621
048addec 116222002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 11623
048addec
JD
11624 * xdisp.c (try_cursor_movement): Don't call try_window here.
11625 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 11626
048addec 11627 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 11628
048addec 116292002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 11630
048addec
JD
11631 * macterm.c (XTread_socket): Call KeyTranslate for control and
11632 meta to deal correctly shifted non-alpha characters, like C-S-5
7e26f91b 11633 being treated like C-%. Do not look for shift key to deal
048addec 11634 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 11635
048addec 116362002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 11637
048addec
JD
11638 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
11639 If it is non-nil, run timers. Use an unwind-protect to requeue
11640 the events that were read ahead.
11641 (popup_get_selection_unwind): New subroutine.
11642 (popup_get_selection_queue): File-scope variable now holds that queue.
11643 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
11644 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
11645 Use an unwind-protect to pop down the dialog box.
11646 (xdialog_show_unwind): New subroutine implements that.
f02cac82 11647
048addec
JD
11648 * xdisp.c (row_containing_pos): Change exit test using last_y.
11649 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 11650
048addec
JD
11651 * lread.c (load_error_handler): New function.
11652 (Fload): Handle errors in Fsubstitute_in_file_name.
11653 Don't expect Fsignal to return.
f02cac82 11654
048addec
JD
11655 * eval.c: Errors and throws work right with interrupt blocking.
11656 (struct catchtag): New elt interrupt_input_blocked.
11657 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
11658 (internal_catch, Fcondition_case, internal_condition_case)
11659 (internal_condition_case_1, internal_condition_case_2): Save it.
11660 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 11661
048addec 11662 * editfns.c (Fformat): Add parens.
f02cac82 11663
048addec
JD
11664 * dired.c (file_name_completion): Fix that change.
11665 Delete special quit-handling code; just use QUIT.
f02cac82 11666
b6189c3b 116672002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 11668
048addec
JD
11669 * dired.c (file_name_completion): Close directory on error
11670 just as in directory_files_internal.
1a590729 11671
048addec 116722002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 11673
048addec
JD
11674 * window.c (Fset_window_configuration): Set old_point to correct
11675 value when new_current_buffer == current_buffer.
f02cac82 11676
048addec 116772002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 11678
048addec
JD
11679 Revisited my earlier fix for the following entry in etc/PROBLEMS:
11680 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
11681 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 11682
048addec
JD
11683 These changes were in part based upon suggestions made by Peter
11684 'Luna' Runestig [peter@runestig.com].
9785d95b 11685
f4a5a485
SM
11686 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
11687 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
11688 (g_b_init_get_sid_identifier_authority ): Add several static
048addec 11689 global variables.
9785d95b 11690
048addec
JD
11691 * w32.c (globals_of_w32): New function. Used to initialize those
11692 global variables that must always be initialized on startup even
11693 when the global variable initialized is non zero. Its primary
11694 purpose at this time is to set the global variables
11695 g_b_init_is_windows_9x, g_b_init_open_process_token,
11696 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
11697 g_b_init_get_sid_identifier_authority to 0 on startup.
11698 Called from main.
9785d95b 11699
048addec
JD
11700 * w32.c (is_windows_9x): Perform initialization only if
11701 g_b_init_is_windows_9x is equal to 0. On initialization set
11702 g_b_init_is_windows_9x equal to 1.
2308af15 11703
048addec
JD
11704 * w32.c (open_process_token): Perform initialization only if
11705 g_b_init_open_process_token is equal to 0. On initialization set
11706 g_b_init_open_process_token equal to 1.
2308af15 11707
048addec
JD
11708 * w32.c (get_token_information): Perform initialization only if
11709 g_b_init_get_token_information is equal to 0. On initialization
11710 set g_b_init_get_token_information equal to 1.
9785d95b 11711
048addec
JD
11712 * w32.c (lookup_account_sid): Perform initialization only if
11713 g_b_init_lookup_account_sid is equal to 0. On initialization
11714 set g_b_init_lookup_account_sid equal to 1.
9785d95b 11715
048addec
JD
11716 * w32.c (get_sid_identifier_authority): Perform initialization
11717 only if g_b_init_get_sid_identifier_authority is equal to 0.
11718 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 11719
f63fd14e 11720 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
11721 those global variables that must always be initialized on startup
11722 even when the global variable initialized is non zero.
11723 Its primary purpose at this time is to initialize the global variable
11724 track_mouse_event_fn.
9785d95b 11725
a64387ee 11726 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 11727 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 11728
048addec 11729 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 11730
f63fd14e 11731 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
11732 initialize those global variables that must always be initialized
11733 on startup even when the global variable initialized is non zero.
11734 Its primary purpose at this time is to initialize the global
11735 variables get_menu_item_info and set_menu_item_info.
9785d95b 11736
048addec
JD
11737 * w32menu.c (initialize_frame_menubar): Remove initialization of
11738 get_menu_item_info and set_menu_item_info.
9785d95b 11739
048addec 11740 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 11741
048addec
JD
11742 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
11743 Declare them.
9785d95b 11744
048addec
JD
11745 * emacs.c (main): Call globals_of_w32 prior to calling
11746 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
11747 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
11748 is defined.
9785d95b 11749
048addec
JD
11750 * w32term.c (x_update_window_begin): Fix Windows API error
11751 detected by BoundsChecker. Test to determine if
11752 w32_system_caret_hwnd is NULL prior to attempting to use
11753 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 11754
048addec
JD
11755 * w32term.c (x_update_window_end): Fix Windows API error
11756 detected by BoundsChecker. Test to determine if
11757 w32_system_caret_hwnd is NULL prior to attempting to use
11758 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 11759
048addec 117602002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 11761
048addec
JD
11762 * coding.c (coding_system_require_warning): New variable.
11763 (syms_of_coding): DEFVAR it.
b6da19ef 11764
048addec 11765 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 11766
048addec
JD
11767 * fileio.c (choose_write_coding_system): Even if
11768 Vcoding_system_for_write is non-nil, if
11769 coding_system_require_warning is nonzero, call
11770 Vselect_safe_coding_system_function.
bfcf6dbe 11771
048addec 117722002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 11773
048addec
JD
11774 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
11775 (lisp): Add font-core.
2c568af5 11776
048addec 117772002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 11778
048addec
JD
11779 * textprop.c (text_read_only): New arg `propval'.
11780 (get_char_property_and_overlay): Remove unused var `next_overlay'.
11781 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 11782
048addec 117832002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 11784
048addec 11785 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 11786
048addec 117872002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 11788
048addec
JD
11789 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
11790 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
11791 Be more careful about when help_events are generated.
96720f09 11792
048addec 117932002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 11794
048addec
JD
11795 * macterm.c (mac_check_for_quit_char): Correctly set the
11796 modifiers of the event to 0.
11797 * mac.c (sys_select): Duplicate rfds before calling select to
11798 ensure that rfds survive the while loop.
e5ae1c49 11799
048addec 118002002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 11801
048addec
JD
11802 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
11803 row_containing_pos returned NULL.
2eb46b2d 11804
048addec 118052002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 11806
6bdb309a 11807 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 11808 non-blocking.
6bdb309a 11809 (sys_select): Fix sys_select to not use a timeout larger than
048addec 11810 the one given.
b11f1d8a 11811
048addec 118122002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 11813
048addec 11814 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 11815
048addec 118162002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 11817
048addec
JD
11818 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
11819 as the last thing.
a4ac5b17 11820
048addec 118212002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 11822
048addec 11823 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 11824
048addec 118252002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 11826
048addec
JD
11827 * editfns.c (Fformat): Handle precision in string conversion
11828 specifiers like libc functions do (ie, print at most that many
11829 characters).
85cce843 11830
048addec 118312002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 11832
048addec
JD
11833 * xdisp.c (row_containing_pos): Check more carefully
11834 whether charpos is really in the row before returning it.
0d4d26a7 11835
048addec 118362002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 11837
048addec 11838 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 11839
048addec
JD
11840 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
11841 each stack frame. This may change as it could be time consuming.
0d4d26a7 11842
048addec
JD
11843 * macterm.c (mac_check_for_quit_char, quit_char_comp)
11844 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 11845 (mac_initialize): Add code to check for pressing of quit_char
048addec 11846 in the OS event queue.
b11f1d8a 11847
048addec
JD
11848 * mac.c (sys_select): Call mac_check_for_quit_char every second
11849 while blocking on select.
0d4d26a7 11850
048addec
JD
11851 * mac.c (sys_read): Use sys_select to test for input first
11852 before calling read, to allow C-g to break.
9252f7bc 11853
048addec 118542002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 11855
048addec 11856 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 11857
048addec 11858 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 11859
048addec 11860 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 11861
048addec
JD
11862 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
11863 autoload.
9252f7bc 11864
048addec 11865 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 11866
048addec 11867 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 11868
048addec 118692002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 11870
048addec 11871 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 11872
048addec 118732002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 11874
048addec 11875 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 11876
048addec 11877 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 11878
048addec 11879 * alloca.c: Don't use #error.
02d588e2 11880
048addec 118812002-12-03 Dave Love <fx@gnu.org>
02d588e2 11882
048addec
JD
11883 * buffer.c (Qucs_set_table_for_input): New.
11884 (Fget_buffer_create): Use it.
11885 (Qset_buffer_major_mode_hook): Deleted.
11886 (Fset_buffer_major_mode): Revert previous change.
11887 (init_buffer_once): Intern ucs-set-table-for-input.
11888 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
11889 Add &Qucs_set_table_for_input.
451e2697 11890
048addec 118912002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 11892
048addec
JD
11893 * callint.c (Fcall_interactively): Use next_event only if less
11894 than key_count.
72742a99 11895
048addec 118962002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 11897
048addec
JD
11898 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
11899 names to 255 characters.
72742a99 11900
048addec
JD
11901 * macterm.c (XTread_socket): If all frames have been collapsed,
11902 expand the first one before handling drag-and-drop events.
72742a99 11903
048addec
JD
11904 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
11905 which is detected by autoconf.
40e6ff95 11906
048addec 119072002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 11908
048addec
JD
11909 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
11910 offset in two hints table to allow prebinding to be redone and
11911 allow the executable to be stripped.
c02138c6 11912
048addec 119132002-11-29 Dave Love <fx@gnu.org>
c02138c6 11914
048addec
JD
11915 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
11916 already provided.
0e47bbf7 11917
048addec 119182002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 11919
048addec
JD
11920 * xdisp.c (start_display): Check more intelligently for
11921 whether the line is continued.
11922 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 11923
048addec 119242002-11-28 Dave Love <fx@gnu.org>
44129dcb 11925
048addec
JD
11926 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
11927 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 11928
048addec 119292002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 11930
048addec
JD
11931 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
11932 more descriptive error output from lread.c:Fload upon most require
11933 cycles during boostrapping.
1637fd2c 11934
048addec 119352002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 11936
048addec
JD
11937 * fileio.c (Finsert_file_contents): Give a more appropriate error
11938 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 11939
048addec
JD
11940 * dired.c (Ffile_attributes): Don't return negative file sizes for
11941 files bigger than 2Gb when off_t is 32 bit.
540c2788 11942
048addec 119432002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 11944
048addec 11945 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 11946
048addec
JD
11947 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
11948 Test GETPGRP_VOID instead.
11949 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 11950
048addec
JD
11951 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
11952 Don't define.
11953 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 11954
048addec 11955 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 11956
048addec 119572002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 11958
048addec
JD
11959 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
11960 supported.
4042a81a 11961
048addec 119622002-11-25 Dave Love <fx@gnu.org>
4042a81a 11963
048addec 11964 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 11965
048addec 11966 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 11967
048addec 119682002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 11969
048addec 11970 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 11971
048addec 119722002-11-24 Steven Tamm <steventamm@mac.com>
82122254 11973
048addec
JD
11974 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
11975 determine the size of pointers alloced in unexed space instead
11976 of using possibly invalid emacs_zone pointers. This fixes the
11977 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 11978
048addec 119792002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 11980
048addec 11981 * search.c (Fstring_match): Doc fix.
c1ee53bc 11982
048addec
JD
11983 * callint.c (Fcall_interactively): If a command fails because
11984 `*' detects a read-only buffer, but RECORD_FLAG is set,
11985 record it anyway if the args don't actually do tty input.
5598c32e 11986
048addec 119872002-11-22 Dave Love <fx@gnu.org>
5598c32e 11988
048addec 11989 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 11990
048addec
JD
11991 * keyboard.c (interrupt_signal): Provide forward declaration.
11992 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 11993
048addec 11994 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 11995
048addec 119962002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 11997
048addec
JD
11998 * eval.c (interactive_p): Skip any number of bytecode
11999 and special form frames, in any order.
516eea8e 12000
048addec 120012002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 12002
048addec
JD
12003 * w32fns.c (convert_mono_to_color_image): New function.
12004 (xbm_load, xbm_load_image): Use it when foreground or background
12005 is explicitly set.
04dbfa08 12006
048addec 120072002-11-19 Dave Love <fx@gnu.org>
04dbfa08 12008
048addec 12009 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 12010
048addec 120112002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 12012
048addec
JD
12013 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
12014 (XPutPixel): Swap blue and red.
12015 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
12016 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
12017 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
12018 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 12019
048addec 120202002-11-18 Dave Love <fx@gnu.org>
d824beee 12021
048addec 12022 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 12023
048addec 12024 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 12025
048addec 12026 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 12027
048addec
JD
12028 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
12029 malloc, realloc, calloc.
d824beee 12030
048addec
JD
12031 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
12032 (bcmp): Don't define.
d824beee 12033
048addec 12034 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 12035
048addec 12036 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 12037
048addec 12038 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 12039
048addec 12040 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 12041
048addec
JD
12042 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
12043 Don't include alloca.h.
d824beee 12044
048addec 12045 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 12046
048addec 12047 * regex.c (_GNU_SOURCE): Don't define.
1998560a 12048
048addec 12049 * process.c (_GNU_SOURCE): Don't define.
1998560a 12050
048addec 12051 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 12052
048addec 120532002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 12054
048addec 12055 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 12056
048addec 120572002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 12058
048addec
JD
12059 * dispextern.h (struct face): Add `overstrike' field.
12060 * xterm.c (x_draw_glyph_string_foreground)
12061 (x_draw_composite_glyph_string_foreground): Implement overstriking.
12062 * xfaces.c (load_face_font): Set `face->overstrike' based on
12063 result from choose_face_font.
12064 (best_matching_font, choose_face_font): Add `needs_overstrike'
12065 argument, and use it to return whether overstriking is desirable
12066 for this face/font combo.
12067 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 12068
048addec 120692002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 12070
048addec
JD
12071 This change is my fix for the following entry in etc/PROBLEMS:
12072 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
12073 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 12074
048addec
JD
12075 * w32.c: Added wrapper functions around the win32 API functions
12076 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
12077 GetSidIdentifierAuthority. These wrapper functions serve two
12078 purposes:
12079 1. They ensure that the wrapped function can never be called
12080 when Emacs is running on an operating system on which they are
12081 not supported (Microsoft Windows 95 / 98 / ME).
12082 2. They call the wrapped functions via function pointers rather
12083 than calling them directly. This avoids taking advantage of the
12084 undocumented fact that although these functions are not supported
12085 in the 9x branch of Microsoft Windows, the functions do exist in
12086 the version of advapi32.dll that is found in the 9x branch of
12087 Microsoft Windows.
f60ae425 12088
6bdb309a 12089 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
12090 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
12091 and GetSidIdentifierAuthority with calls to the newly added
12092 wrapper functions.
f60ae425 12093
048addec
JD
12094 * w32.h: Added extern declarations for the following functions:
12095 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
12096 syms_of_w32menu, and void syms_of_fontset.
f60ae425 12097
6bdb309a 12098 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
12099 function pointer track_mouse_event_fn in the handler for the
12100 WM_SETFOCUS message.
3582b6a3 12101
6bdb309a 12102 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
12103 reinitialize the function pointers set_menu_item_info and
12104 get_menu_item_info.
f60ae425 12105
048addec 121062002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 12107
048addec
JD
12108 * sound.c: Added a partial implementation of play-sound-internal
12109 for Microsoft Windows. Added various #ifdef / #else / #endif
12110 code blocks to separate the code that will compile under
12111 Microsoft Windows from the code that is specific to Gnu/Linux.
12112 Moved several blocks of code around to make this separation of code
12113 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 12114
048addec 12115 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 12116
048addec
JD
12117 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
12118 added support for play-sound-internal under Windows would be
12119 included in the build of Emacs.
517f42a0 12120
048addec 121212002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 12122
048addec 12123 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 12124
048addec 12125 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 12126
048addec 121272002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 12128
048addec
JD
12129 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
12130 (adjust_point_for_property): Move out of display and invisible even if
12131 we were already inside before (in case a property was added while
12132 we weren't looking). Be more careful when handling invisible props.
12133 Skip invisible text as if it really wasn't there at all.
aab83f91 12134
048addec 121352002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 12136
048addec
JD
12137 * w32term.c (x_draw_image_foreground)
12138 (w32_draw_image_foreground_1): Use standard copy and invert
12139 operations to draw images.
aab83f91 12140
048addec
JD
12141 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
12142 depth of 1.
12143 (xbm_read_bitmap_data): Invert bits as xbm is read in.
12144 (XPutPixel): Don't invert bits here.
a4478a76 12145
048addec 121462002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 12147
048addec
JD
12148 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
12149 (w32_draw_image_foreground_1): Handle image masks.
12150 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 12151
048addec
JD
12152 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
12153 (x_from_xcolors): Adjust RGB values for W32.
12154 (image_background, image_background_transparent)
12155 (postprocess_image, x_to_xcolors, x_disable_image)
12156 (x_build_heuristic_mask): Adapt for W32 and enable.
12157 (x_create_x_image_and_pixmap): Mark images with palettes as such.
12158 (xbm_load): Remove unused variable.
03670a65 12159
048addec 121602002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 12161
048addec 12162 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 12163
048addec 121642002-11-14 Dave Love <fx@gnu.org>
59daa29a 12165
048addec 12166 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 12167
048addec
JD
12168 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
12169 * xmenu.c (unuse_menu_items, digest_single_submenu):
12170 * xfns.c (x_put_x_image):
12171 * xdisp.c (message2_nolog, set_message):
12172 * undo.c (record_point):
12173 * terminfo.c (tparam):
12174 * syntax.c (scan_sexps_forward):
12175 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
12176 * composite.c (update_compositions):
12177 * cm.c (calccost, cmgoto):
12178 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 12179
048addec 12180 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 12181
048addec
JD
12182 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
12183 Don't declare.
59daa29a 12184
048addec 12185 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 12186
048addec
JD
12187 * fns.c (Fcopy_sequence): Doc fix.
12188 (Fmap_char_table): Cast `call2'.
3947677c 12189
048addec
JD
121902002-11-14 Francesco Potorti` <pot@gnu.org>
12191
12192 * s/sol2-8.h: New file.
12193
121942002-11-14 Kim F. Storm <storm@cua.dk>
12195
12196 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
12197 dependency on `risky-local-variable' and the :propertize form.
12198
121992002-11-12 Stefan Monnier <monnier@cs.yale.edu>
12200
12201 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
12202
12203 * syntax.c (scan_sexps_forward): Undo last patch.
12204 Use a more obvious fix: check eob before updating the syntax table.
12205
122062002-11-09 Stefan Monnier <monnier@cs.yale.edu>
12207
12208 * syntax.c (scan_sexps_forward): Update syntax table before reading
12209 a char rather than after so we don't update the table past eob.
12210
122112002-11-09 Dave Love <fx@gnu.org>
12212
12213 * buffer.c (Fset_buffer_major_mode): Fix last change.
12214
12215 * regex.c (regexec): Fix pmatch declaration.
12216
12217 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
12218
12219 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
12220 to self-inserting characters.
12221 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
12222
12223 * coding.c (Vtranslation_table_for_input): New.
12224 (syms_of_coding): DEFVAR it.
12225
122262002-11-08 Juanma Barranquero <lektu@terra.es>
12227
12228 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
12229 window.
12230
122312002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12232
6bdb309a 12233 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
12234 cp, and i.
12235
122362002-11-06 Dave Love <fx@gnu.org>
12237
12238 * buffer.c (Qset_buffer_major_mode_hook): New.
12239 (Fset_buffer_major_mode): Use it.
12240
122412002-11-06 Richard M. Stallman <rms@gnu.org>
12242
12243 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
12244 and stop_polling.
12245
12246 * process.c (wait_reading_process_input):
12247 Test POLLING_PROBLEM_IN_SELECT, not hpux.
12248 Avoid initialization for auto Lisp_Object var.
12249
12250 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
12251
12252 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
12253
122542002-11-05 Richard M. Stallman <rms@gnu.org>
12255
12256 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
12257
12258 * callint.c (Fcall_interactively): New local filter_specs.
12259 (Fcall_interactively): Check for progn as well as let.
12260 Add a gcpro.
12261 (Qprogn): New variable.
12262 (syms_of_callint): Staticpro and init Qprogn.
12263
122642002-11-04 John Paul Wallington <jpw@shootybangbang.com>
12265
12266 * lread.c (Feval_buffer): Doc fix.
12267
122682002-11-04 Dave Love <fx@gnu.org>
12269
12270 * keyboard.c (read_char): Always translate iff
12271 Vkeyboard_translate_table is a char table and c is valid.
12272
12273 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12274 and fix C types.
12275
122762002-11-03 Stefan Monnier <monnier@cs.yale.edu>
12277
12278 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
12279
12280 * editfns.c (get_pos_property): Don't hardcode Qfield.
12281
12282 * keyboard.c (adjust_point_for_property): Handle `display' prop on
12283 overlays. Also handle `invisible' prop.
12284
122852002-11-02 Stefan Monnier <monnier@cs.yale.edu>
12286
12287 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
12288 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
12289
122902002-11-01 Andreas Schwab <schwab@suse.de>
12291
12292 * editfns.c (Fmessage): Revert last change to properly handle %%.
12293
122942002-11-01 Stefan Monnier <monnier@cs.yale.edu>
12295
12296 * xmenu.c (unuse_menu_items): New fun.
12297 (menu_items_inuse): New var.
12298 (syms_of_xmenu): Initialize it.
12299 (init_menu_items): Use it to detect re-entrance.
12300 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
12301 (Fx_popup_menu): Remove spurious XSETFRAME.
12302
12303 * editfns.c (find_field): Make an exception for nil fields.
12304
123052002-11-01 Dave Love <fx@gnu.org>
12306
12307 * m/gec63.h: Deleted.
12308
123092002-10-31 Dave Love <fx@gnu.org>
12310
12311 * xterm.c (XTread_socket): Fix last change.
12312 (xaw_scroll_callback): Cast call_data to long to avoid warning.
12313
123142002-10-31 Stefan Monnier <monnier@cs.yale.edu>
12315
12316 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
12317
123182002-10-30 Stefan Monnier <monnier@cs.yale.edu>
12319
12320 * editfns.c (overlays_around, get_pos_property): New funs.
12321 (find_field): Use them.
12322 Also be careful not to modify POS before its last use.
12323 (Fmessage): Don't Fformat if there's nothing to format.
12324
123252002-10-30 Dave Love <fx@gnu.org>
12326
12327 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
12328 [HAVE_PTY_H]; Include pty.h.
12329
12330 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
12331
12332 * xterm.c (Qeql): Declare.
12333 (Vx_keysym_table): New.
12334 (syms_of_xterm): Initialize it.
12335 (XTread_socket): Use it. Deal with ASCII keysyms.
12336 (XSetIMValues) [HAVE_X11R6]: Prototype.
12337
12338 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
12339 (lispy_kana_keys): Comment out.
12340 (make_lispy_event) [XK_kana_A]: Comment out.
12341 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
12342 Fix sprintf call.
12343
12344 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
12345 regexp.h change).
12346 (TERMINFO, LIBS_TERMCAP): Define.
12347
12348 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
12349 (bcmp): Define conditional on HAVE_BCMP.
12350 (NO_SIOCTL_H): Don't define.
12351 (TIOCSIGSEND): Don't make conditional on IRIX6.
12352
12353 * s/sol2-5.h: Don't include strings.h.
12354 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
12355
12356 * s/irix6-0.h (IRIX6): Don't define.
12357 (bcopy, bcmp, bzero): Don't undef.
12358
12359 * s/irix6-5.h: Don't include strings.h.
12360 (IRIX6): Don't define.
12361 (bcopy, bcmp, bzero): Don't undef.
12362
12363 * syntax.c (Fforward_comment): Doc fix.
12364
123652002-10-29 Kim F. Storm <storm@cua.dk>
12366
12367 * process.c (Fsignal_process): Allow PROCESS to be specified by
12368 name in addition to pid (as integer or string).
12369
123702002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
12371
12372 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
12373 environments.
12374
123752002-10-27 Kim F. Storm <storm@cua.dk>
12376
12377 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
12378
12379 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
12380
12381 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
12382
12383 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
12384
123852002-10-26 Richard M. Stallman <rms@gnu.org>
12386
12387 * editfns.c (Fformat): Detect invalid format letters for floats.
12388
123892002-10-25 Kenichi Handa <handa@m17n.org>
12390
12391 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
12392 (x_set_title): Likewise.
12393
123942002-10-25 Juanma Barranquero <lektu@terra.es>
12395
12396 * macgui.h:
12397 * w32gui.h: Remove definition of XColor.
12398
12399 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
12400
124012002-10-24 Kim F. Storm <storm@cua.dk>
12402
12403 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
12404 Callers changed (supply dummy arg).
12405
12406 * lisp.h (get_window_cursor_type): Update prototype.
12407
12408 * w32term.c (x_display_and_set_cursor): Get active_cursor from
12409 get_window_cursor_type to track system caret.
12410
124112002-10-24 Kim F. Storm <storm@cua.dk>
12412
12413 * process.c (Fformat_network_address): New function.
12414 (syms_of_process): Defsubr it.
12415 (list_processes_1): Use it to format :local/:remote address if
f9711de4 12416 service/host is not set; before Emacs would crash in that case.
048addec
JD
12417 (Fmake_network_process): Don't use Ffind_operation_coding_system
12418 to setup coding system if host or service is not set.
12419
124202002-10-23 Juanma Barranquero <lektu@terra.es>
12421
12422 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
12423
12424 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
12425 COLORREF.
12426
12427 * macgui.h:
12428 * w32gui.h: Add definition of XColor.
12429
12430 * macfns.c:
12431 * w32fns.c:
12432 * xfaces.c: Remove definition of XColor.
12433
124342002-10-22 Stefan Monnier <monnier@cs.yale.edu>
12435
12436 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
12437
12438 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
12439 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
12440 window if it is dedicated.
12441 (Fshrink_window): Add preserve_before as was done for enlarge_window.
12442 (Vspecial_display_function): Update docstring.
12443
12444 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
12445 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
12446 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
12447
124482002-10-21 Stefan Monnier <monnier@cs.yale.edu>
12449
12450 * casefiddle.c (casify_region): Don't treat a prefix char as part
12451 of a word when at the beginning.
12452
124532002-10-17 Juanma Barranquero <lektu@terra.es>
12454
12455 * lread.c (syms_of_lread): Fix typos.
12456
124572002-10-17 Dave Love <fx@gnu.org>
12458
12459 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
12460
124612002-10-16 Richard M. Stallman <rms@gnu.org>
12462
12463 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
12464
124652002-10-14 Juanma Barranquero <lektu@terra.es>
12466
12467 * w16select.c (syms_of_win16select): Fix docstring for
12468 `selection-coding-system'.
12469
12470 * w32select.c (syms_of_w32select): Likewise.
12471
124722002-10-14 Stefan Monnier <monnier@cs.yale.edu>
12473
12474 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
12475 a backslash-quoted char.
12476 (scan_lists, scan_sexps_forward): Pacify the compiler.
12477
124782002-10-13 Richard M. Stallman <rms@gnu.org>
12479
12480 * window.c (window_scroll): Set immediate_quit.
12481
12482 * print.c (print): When backquote form is the car of a list,
12483 output in old style. Use old_backquote_output to output all
12484 comma forms inside it in old style too.
12485
12486 * buffer.h (struct buffer): Move `undo_list' down below `name'.
12487
124882002-10-11 Markus Rost <rost@math.ohio-state.edu>
12489
12490 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
12491 batch mode).
12492
12493 * lread.c (Fload): Doc fix (load-suffixes).
12494
124952002-10-10 Steven Tamm <steventamm@mac.com>
12496
12497 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
12498 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
12499 Also switch the default to Qnil from Qt.
12500
125012002-10-08 Kenichi Handa <handa@m17n.org>
12502
12503 * coding.c (code_convert_region): When we need more GAP for
12504 conversion, pay attention to the case that coding->produced is not
12505 greater than coding->consumed.
12506
125072002-10-07 Richard M. Stallman <rms@gnu.org>
12508
12509 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
12510
125112002-10-06 Andrew Choi <akochoi@shaw.ca>
12512
12513 * macmenu.c (mac_menu_show): Add j to count menu items; match
12514 menu_item_selection to it to find selected item.
12515
125162002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12517
12518 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
12519 cases. The correct fix is to pass ReparentNotify to Xt.
12520 The shell widget interprets ConfigureNotify differently depending
12521 on if it has been reparented or not.
12522
125232002-10-05 Markus Rost <rost@math.ohio-state.edu>
12524
12525 * editfns.c (Fformat_time_string): Doc fix.
12526
125272002-10-05 John Paul Wallington <jpw@shootybangbang.com>
12528
12529 * fns.c (Flength): Doc fix.
12530
125312002-10-04 Stefan Monnier <monnier@cs.yale.edu>
12532
12533 * keyboard.c (keyremap): New struct.
12534 (read_key_sequence): Use it: globally replace keytran_foo with
12535 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
12536 keytran_next and fkey_next to just `next'.
12537
125382002-10-04 Steven Tamm <steventamm@mac.com>
12539
12540 * macterm.c (keycode_to_xkeysym_table): Change return to be
12541 treated like an X keysym.
12542
125432002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12544
12545 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
12546 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
12547 This is to also handle x/y changes that occur because of a resize.
12548
125492002-10-02 John Paul Wallington <jpw@shootybangbang.com>
12550
12551 * frame.c (Vdelete_frame_functions): New variable.
12552 (syms_of_frame): Initialize and defvar it.
12553 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
12554 it when frame's `tooltip' parameter is non-nil.
12555
12556 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
12557
12558 * w32fns.c (x_create_tip_frame): Likewise.
12559
12560 * macfns.c (x_create_tip_frame): Likewise.
12561
125622002-09-30 Kenichi Handa <handa@m17n.org>
12563
12564 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
12565 -1 before calling ccl_driver.
12566
12567 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
12568 Only when it is non-nil, handle composition sequence.
12569 (setup_coding_system) <0>: Don't force composition handling.
12570
12571 * Makefile.in (lisp, shortlisp): Add utf-16.elc
12572
125732002-09-29 Richard M. Stallman <rms@gnu.org>
12574
12575 * search.c (Freplace_match): Adjust match data for the substitution
12576 just made in the buffer.
12577
12578 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
12579 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
12580
125812002-09-27 Richard M. Stallman <rms@gnu.org>
12582
12583 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
12584 (read_char): Use them. Do all exits thru the end of the function.
12585
125862002-09-27 Kenichi Handa <handa@etl.go.jp>
12587
12588 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
12589 is nil.
12590
125912002-09-26 Richard M. Stallman <rms@gnu.org>
12592
12593 * regex.h (__restrict_arr): Don't define if already defined.
12594
12595 * coding.c (run_pre_post_conversion_on_str):
12596 Save and restore Vdeactivate_mark.
12597
125982002-09-26 John Paul Wallington <jpw@shootybangbang.com>
12599
12600 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
12601
126022002-09-26 Kenichi Handa <handa@etl.go.jp>
12603
12604 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
12605 nonzero, try face's family at first. Otherwise try FAMILY at first.
12606 (choose_face_font): If C is a single byte char or latin-1, call
12607 try_font_list with PREFER_FACE_FAMILY 1.
12608
126092002-09-21 Richard M. Stallman <rms@gnu.org>
12610
12611 * window.c (select_window_1): Don't select frame.
12612 Set frame's selected window only when frame itself is selected.
12613 (Fselect_window): Doc fix.
12614
126152002-09-18 Kim F. Storm <storm@cua.dk>
12616
12617 * process.c (make-network-process): Doc fix (there is no
12618 network-server-log-function hook).
12619
126202002-09-18 Richard M. Stallman <rms@gnu.org>
12621
12622 * print.c (print): Clear out the unused parts of Vprint_number_table.
12623 (syms_of_print): Doc fix for `print-number-table'.
12624
12625 * unexelf.c (unexec): Undo previous change.
12626
126272002-09-17 Andreas Schwab <schwab@suse.de>
12628
12629 * m/alpha.h [LINUX]: Don't define DATA_START.
12630
126312002-09-16 Dave Love <fx@gnu.org>
12632
12633 * unexelf.c (unexec): Deal with .got, reinstating change from
12634 25-08-1999.
12635
126362002-09-13 Richard M. Stallman <rms@gnu.org>
12637
12638 * s/sol2-6.h (UNEXEC): Comment out definition.
12639
12640 * unexsol.c (unexec): Don't downcase first letter of error msg.
12641
12642 * xfaces.c (Fcolor_supported_p): Just one arg is required.
12643
126442002-09-12 Markus Rost <rost@math.ohio-state.edu>
12645
12646 * unexsol.c: Include buffer.h, charset.h, coding.h.
12647
126482002-09-11 Richard M. Stallman <rms@gnu.org>
12649
12650 * unexsol.c: Don't use report_file_error; do it by hand
12651 using dlerror.
12652
12653 * process.c (wait_reading_process_input, both versions):
12654 Before calling turn_on_atimers, call stop_polling.
12655
12656 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
12657
12658 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
12659 we go to too_near_end, call clear_glyph_matrix.
12660 (redisplay_window): After make_cursor_line_fully_visible,
12661 call clear_glyph_matrix and bypass `goto done'.
12662
12663 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
12664 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
12665
126662002-09-10 Richard M. Stallman <rms@gnu.org>
12667
12668 * fileio.c (Fdo_auto_save): Catch error making directory.
12669 Only call push_message if we need to.
12670 At the same time, make an unwind-protect to pop it.
12671 Rename local message_p to old_message_p.
12672 (do_auto_save_make_dir, do_auto_save_eh): New functions.
12673 (do_auto_save_unwind): Don't call pop_message.
12674
12675 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
12676
12677 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
12678
12679 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
12680
12681 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
12682
126832002-09-10 Stefan Monnier <monnier@cs.yale.edu>
12684
12685 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
12686 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
12687 (re_match_2_internal): Be more careful with infinite loops.
12688
126892002-09-10 Kim F. Storm <storm@cua.dk>
12690
12691 * macros.c (end_kbd_macro): New function.
12692 (Fend_kbd_macro): Use it.
12693
12694 * macros.h (end_kbd_macro): Declare extern.
12695
12696 * keyboard.c (Fdiscard_input): If defining keyboard macro,
12697 end and save it instead of discarding it.
12698
126992002-09-09 Markus Rost <rost@math.ohio-state.edu>
12700
12701 * s/sol2-6.h: Fix typo. Add comment.
12702
127032002-09-09 Richard M. Stallman <rms@gnu.org>
12704
12705 * regex.c (regnum_t): Use signed int, not unsigned int.
12706
12707 * s/sol2-6.h: New file.
12708
12709 * s/sol2-5.h (UNEXEC): Definition deleted.
12710
127112002-09-08 Kim F. Storm <storm@cua.dk>
12712
12713 * macros.c (executing_macro_index): Change type to EMACS_INT.
12714 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
12715
12716 * macros.h (executing_macro_index): Change type to EMACS_INT.
12717
127182002-09-06 Richard M. Stallman <rms@gnu.org>
12719
12720 * casetab.c (set_case_table): Make canon table point to eqv table.
12721
127222002-09-06 Juanma Barranquero <lektu@terra.es>
12723
12724 * coding.c (syms_of_coding): Fix spacing.
12725
12726 * composite.c (Fcompose_region_internal)
12727 (Fcompose_string_internal): Likewise.
12728
12729 * data.c (Flsh): Likewise.
12730
12731 * fontset.c (Fset_fontset_font): Likewise.
12732
12733 * macfns.c (Fx_server_max_request_size): Likewise.
12734
12735 * w16select.c (syms_of_win16select): Likewise.
12736
12737 * w32select.c (syms_of_w32select): Likewise.
12738
12739 * xselect.c (syms_of_xselect): Likewise.
12740
127412002-09-05 Richard M. Stallman <rms@gnu.org>
12742
12743 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
12744 call EXTEND_RANGE_TABLE and return a proper value.
12745 (set_image_of_range): Don't call set_image_of_range_1
12746 if no TRANSLATE or if range includes all of Latin-1.
12747 Only call it for the Latin-1 part of the range.
12748 For other cases, make two separate ranges,
12749 one for the original specified characters and one for
12750 their case-conversions.
12751
127522002-09-04 Richard M. Stallman <rms@gnu.org>
12753
12754 * s/sol2-5.h (UNEXEC): Use unexsol.o.
12755
12756 * window.c (displayed_window_lines): Correct for one-off bug
12757 in HEIGHT on non-window displays.
12758
12759 * regex.c (set_image_of_range_1): New function.
12760 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
12761 Return a value to indicate running out of memory.
12762 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
12763 (extend_range_table_work_area): New subroutine.
12764 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
12765 Different calling conventions, and used from set_image_of_range{,_1}.
12766 (IMMEDIATE_QUIT_CHECK): Definitions moved.
12767
127682002-09-04 Juanma Barranquero <lektu@terra.es>
12769
12770 * makefile.w32-in: All dependencies updated.
12771
127722002-09-01 Richard M. Stallman <rms@gnu.org>
12773
12774 * unexsol.c: New file.
12775
12776 * xfns.c (Qbox): Declare external, don't define.
12777
12778 * xdisp.c (redisplay_window) <force-start case>:
12779 If point is on semi-visible last line, reposition
12780 it at previous line.
12781
12782 * alloc.c (display_malloc_warning): Use display-warning.
12783 (malloc_warning_1): Function deleted.
12784
12785 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
12786
12787 * lread.c (read1): Handle #! by skipping the line.
12788
127892002-08-31 Richard M. Stallman <rms@gnu.org>
12790
12791 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
12792 Don't include LDFLAGS.
12793 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
12794
127952002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
12796
12797 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
12798 member of x_display_info unless we compile for some window system.
12799
128002002-08-31 Kim F. Storm <storm@cua.dk>
12801
12802 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
12803 (get_window_cursor_type): Don't use them.
12804 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
12805
128062002-08-30 Kenichi Handa <handa@etl.go.jp>
12807
12808 * xdisp.c (get_next_display_element): Fix previous change.
12809
128102002-08-30 Andrew Choi <akochoi@shaw.ca>
12811
12812 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
12813 (expose_window): Use it to fix the display of overlapping
12814 rows (merge code from xterm.c).
12815
12816 * macfns.c (Qbox): Add extern declaration.
12817
128182002-08-30 Juanma Barranquero <lektu@terra.es>
12819
12820 * w32fns.c (Qbox): Make extern.
12821 (syms_of_w32fns): Remove initialization of Qbox.
12822
128232002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
12824
12825 * xfns.c (Fx_open_connection): Fix error message.
12826
128272002-08-30 Kim F. Storm <storm@cua.dk>
12828
12829 The following changes consolidates the handling of the cursor
12830 type in xdisp.c, moving duplicate code and functionality from
12831 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
12832
12833 * frame.h (enum text_cursor_kinds): Consolidated here.
12834 Added DEFAULT_CURSOR value.
12835 (struct frame) <desired_cursor, cursor_width>
12836 <blink_off_cursor, blink_off_cursor_width>: New fields.
12837 Consolidated from output_x, output_w32 and output_mac structs.
12838 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12839 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
12840
12841 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
12842 Variables consolidated here.
12843 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
12844 (Vcursor_in_non_selected_windows): Renamed from
12845 cursor_in_non_selected_windows and changed to Lisp_Object.
12846 (syms_of_xdisp): Define and staticpro new and moved variables.
12847 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
12848 consolidated here. Recognize Qhollow setting.
12849 (set_frame_cursor_types): New function to set frame cursor types
12850 based on the frame parameters.
12851 (get_window_cursor_type): New function to calculate new cursor
12852 type and width for the specified window. Based on duplicated
12853 code consolidated here.
12854 Enhancements: cursor-in-non-selected-windows may be a cursor type,
12855 check buffer-local alternate-cursor-type and blink-cursor-alist
12856 before using built-in blink off methods.
12857
12858 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
12859
12860 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
12861 (get_specified_cursor_type, get_window_cursor_type)
12862 (set_frame_cursor_types): Added prototypes.
12863
12864 * macfns.c (x_specified_cursor_type): Removed.
12865 (x_set_cursor_type): Use set_frame_cursor_types.
12866 (Qbar, Qbox): Removed.
12867 (syms_of_macfns): Don't intern or staticpro them.
12868
12869 * macterm.c (x_specified_cursor_type): Remove prototype.
12870 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12871 (x_display_and_set_cursor): Use get_window_cursor_type.
12872 Remove unused local variables cursor_non_selected, active_cursor.
12873 Redraw cursor if hbar cursor width changes.
12874 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
12875
12876 * macterm.h (enum text_cursor_kinds): Removed.
12877 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
12878 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12879 (FRAME_DESIRED_CURSOR): Macro removed.
12880
12881 * w32fns.c (Vblink_cursor_alist): Removed.
12882 (Qbar, Qhbar, Qbox, Qhollow): Removed.
12883 (syms_of_w32fns): Don't intern, staticpro, or define them.
12884 (x_specified_cursor_type): Removed.
12885 (x_set_cursor_type): Use set_frame_cursor_types.
12886
12887 * w32term.c (x_specified_cursor_type): Remove prototype.
12888 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12889 (x_display_and_set_cursor): Use get_window_cursor_type.
12890 Remove unused local variables cursor_off_state.
12891 Redraw cursor if hbar cursor width changes.
12892 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
12893
12894 * w32term.h (enum text_cursor_kinds): Removed.
12895 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
12896 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12897 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12898 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
12899 (struct w32_display_info) <x_highlight_frame>: Renamed member from
12900 w32_highlight_frame.
12901
12902 * xfns.c (Vblink_cursor_alist): Removed.
12903 (Qbar, Qhbar, Qbox, Qhollow): Removed.
12904 (syms_of_xfns): Don't intern, staticpro, or define them.
12905 (x_specified_cursor_type): Removed.
12906 (x_set_cursor_type): Use set_frame_cursor_types.
12907
12908 * xterm.c (x_specified_cursor_type): Remove prototype.
12909 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12910 (x_display_and_set_cursor): Use get_window_cursor_type.
12911 Remove unused local variables cursor_off_state.
12912 Redraw cursor if hbar cursor width changes.
12913
12914 * xterm.h (enum text_cursor_kinds): Removed.
12915 (struct output_x) <current_cursor, desired_cursor, cursor_width>
12916 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12917 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12918 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
12919 (x_specified_cursor_type): Remove prototype.
12920
129212002-08-28 Richard M. Stallman <rms@gnu.org>
12922
12923 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
12924 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
12925 (Vblink_cursor_alist): New variable.
12926 (syms_of_w32fns): Initialize and defvar it.
12927 (x_specified_cursor_type): Recognize Qbox for filled box.
12928 Exceptions are hollow boxes.
12929 (Qbox, Qhollow): New variables.
12930 (syms_of_w32fns): Initialize and staticpro them.
12931
12932 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
12933 New macros.
12934 (struct w32_output): New fields blink_off_cursor,
12935 blink_off_cursor_width.
12936 (FRAME_CURSOR_WIDTH): New macro.
12937
12938 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
12939 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
12940
12941 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
12942 for bar cursor.
12943
12944 * w32term.c (expose_overlaps): New function.
12945 (expose_window): Use it to fix the display of overlapping rows.
12946
129472002-08-28 Simon Josefsson <jas@extundo.com>
12948
12949 * xfns.c (Fx_open_connection): Improve help when X connection
12950 fails, xhost is insecure and xauth is better.
12951
129522002-08-28 Juanma Barranquero <lektu@terra.es>
12953
12954 * makefile.w32-in: Add missing dependencies on w32term.h and
12955 composite.h.
12956
12957 * emacs.c (USAGE1): Add missing newline.
12958
129592002-08-27 Andrew Choi <akochoi@shaw.ca>
12960
12961 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
12962
129632002-08-27 Richard M. Stallman <rms@gnu.org>
12964
12965 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
12966 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
12967 (Vblink_cursor_alist): New variable.
12968 (syms_of_xfns): Initialize and defvar it.
12969 (x_specified_cursor_type): Recognize Qbox for filled box.
12970 Exceptions are hollow boxes.
12971 (Qbox, Qhollow): New variables.
12972 (syms_of_xfns): Initialize and staticpro them.
12973
12974 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
12975 New macros.
12976 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
12977
12978 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
12979 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
12980
12981 * emacs.c (main): Handle --script.
12982 (USAGE1): Mention --script.
12983 (standard_args): Define sort order for --script.
12984
129852002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
12986
12987 * xdisp.c (redisplay_updating_p): Variable removed.
12988 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
12989 New variables.
12990 (init_iterator): Don't free realized faces if
12991 inhibit_free_realized_faces is set.
12992 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
12993 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
12994 initialize Qinhibit_free_realized_faces.
12995
12996 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
12997 when iterator is adding glyphs to a glyph matrix.
12998
129992002-08-27 Kenichi Handa <handa@etl.go.jp>
13000
13001 * xdisp.c (get_next_display_element): In unibyte case, don't use
13002 octal form for such eight-bit characters that can be converted to
13003 multibyte char.
13004
130052002-08-26 Kim F. Storm <storm@cua.dk>
13006
b6189c3b
KS
13007 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
13008 foreground and background colors. From Joe Buehler.
048addec
JD
13009
130102002-08-26 Miles Bader <miles@gnu.org>
13011
13012 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
13013
130142002-08-25 Andrew Choi <akochoi@shaw.ca>
13015
13016 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
13017 defined instead of MAC_OSX.
13018
13019 * s/darwin.h (select): Define select to sys_select only if
13020 HAVE_CARBON is defined.
13021 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
13022 (DONT_REOPEN_PTY): #def it.
13023
13024 * macterm.c (XTread_socket): Remove code to call
13025 SendEventToEventTarget for keys with command modifiers when
13026 mac_command_key_is_meta is nil.
13027
130282002-08-24 Andreas Schwab <schwab@suse.de>
13029
13030 * eval.c (Fdefvar): Fix last change.
13031
130322002-08-23 Richard M. Stallman <rms@gnu.org>
13033
13034 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
13035 Record variables in load history as (defvar . VAR).
13036 (Fdefvar): Don't record in load history if no initial value.
13037 (Qdefvar): New variable.
13038 (syms_of_eval): Init and staticpro it.
13039
13040 * lread.c (syms_of_lread): Doc fix.
13041 (build_load_history): Use Fmember to see if a definition
13042 is already in the Vload_history element.
13043
13044 * process.c (Fstart_process): Remove /: from program name.
13045
13046 * emacs.c (decode_env_path): Don't add /: if file name handler
13047 has a `safe-magic' property.
13048
13049 * callproc.c (Fcall_process): Remove /: from program name.
13050
130512002-08-23 Stefan Monnier <monnier@cs.yale.edu>
13052
13053 * regex.c (PATFETCH): Remove the translating fetch.
13054 (PATFETCH_RAW): Rename to PATFETCH.
13055 (set_image_of_range): New fun.
13056 (SET_RANGE_TABLE_WORK_AREA): Use it.
13057 (regex_compile): Don't translate the pattern chars so eagerly.
13058 Only do it when inserting an `exactn' bytecode or when handling
13059 a char-range.
13060 (mutually_exclusive_p): Avoid empty statement.
13061
130622002-08-22 Kim F. Storm <storm@cua.dk>
13063
13064 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
13065 end up on a partially visible line; this reverts a specific part
13066 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
13067 display error which has been reported several times now.
13068 However it introduces the problem that changes was supposed to fix.
13069 See my comments in the source if you want to debug this further.
13070
130712002-08-20 Kenichi Handa <handa@etl.go.jp>
13072
13073 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
13074
130752002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
13076
13077 * msdos.c (croak): Add `void' to definition.
13078
c1380aa6 13079 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
13080 Don't define them, they are defined in msdos.c.
13081
13082 * mem-limits.h [MSDOS]: Declare etext.
13083
13084 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
13085 `const' since CORRECT_DIR_SEPS modifies its target.
13086
130872002-08-19 Kim F. Storm <storm@cua.dk>
13088
2fb0ce67 13089 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
13090 KEEP-RECORD to avoid clearing lossage when we just want to clear
13091 the current key sequence (kmacro needs this).
13092
130932002-08-19 Kenichi Handa <handa@localhost>
13094
13095 * composite.c (run_composition_function): Call FUNC if it is fboundp.
13096
13097 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
13098 cons, return Qnil.
13099
131002002-08-17 Richard M. Stallman <rms@gnu.org>
13101
13102 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
13103
13104 * sysdep.c [!VMS]: Include sys/files.h.
13105
13106 * editfns.c (save_restriction_restore): Defend from unchained marker.
13107
13108 * buffer.c (overlays_at): Handle extending vec uniformly.
13109 (overlays_in): Handle extending vec from length 0 as in overlays_at.
13110
131112002-08-15 Andrew Choi <akochoi@shaw.ca>
13112
13113 * mac.c (init_mac_osx_environment): New function.
13114
13115 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
13116
131172002-08-14 Kim F. Storm <storm@cua.dk>
13118
13119 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
13120 executing macro before appending to it (when used from Lisp).
13121 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
13122 which is called prior to each iteration of macro (for kmacro.el).
13123 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
13124
13125 * lisp.h (Fexecute_kbd_macro): Update prototype.
13126
13127 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
13128
131292002-08-14 Kenichi Handa <handa@etl.go.jp>
13130
13131 * xselect.c (QUTF8_STRING): New variable.
13132 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
13133 (x_atom_to_symbol): Likewise.
13134 (x_get_local_selection): New argument local_request. If it is
13135 nonzero, call handler_fn with the second arg nil.
13136 (x_handle_selection_request): Call x_get_local_selection with
13137 local_request 0.
13138 (lisp_data_to_selection_data): Don't encode the string here.
13139 (Fx_get_selection_internal): Call x_get_local_selection with
13140 local_request 1.
13141 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
13142
13143 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
13144
13145 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
13146
131472002-08-13 Richard M. Stallman <rms@gnu.org>
13148
13149 * minibuf.c (Fminibufferp): New function.
13150 (syms_of_minibuf): Defsubr it.
13151 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
13152
131532002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
13154
13155 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
13156
131572002-08-12 Richard M. Stallman <rms@gnu.org>
13158
13159 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
13160 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
13161 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
13162 already.
13163
13164 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
13165
131662002-08-11 Andrew Choi <akochoi@shaw.ca>
13167
13168 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
13169 (Vmac_pass_command_to_system): New variable.
13170 (Vmac_pass_control_to_system): New variable.
13171 (do_mouse_moved): Check wp with is_emacs_window.
13172 (XTread_socket): Check window_ptr with is_emacs_window.
13173 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
13174 events back to Mac Toolbox for processing, depending on values of
13175 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
13176 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
13177 Vmac_pass_control_to_system.
13178
131792002-08-10 Kenichi Handa <handa@etl.go.jp>
13180
13181 * coding.c (unencodable_char_position): New function.
13182 (Funencodable_char_position): New function.
13183 (syms_of_coding): Defsubr Funencodable_char_position.
13184
131852002-08-10 Andrew Choi <akochoi@shaw.ca>
13186
13187 * mac.c (sys_select) [MAC_OSX]: New function.
13188
13189 * macterm.c (MakeMeTheFrontProcess): New function.
13190 (mac_initialize): Call MakeMeTheFrontProcess.
13191
13192 * s/darwin.h: Define select to sys_select.
13193
131942002-08-09 Richard M. Stallman <rms@gnu.org>
13195
13196 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
13197
131982002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
13199
13200 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
13201 end of the buffer.
13202
132032002-08-08 Ken Raeburn <raeburn@mit.edu>
13204
13205 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
13206
13207 * puresize.h (BASE_PURESIZE): Increase to 910000.
13208
132092002-08-08 Kenichi Handa <handa@etl.go.jp>
13210
13211 * coding.c (Ffind_operation_coding_system): For write-region, if
13212 VISIT is a filename, make it the target.
13213
132142002-08-07 Richard M. Stallman <rms@gnu.org>
13215
13216 * alloc.c (mark_object): Detect long lists for debugging.
13217 (mark_object_loop_halt): New variable.
13218
13219 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
13220
13221 * data.c (Fmake_variable_frame_local): Doc fix.
13222
132232002-08-01 David Ponce <david@dponce.com>
13224
13225 * w32menu.c (local_heap, local_alloc, local_free): New macros.
13226 (malloc_widget_value, free_widget_value)
13227 (w32_free_submenu_strings): Use them.
13228
13229 (push_submenu_start, push_submenu_end, push_left_right_boundary)
13230 (push_menu_pane, push_menu_item, single_keymap_panes)
13231 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
13232 (single_submenu, set_frame_menubar)
13233 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
13234
13235 (Fx_popup_menu): Don't show pop up menu until preceding one is
13236 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
13237
13238 * w32menu.c: Changes adapted from xmenu.c
13239 (set_frame_menubar): First parse all submenus,
13240 then make widget_value trees from them.
13241 Don't allocate any widget_value objects
13242 until we are done with the parsing.
13243 (parse_single_submenu): New function.
13244 (digest_single_submenu): New function.
13245 (single_submenu): Function deleted, replaced by those two.
13246
132472002-08-04 Andrew Choi <akochoi@shaw.ca>
13248
13249 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
13250 returns a valid window pointer before proceeding for keyDown and
13251 autoKey events.
13252
132532002-08-03 Andrew Choi <akochoi@shaw.ca>
13254
13255 * macterm.c (USE_CARBON_EVENTS): New macro.
13256 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
13257 (x_iconify_frame): Call CollapseWindow.
13258 (Vmac_reverse_ctrl_meta): New variable.
13259 (Vmac_wheel_button_is_mouse_2): New variable.
13260 (init_mac_drag_n_drop): New function.
13261 (mac_do_receive_drag): New function.
13262 (mac_handle_service_event): New function.
13263 (init_service_handler): New function.
13264 (mac_to_emacs_modifiers): New function.
13265 (mac_event_to_emacs_modifiers): New function.
13266 (mac_get_mouse_btn): New function.
13267 (mac_convert_event_ref): New function.
13268 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
13269 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
13270 mac_get_mouse_btn.
13271 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
13272
13273 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
13274 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
13275 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
13276 TOOL_BAR_EVENT for MAC_OS as well.
13277 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
13278 as for WINDOWS_NT.
13279 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
13280
13281 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
13282
132832002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
13284
13285 * xdisp.c (forward_to_next_line_start): Fix a condition that
13286 lead to a newline being skipped.
13287
132882002-08-02 Andrew Choi <akochoi@shaw.ca>
13289
13290 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
13291
132922002-08-01 Richard M. Stallman <rms@gnu.org>
13293
13294 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
13295
132962002-07-31 Andrew Choi <akochoi@shaw.ca>
13297
13298 * macfns.c: #undef init_process before #define-ing it.
13299
13300 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
13301 HAVE_CARBON is defined.
13302
133032002-07-31 Richard M. Stallman <rms@gnu.org>
13304
13305 * xmenu.c (set_frame_menubar): First parse all submenus,
13306 then make widget_value trees from them.
13307 Don't allocate any widget_value objects
13308 until we are done with the parsing.
13309 (parse_single_submenu): New function.
13310 (digest_single_submenu): New function.
13311 (single_submenu): Function deleted, replaced by those two.
13312
133132002-07-30 Juanma Barranquero <lektu@terra.es>
13314
13315 * w32proc.c (syms_of_ntproc): Fix docstring of
13316 `w32-get-true-file-attributes'.
13317
133182002-07-28 Richard M. Stallman <rms@gnu.org>
13319
13320 * s/hpux8.h (HPUX8): Define this before including hpux.h.
13321 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
13322
13323 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
13324
13325 * keyboard.c (make_lispy_event):
13326 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
13327 Explicitly clear up_modifier in event->modifiers.
13328
133292002-07-27 Richard M. Stallman <rms@gnu.org>
13330
13331 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
13332
13333 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
13334 for bar cursor.
13335
133362002-07-26 Kenichi Handa <handa@etl.go.jp>
13337
13338 * coding.c (detect_coding_iso2022): While checking a byte sequence
13339 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
13340 it in the normal loop.
13341
133422002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
13343
13344 * xterm.c (expose_overlaps): New function.
13345 (expose_window): Use it to fix the display of overlapping rows.
13346
13347 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
13348
133492002-07-23 Ken Raeburn <raeburn@gnu.org>
13350
13351 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
13352 since it only depends on XUINT.
13353
13354 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
13355 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
13356 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
13357 Macros deleted.
3947677c 13358
77d1daf2
AS
13359 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
13360 its value over other approaches.
13361 * sysdep.c (start_of_data): Don't define the function if a macro
13362 form has been defined.
8a8e19a3 13363
048addec
JD
133642002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
13365
13366 * xdisp.c (redisplay_updating_p): New variable.
13367 (init_iterator): Don't free realized faces when
13368 redisplay_updating_p is set.
13369 (redisplay_internal): Set redisplay_updating_p while updating
13370 the display.
13371
133722002-07-23 Richard M. Stallman <rms@gnu.org>
13373
13374 * editfns.c (Fmessage): Treat "" like nil.
13375
133762002-07-23 Kenichi Handa <handa@etl.go.jp>
13377
13378 * xdisp.c (face_before_or_after_it_pos):
13379 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
13380
133812002-07-22 Juanma Barranquero <lektu@terra.es>
13382
13383 * callproc.c (init_callproc) [DOS_NT]:
13384 Initialize Vshared_game_score_directory to nil.
13385 (syms_of_callproc) [DOS_NT]: Likewise.
13386
133872002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
13388
13389 * xdisp.c (display_line): Replace an abort with xassert.
13390
133912002-07-21 Richard M. Stallman <rms@gnu.org>
13392
13393 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
13394 and END_UNCHANGED when setting buffer_unchanged_p.
13395 Use current_matrix_up_to_date_p to decide whether to use
13396 try_cursor_movement.
13397
13398 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
13399
13400 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
13401
13402 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
13403 Set to nil if dir does not exist.
13404 (syms_of_callproc): Init unconditionally and simply.
13405
13406 * buffer.c (Fbuffer_list): Doc fix.
13407
134082002-07-21 Ken Raeburn <raeburn@gnu.org>
13409
13410 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
13411
13412 * buffer.c (mmap_realloc): When shrinking, make sure number of
13413 pages to unmap is rounded towards zero.
13414
13415 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
13416 (XSETINT): Deleted.
13417
13418 * m/att3b.h (XINT): Don't define.
13419 (VALBITS, VALMASK, XTYPE): Deleted.
13420 (DATA_SEG_BITS): Define.
13421 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
13422 ARRAY_MARK_FLAG): Deleted.
13423 (DATA_SEG_BITS): Define.
13424 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
13425 (DATA_SEG_BITS): Define.
13426
134272002-07-20 Richard M. Stallman <rms@gnu.org>
13428
13429 * print.c (print_error_message): New args CONTEXT and CALLER.
13430 Calls changed.
13431
13432 * lisp.h (print_error_message): Declare new args.
13433
13434 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
13435 and CONTEXT to print_error_message, don't print them here.
13436 For a Quit, don't use Vsignaling_function.
13437 Call message_log_maybe_newline.
13438
13439 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
13440
134412002-07-20 Kim F. Storm <storm@cua.dk>
13442
13443 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
13444
134452002-07-19 Ken Raeburn <raeburn@gnu.org>
13446
13447 * bytecode.c (struct byte_stack): Pointers into byte string now
13448 point to const.
13449 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
13450 const.
13451 * charset.h (BCOPY_SHORT): Source pointer now points to const.
13452 * coding.c (encode_eol, detect_coding, detect_eol):
13453 (decode_coding, encode_coding, detect_coding_system):
13454 Source strings now treated as const.
13455 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
13456 modify Lisp string contents.
13457 * coding.h (decode_coding, encode_coding, detect_coding,
13458 detect_eol): Declarations updated.
13459 * composite.c (compose_chars_in_text): Treat Lisp string contents
13460 as const.
13461 * dispnew.c (safe_bcopy): Source pointer now points to const.
13462 * lisp.h (STRING_COPYIN): New macro.
13463 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
13464 (internal_with_output_to_temp_buffer): Declarations updated.
13465 * print.c (temp_output_buffer_setup):
13466 (internal_with_output_to_temp_buffer): Buffer name argument is now
13467 pointer to const.
13468 * sound.c (struct sound_device): Function pointer field "write"
13469 buffer argument now points to const.
13470 (vox_write): Buffer argument points to const.
13471 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
13472 contents as const.
13473 * sysdep.c (emacs_write): Buffer pointer now const.
13474 * term.c (encode_terminal_code): Buffer pointer now const.
13475 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
13476 (x_face_list_fonts, x_update_menu_appearance):
13477 (hash_string_case_insensitive): Treat Lisp string contents as const.
13478
134792002-07-19 Juanma Barranquero <lektu@terra.es>
13480
048addec
JD
13481 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
13482
13483 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
13484 (Ffile_name_as_directory): Fix argument name in docstring.
13485 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
13486
134872002-07-18 Richard M. Stallman <rms@gnu.org>
13488
13489 * data.c (Fdefalias): Doc fix.
13490
134912002-07-17 Dave Love <fx@gnu.org>
13492
13493 * intervals.h (text_property_stickiness): Use P_.
13494
13495 * ccl.c: Remove `emacs' conditionals.
13496 (ccl_backtrace_table): Fix size spec.
13497 (ccl_driver): Fix type errors.
13498
134992002-07-16 Ken Raeburn <raeburn@gnu.org>
13500
13501 * alloc.c (xstrdup, make_string, make_unibyte_string)
13502 (make_multibyte_string, build_string): String pointer args now
13503 point to const.
13504 * charset.c (find_charset_in_text, c_string_width):
13505 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
13506 * fileio.c (report_file_error):
13507 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
13508 (count_combining_before, count_combining_after, insert_1_both):
13509 (insert, insert_and_inherit, insert_string):
13510 (insert_before_markers, insert_before_markers_and_inherit):
13511 * lread.c (intern, oblookup, hash_string):
13512 * minibuf.c (temp_echo_area_glyphs):
13513 * search.c (fast_c_string_match_ignore_case):
13514 * sysdep.c (emacs_open, set_file_times):
13515 * xfaces.c (xstricmp):
13516 * xdisp.c (store_frame_title, string_char_and_length):
13517 (message_dolog, message2, message2_nolog, set_message): Likewise.
13518 (set_message_1): Cast message string argument to const pointer.
13519 * editfns.c (general_insert_function): Insertion function now
13520 takes pointer to const for input data.
13521 * charset.h (find_charset_in_text, c_string_width):
13522 (parse_str_as_multibyte): Declarations updated.
13523 * dispextern.h (xstricmp): Declaration updated.
13524 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
13525 (count_size_as_multibyte, count_combining_before):
13526 (count_combining_after, insert_1, insert_1_both, message_dolog):
13527 (insert, insert_and_inherit, insert_before_markers)
13528 (insert_before_markers_and_inherit, set_message, message2):
13529 (message2_dolog, build_string, make_string, make_unibyte_string):
13530 (make_multibyte_string, intern, oblookup, report_file_error):
13531 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
13532 (emacs_open, xstrdup): Declarations updated.
13533 * systime.h (set_file_times): Declaration updated.
13534
13535 * charset.c (find_charset_in_text, lisp_string_width): Use const
13536 for pointer to lisp string data.
13537 * charset.h (FETCH_STRING_CHAR_ADVANCE):
13538 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
13539 * coding.c (Ffind_coding_systems_region_interval):
13540 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
13541 (Fmake_directory_internal, Fdelete_directory):
13542 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
13543 * fontset.c (font_family_registry, fs_query_fontset):
13544 (list_fontsets):
13545 * frame.c (Fframe_parameter):
13546 * keyboard.c (cmd_error_internal):
13547 * keymap.c (Fdescribe_buffer_bindings):
13548 * lread.c (complete_filename_p, openp):
13549 * minibuf.c (Fminibuffer_complete_word):
13550 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
13551 (face_before_or_after_it_pos, next_element_from_string):
13552 (get_overlay_arrow_glyph_row, display_mode_element):
13553 (decode_mode_spec_coding):
13554 * xterm.c (same_x_server): Likewise.
13555
13556 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
13557 settings of non-existent fields.
13558
13559 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
13560 copy a lisp value.
13561
13562 * lread.c (Fintern_soft): Use string macros instead of
13563 Lisp_String fields.
13564 * keyboard.c (echo_char, parse_modifiers_uncached):
13565 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
13566 * textprop.c (validate_interval_range, interval_of): Likewise.
13567
13568 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
13569
13570 * charset.h (FETCH_STRING_CHAR_ADVANCE)
13571 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
13572 XSTRING()->size_byte.
13573
13574 * lisp.h (SDATA, SREF): Produce rvalue.
13575 (SSET): New macro.
13576 * alloc.c (make_event_array): Use SSET for storing into a string.
13577 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
13578 a string.
13579 * casefiddle.c (casify_object): Use SSET.
13580 * charset.h (FETCH_STRING_CHAR_ADVANCE)
13581 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
13582 address of string contents.
13583 * data.c (Faref): Use SDATA.
13584 (Faset): Use SDATA, SSET.
13585 * dired.c (directory_files_internal): Use SSET.
13586 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
13587 (Fread_file_name): Use SREF, SSET.
13588 * fns.c (concat): Use SSET.
13589 (concat, Fdelete): Use SDATA.
13590 * insdel.c (insert_from_string_1): Use SDATA.
13591 * keyboard.c (Fevent_convert_list): Use SREF.
13592 * lread.c (Fload): Use SDATA, SSET.
13593 * macfns.c (validate_x_resource_name): Use SSET.
13594 * process.c (status_message): Use SSET.
13595 * search.c (wordify): Use SDATA.
13596 (Freplace_match): Use SREF.
13597 * w32fns.c (validate_x_resource_name): Use SSET.
13598 * xfns.c (validate_x_resource_name): Use SSET.
13599 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
13600
136012002-07-16 Richard M. Stallman <rms@gnu.org>
13602
13603 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
13604
13605 * xdisp.c (reconsider_clip_changes):
13606 Don't test prevent_redisplay_optimizations_p.
13607 (redisplay_internal): Test prevent_redisplay_optimizations_p
13608 along with clip_changed in some cases.
13609 (try_window_id): Likewise.
13610 (redisplay_window): New local var buffer_unchanged_p.
13611
13612 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
13613
13614 * process.c (create_process): Test USG_SUBTTY_WORKS.
13615 (process_send_signal): Clean up handling of GID.
13616 Detect errors in ioctls meant to set GID.
13617
13618 * window.c (temp_output_buffer_show):
13619 Don't set prevent_redisplay_optimizations_p.
13620
136212002-07-15 Juanma Barranquero <lektu@terra.es>
13622
13623 * eval.c (Fdefvaralias): Add docstring argument.
13624
136252002-07-15 Ken Raeburn <raeburn@gnu.org>
13626
13627 * lisp.h (STRING_INTERVALS): Produce rvalue.
13628 (STRING_SET_INTERVALS): New macro.
13629 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
13630 * fns.c (Fstring_as_multibyte): Likewise.
13631 * intervals.c (balance_possible_root_interval, delete_interval)
13632 (create_root_interval, copy_intervals_to_string): Likewise.
13633 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
13634 instead of 0.
13635
136362002-07-14 Ken Raeburn <raeburn@gnu.org>
13637
13638 * lisp.h (STRING_SET_CHARS): New macro.
13639 (SCHARS, SBYTES): Produce rvalues.
13640 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
13641 * fns.c (concat): Likewise.
13642 * lread.c (read_vector): Likewise.
13643
3419757d 13644 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
048addec 13645 (STRING_SET_UNIBYTE): New macro.
3419757d 13646 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
048addec
JD
13647 length of -1) changed to use STRING_SET_UNIBYTE.
13648 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13649 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
13650 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
13651 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
13652 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
13653 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
13654 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
13655 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
13656 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
13657 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
13658 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
13659 STRING_BYTES or indirection changed to SCHARS, SBYTES,
13660 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
13661 unchanged for now.
13662
136632002-07-13 Kim F. Storm <storm@cua.dk>
13664
13665 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
13666
136672002-07-12 Richard M. Stallman <rms@gnu.org>
13668
13669 * fileio.c (Fwrite_region): Doc fix.
13670
13671 * print.c (print_error_message): Don't handle Vsignaling_function here.
13672
13673 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
13674 (command_loop_1): Avoid certain actions after memory-full error.
13675
13676 * eval.c (Fsignal): Don't call cancel_hourglass.
13677 For a memory-full error, don't call Vsignal_hook_function
13678 and don't set Vsignaling_function.
13679
13680 * process.c (process_send_signal): Add abort call.
13681
136822002-07-11 Markus Rost <rost@math.ohio-state.edu>
13683
13684 * keymap.c (Fkey_binding): Fix typo.
13685
136862002-07-11 Richard M. Stallman <rms@gnu.org>
13687
13688 * alloc.c (Vmemory_full): New variable.
3419757d 13689 (Vmemory_signal_data): Rename from memory_signal_data.
048addec
JD
13690 Uses changed.
13691 (syms_of_alloc): Defvar them.
13692 (memory_full, buffer_memory_full): Set Vmemory_full.
13693
13694 * lisp.h (Vmemory_full): Add declaration.
13695 (current_column, indented_beyond_p): Change declaration.
13696
13697 * indent.c (last_known_column): Declare as double, not float.
13698 (current_column, current_column_1, string_display_width)
13699 (position_indentation): Return `double'.
13700 (indented_beyond_p): Arg `column' is `double'. Callers changed.
13701
13702 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
13703 (back_to_previous_visible_line_start)
13704 (reseat_at_next_visible_line_start, next_element_from_buffer):
13705 Use `double', not `float', when calling indented_beyond_p.
13706
3419757d 13707 * s/hpux11.h (BROKEN_SA_RESTART): Define.
048addec
JD
13708
13709 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
13710
137112002-07-11 Juanma Barranquero <lektu@terra.es>
13712
13713 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
13714 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
13715 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
13716 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
13717 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
13718 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
13719
137202002-07-10 Juanma Barranquero <lektu@terra.es>
13721
d814862a
JB
13722 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
13723 All callers changed.
048addec
JD
13724
137252002-07-09 Stefan Monnier <monnier@cs.yale.edu>
13726
13727 * data.c (Fdefalias): Add an optional `docstring' argument.
13728 (set_internal, Fsetq_default): Use XCAR/XCDR.
13729
13730 * composite.c (HASH_VALUE, HASH_KEY):
13731 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
13732
137332002-07-09 Kenichi Handa <handa@etl.go.jp>
13734
13735 * callproc.c (Fcall_process): Fix previous change.
13736
137372002-07-07 Stefan Monnier <monnier@cs.yale.edu>
13738
13739 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
13740 Add support for hash-tables.
13741 (Ftry_completion): Return t even if the string appears multiple times.
13742
13743 * fns.c (Fnconc): Use XCDR.
13744 (Fprovide): Use CONSP and XCDR.
13745 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
13746 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
13747 (Fmake_hash_table): Accept `:size nil'.
13748 (Fmakehash): Delete: moved to subr.el.
13749 (syms_of_fns): Don't defsubr makehash.
13750
13751 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
13752 (HASH_TABLE_SIZE): Move from fns.c.
13753
137542002-07-07 Richard M. Stallman <rms@gnu.org>
13755
13756 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
13757 Instead just return 0 when there is something to be done.
13758 (try_scrolling): If make_cursor_line_fully_visible returns 0,
13759 retry scrolling as if cursor were off the bottom.
13760 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
13761 return CURSOR_MOVEMENT_MUST_SCROLL.
13762 (redisplay_window): If make_cursor_line_fully_visible returns 0,
13763 go to try_to_scroll.
13764
13765 * buffer.c (Fbuffer_local_value): Store current value into its binding
13766 so we get the up-to-date value for the binding that is loaded.
13767
13768 * eval.c (Fdefmacro): Doc fix.
13769
137702002-07-05 Dave Love <fx@gnu.org>
13771
13772 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
13773 correctly.
13774
13775 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
13776 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
13777 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
13778 CCL_LookupCharConstTbl.
13779 (syms_of_ccl): Defvar translation-hash-table-vector.
13780
137812002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13782
13783 * xdisp.c: Remove unused variable `face'.
13784
137852002-07-04 Juanma Barranquero <lektu@terra.es>
13786
13787 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
13788 obsolescence information.
13789
137902002-07-03 Andrew Choi <akochoi@shaw.ca>
13791
13792 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
13793 pattern. Search cache first.
13794 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
13795 for Japanese font.
13796 (XLoadQueryFont): Use it.
13797
137982002-07-02 Richard M. Stallman <rms@gnu.org>
13799
13800 * keymap.c (Fdefine_key): Doc fix.
13801
13802 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
13803
138042002-07-02 Juanma Barranquero <lektu@terra.es>
13805
13806 * keymap.c (syms_of_keymap): Fix typo.
13807
138082002-07-01 Andrew Choi <akochoi@shaw.ca>
13809
13810 * s/darwin.h: Define POSIX_SIGNALS.
13811
13812 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
13813 and FSRefMakePath to convert FSSpec returned with Apple Event to
13814 Posix pathname.
13815 (mac_initialize) [TARGET_API_MAC_CARBON]:
13816 Call init_required_apple_events and disable the `Quit' menu item
13817 provided automatically by the Carbon Toolbox.
13818
138192002-07-01 Dave Love <fx@gnu.org>
13820
13821 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
13822 for K&R.
13823
13824 * xterm.c: Fix prototype for K&R.
13825
13826 * term.c (costs_set): Declare static, non-initialized for pcc.
13827
138282002-07-01 Richard M. Stallman <rms@gnu.org>
13829
13830 * keyboard.c (timer_last_idleness_start_time): New variable.
13831 (timer_start_idle): Set that.
13832 (read_key_sequence): Use that to reset timer_idleness_start_time
13833 to previous value.
13834
13835 * window.c (Frecenter): With arg, set optional_new_start.
13836
13837 * xdisp.c (redisplay_internal): Make optional_new_start really work.
13838
13839 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
13840 buffer for completion.
13841
138422002-06-29 Ken Raeburn <raeburn@gnu.org>
13843
13844 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
13845
138462002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13847
13848 * keyboard.c (readable_filtered_events): New function that filters
13849 FOCUS_IN_EVENT depending on parameter.
13850 (readable_events): Calls readable_filtered_events, not filtering
13851 FOCUS_IN_EVENT.
13852 (get_filtered_input_pending): New function, filtering parameter passed
13853 to readable_filtered_events.
13854 (get_input_pending): Calls get_filtered_input_pending, not filtering
13855 FOCUS_IN_EVENT.
13856 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
13857 FOCUS_IN_EVENT.
13858
13859 * xterm.h (struct x_output): Add focus_state.
13860
13861 * xterm.c (x_focus_changed): New function.
13862 (x_detect_focus_change): New function.
13863 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
13864 EnterNotify and LeaveNotify to track X focus changes.
13865
138662002-06-28 Andreas Schwab <schwab@suse.de>
13867
13868 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
13869
138702002-06-27 Kim F. Storm <storm@cua.dk>
13871
13872 * xdisp.c: (mode_line_string_list, mode_line_string_face)
13873 (mode_line_string_face_prop): New variables.
13874 (store_mode_line_string): New function.
13875 (display_mode_element): Use store_mode_line_string to
13876 add mode-line string elements to mode_line_string_list
13877 when mode_line_string_list is non-nil.
13878 (Fformat_mode_line): Now returns propertized string by
13879 default. New arg NO-PROPS to ignore properties.
13880 (decode_mode_spec): Only add two dashes for %- in propertized
13881 mode-line string.
13882 (syms_of_xdisp): Init and staticpro mode_line_string_list.
13883
138842002-06-27 Stefan Monnier <monnier@cs.yale.edu>
13885
13886 * minibuf.c (minibuffer_completion_contents): Add return type.
13887
138882002-06-27 Juanma Barranquero <lektu@terra.es>
13889
13890 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
13891
138922002-06-26 Juanma Barranquero <lektu@terra.es>
13893
13894 * fileio.c (read_file_name_cleanup): Add missing return.
13895
138962002-06-26 Richard M. Stallman <rms@gnu.org>
13897
13898 * window.c (Frecenter): Don't set force_start flag.
13899
13900 * minibuf.c (do_completion, Fminibuffer_complete_word)
13901 (Fminibuffer_completion_help): Complete just the text before point.
13902 (minibuffer_completion_contents): New function.
13903
13904 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
13905
13906 * frame.c (frames_bury_buffer): Function deleted.
13907
139082002-06-25 Miles Bader <miles@gnu.org>
13909
13910 * callint.c (Fcall_interactively): When checking to see if doprnt hit
13911 the end of callint_message, allow for a terminating '\0'.
13912
139132002-06-24 Juanma Barranquero <lektu@terra.es>
13914
13915 * w32select.c: Include composite.h
13916
13917 * w16select.c: Likewise.
13918
139192002-06-24 Kenichi Handa <handa@etl.go.jp>
13920
13921 * callproc.c (Fcall_process): If code detection is necessary,
13922 call detect_coding directly here.
13923
13924 * coding.c (detect_eol): Preserve coding->cmp_data.
13925
13926 * w16select.c (Fw16_get_clipboard_data):
13927 * w32fns.c (w32_to_x_font):
13928 * w32select.c (Fw32_get_clipboard_data):
13929 * xselect.c (selection_data_to_lisp_data):
13930 * xterm.c (XTread_socket): Disable composition handling.
13931
139322002-06-24 Stefan Monnier <monnier@cs.yale.edu>
13933
13934 * print.c (temp_output_buffer_setup): Kill all local variables.
13935
139362002-06-22 Stefan Monnier <monnier@cs.yale.edu>
13937
13938 * lread.c (Fread): Remove redundant and imprecise declaration.
13939
13940 * xfns.c (check_x_display_info): Use check_x_frame.
13941
13942 * .gdbinit (xprintsym): Use the new `xname' field.
13943 (xsymbol): Use it.
13944
139452002-06-22 Jason Rumney <jasonr@gnu.org>
13946
13947 * w32fns.c (file_dialog_callback): New function.
13948 (Fx_file_dialog): Allow selecting directories as well as files.
13949
139502002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13951
13952 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 13953 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
13954
139552002-06-17 Andrew Choi <akochoi@shaw.ca>
13956
13957 * macterm.c (mac_scroll_area): Set foreground and backcolor to
13958 black and white before scrolling. Restore frame background and
13959 foreground color after scrolling.
13960 (do_window_update): Call XClearWindow before calling expose_frame.
13961 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
13962 FRAME_FOREGROUND_PIXEL of frame.
13963
13964 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
13965 test Mac command key as <ALT> key.
13966
139672002-06-17 Stefan Monnier <monnier@cs.yale.edu>
13968
13969 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
13970
13971 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
13972 Lookup keys in function-key-map immediately so that key-translation-map
13973 can be applied earlier.
13974 Remove function_key_possible and key_translation_possible, replaced
13975 by checking `keytran_start < t'.
13976
13977 * .gdbinit (xsymbol): Use the new `xname' field.
13978
139792002-06-17 Andrew Choi <akochoi@shaw.ca>
13980
13981 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
13982 test Mac command key as <ALT> key.
13983
13984 * mac.c (do_applescript): Call initialize_applescript if necessary
13985 when first called. Dispose of result_desc only when there is no error.
13986 (Fdo_applescript): Use %d format specifier instead of %ld.
13987
139882002-06-16 Andrew Choi <akochoi@shaw.ca>
13989
13990 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
13991 of FrontWindow for cases keyDown and autoKey.
13992
13993 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
13994 Vdefault_fontset to Monaco with mac-roman coding.
13995
13996 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
13997 init_process before and after inclusion of Carbon/Carbon.h, resp.
13998
13999 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
14000 cursor_gc.
14001 (add_font_name_table_entry): New function.
14002 (init_font_name_table): Use add_font_name_table_entry; add italic,
14003 bold, and bold-italic entries for truetype fonts.
14004
14005 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
14006 for Mac too.
14007 (try_font_list) [MAC_OS]: If no font matches given registry, try
14008 fonts with any registry matching face_family.
14009 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
14010
14011 * s/darwin.h: If autoconf detects the Ncurses library, define
14012 LIBS_TERMCAP to -lncurses to use it.
14013
140142002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
14015
14016 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
14017
140182002-06-15 Richard M. Stallman <rms@gnu.org>
14019
14020 * window.c (Fset_window_configuration): Explicitly preserve
14021 the point value that new_current_buffer had at the start.
14022
140232002-06-14 Juanma Barranquero <lektu@terra.es>
14024
14025 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
14026 Fix typos.
14027
140282002-06-14 Kim F. Storm <storm@cua.dk>
14029
14030 * insdel.c (insert_1_both, insert_from_string_1)
14031 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
14032 insert happened in the end_unchanged region. Otherwise, the
14033 redisplay may be confused and duplicate the last line in the
14034 buffer [seen after save-buffer when require-final-newline==t].
14035
140362002-06-13 Jason Rumney <jasonr@gnu.org>
14037
14038 * w32.c (init_environment): Remove EMACSLOCKDIR.
14039 (stat): Swap _S_IFDIR and _S_IFREG.
14040
140412002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14042
14043 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
14044 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
14045 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
14046 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
14047 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
14048 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
14049 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
14050 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
14051 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
14052 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
14053 SELECTION_REQUEST_EVENT, selection_clear_event to
14054 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
14055 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
14056 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
14057 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
14058 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
14059 no_event to NO_EVENT.
14060
140612002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14062
14063 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
14064
140652002-06-12 Stefan Monnier <monnier@cs.yale.edu>
14066
14067 * intervals.c (textget): Don't forget to `return'.
14068 (lookup_char_property): Use XCAR/XCDR.
14069
140702002-06-12 Juanma Barranquero <lektu@terra.es>
14071
14072 * xdisp.c (Fformat_mode_line): Fix typo.
14073
140742002-06-12 Kim F. Storm <storm@cua.dk>
14075
14076 * xdisp.c (Fformat_mode_line): New function.
14077 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
14078 (store_frame_title_char, store_frame_title): Use unconditionally.
14079 (init_xdisp): Defsubr Fformat_mode_line.
14080 Initialize frame_title_buf etc. unconditionally.
14081
140822002-06-11 Stefan Monnier <monnier@cs.yale.edu>
14083
14084 * keyboard.c (read_key_sequence):
14085 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
14086 things through those maps after downcasing events.
14087 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
14088 applies after function-key-map.
14089 Make sure that keytran can be done in the middle in the sequence.
14090 Be careful not to throw away events past the one we downcase.
14091
14092 * lread.c (read_integer): Remove unused var `tem'.
14093 (read1): Fix int/Lisp_Object mixup.
14094
14095 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
14096
140972002-06-11 Richard M. Stallman <rms@gnu.org>
14098
14099 * keyboard.c (readable_events): Ignore any number of
14100 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
14101
141022002-06-09 Miles Bader <miles@gnu.org>
14103
14104 * xfaces.c (Ftty_supports_face_attributes_p): New function.
14105 (parse_rgb_list, tty_lookup_color): New functions.
14106 (tty_defined_color): Use `tty_lookup_color' to do all the work.
14107 (color_distance, Fcolor_distance): New functions.
14108 (TTY_SAME_COLOR_THRESHOLD): New macro.
14109 (Qtty_color_standard_values): New variable.
14110 (syms_of_xfaces): Initialize new vars & functions.
14111
141122002-06-08 Colin Walters <walters@verbum.org>
14113
14114 * textprop.c (Vchar_property_alias_alist): New variable.
14115 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
14116
14117 * intervals.c (lookup_char_property): New function for looking up
14118 overlay and text properties, created from textget.
14119 (textget): Use it.
14120
14121 * intervals.h (lookup_char_property): Declare.
14122 (Vchar_property_alias_alist): Declare.
14123
14124 * buffer.c (Foverlay_get): Use lookup_char_property.
14125
141262002-06-07 Sam Steingold <sds@gnu.org>
14127
14128 * xselect.c (lisp_data_to_selection_data): Fix last change:
14129 *data_ret is not a Lisp string, while unibyte_string is.
14130
141312002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
14132
14133 * xselect.c (lisp_data_to_selection_data): Fix last change:
14134 set size_ret.
14135
141362002-06-07 Andreas Schwab <schwab@suse.de>
14137
14138 * m/amdx86-64.h: New file.
14139
141402002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
14141
14142 * fns.c (Fstring_make_unibyte): Doc fix.
14143
14144 * xselect.c (lisp_data_to_selection_data): If the requested type
14145 is STRING, call string_make_unibyte to encode the selected text
14146 as a string.
14147
14148 * window.c (Fset_window_hscroll): Doc fix.
14149
141502002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14151
14152 * fileio.c (choose_write_coding_system):
14153 Call select-safe-coding-system properly.
14154
141552002-06-03 Richard M. Stallman <rms@gnu.org>
14156
14157 * xdisp.c (message_with_string): Error if STRING is not a string.
14158
14159 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
14160
14161 * fileio.c (choose_write_coding_system): Pass FILE arg to
14162 Vselect_safe_coding_system_function.
14163
141642002-06-03 Ken Raeburn <raeburn@gnu.org>
14165
14166 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
14167
141682002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
14169
14170 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
14171 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
14172 * keymap.c (describe_command): Likewise.
14173 * minibuf.c (read_minibuf): Likewise.
14174
14175 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
14176 Cast `current_column' return value to int.
14177 (back_to_previous_visible_line_start)
14178 (reseat_at_next_visible_line_start, next_element_from_buffer):
14179 Cast `indented_beyond_p' 3rd arg to float.
14180
14181 * indent.c (last_known_column): Now a float.
14182 (current_column_1, position_indentation, current_column)
14183 (string_display_width): Return float.
14184 (Fcurrent_column): Cast `current_column' return value to int.
14185 (Fcurrent_indentation): Cast `position_indentation' retval to int.
14186 (indented_beyond_p): Third arg now a float.
14187 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
14188
14189 * lisp.h (current_column): Now returns float.
14190 (indented_beyond_p): 3rd arg now a float.
14191
141922002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
14193
14194 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
14195 is Qcompound_text_with_extensions.
14196
14197 * xselect.c (lisp_data_to_selection_data): Always set selection
14198 type as string if x_encode_text returns streingp non-NULL.
14199
14200 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
14201
142022002-05-30 Richard M. Stallman <rms@gnu.org>
14203
14204 * window.c (Fset_window_configuration): Correct the handling
14205 of point in current buffer, to work with multiple windows.
14206
142072002-05-29 Colin Walters <walters@verbum.org>
14208
14209 * lread.c (Fread_from_string): Don't depend on order of evaluation
14210 for C function parameters.
14211
142122002-05-28 Richard M. Stallman <rms@gnu.org>
14213
14214 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
14215 way for blinked-off state and for a nonselected window.
14216
14217 * window.c (window_scroll_pixel_based): Don't call Fbolp;
14218 instead, see if the new start pos is at beginning of line.
14219
14220 * fileio.c (Fwrite_region): If START is a string, don't
14221 make any annotations.
14222
14223 * eval.c (syms_of_eval): Doc fix.
14224
142252002-05-28 Colin Walters <walters@debian.org>
14226
14227 * emacs.c (USAGE1): Add --no-splash.
14228 (standard_args): Ditto.
14229
142302002-05-28 Colin Walters <walters@gnu.org>
14231
14232 * lread.c (readchar_count): New variable.
14233 (readchar): Increment it.
14234 (unreadchar): Decrement it.
14235 (read_multibyte): Decrement it.
14236 (Vread_with_symbol_positions): New variable.
14237 (Vread_symbol_positions_list): New variable.
14238 (read_internal_start): New function, created from Fread and
14239 Fread_from_string. Handle Vread_symbol_positions_list and
14240 Vread_with_symbol_positions.
14241 (readevalloop, Fread, Fread_from_string): Use it.
14242 (read1): Use readchar_count to add symbol positions to
14243 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
14244 (syms_of_lread): DEFVAR_LISP and initialize them.
14245
14246 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
14247 (substitute_object_recurse, substitute_object_in_subtree)
14248 (substitute_in_interval): Prototype.
14249 (read_multibyte): Return c if it's less than zero.
14250
142512002-05-28 Kim F. Storm <storm@cua.dk>
14252
14253 * fileio.c (Fread_file_name_internal): Added brute-force
14254 speed up for using predicate file-directory-p.
14255
142562002-05-28 Kim F. Storm <storm@cua.dk>
14257
14258 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
14259 New variables.
14260 (syms_of_fileio): DEFVAR_LISP them.
14261 (read_file_name_cleanup): New unwind function.
14262 (Fread_file_name_internal): Only return completions satifying
14263 Vread_file_name_predicate. Temporarily unwind protect and rebind
14264 default-directory while checking completions against the predicate.
14265 (Fread_file_name): Added PREDICATE argument. Specbind it to
14266 Vread_file_name_predicate during completion.
14267 Call Vread_file_name_function to read the file name if non-nil.
14268
14269 * lisp.h (Fread_file_name): Now has 6 args.
14270
14271 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
14272 predicate for Fread_file_name when reading directory name.
14273 Supply Qnil for predicate in other calls to Fread_file_name.
14274
142752002-05-26 Miles Bader <miles@gnu.org>
14276
14277 * term.c (tty_capable_p): New function.
14278 * dispextern.h (tty_capable_p): New function declaration.
14279 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
14280 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
14281
142822002-05-23 Stefan Monnier <monnier@cs.yale.edu>
14283
14284 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
14285 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
14286 (Vwrite_region_annotate_functions): Docstring fix.
14287
142882002-05-23 Kim F. Storm <storm@cua.dk>
14289
14290 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
14291 phys_cursor's hpos is overwritten. This is still not completely
14292 correct, as it doesn't really make sense to use hpos at all to
14293 get the cursor glyph (as that is relative to the width of the
14294 characters on the line, which may have changed during the update).
14295
142962002-05-22 Jason Rumney <jasonr@gnu.org>
14297
14298 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
14299 Lisp_Object.
14300 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
14301 Use modified enumfont_t struct.
14302
14303 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
14304
14305 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
14306 Handle the `hbar' cursor type.
14307 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
14308
14309 * w32fns.c (Qhbar): New variable.
14310 (x_specified_cursor_type): Use it.
14311
143122002-05-21 Ken Raeburn <raeburn@gnu.org>
14313
14314 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
14315 now, when the address is needed.
14316
143172002-05-21 Colin Walters <walters@gnu.org>
14318
14319 * Makefile.in (shortlisp): Add font-core.el.
14320
143212002-05-20 Richard M. Stallman <rms@gnu.org>
14322
14323 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
14324
14325 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
14326 equivalent key bindings here.
14327
143282002-05-20 Ken Raeburn <raeburn@gnu.org>
14329
14330 Change symbol structure to contain a lisp object for the symbol
14331 name:
14332 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
14333 object field named "xname".
14334 (SYMBOL_NAME): New macro.
14335 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
14336 name field.
14337 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
14338 (mark_object, gc_sweep): Use symbol xname field and XSTRING
14339 instead of name field.
14340 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
14341 SYMBOL_NAME instead of XSYMBOL and name field.
14342 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
14343 instead of XSYMBOL and name field.
14344 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
14345 and SYMBOL_NAME instead of XSYMBOL and name field.
14346 * coding.c (Fread_coding_system, code_convert_region1)
14347 (code_convert_string1, code_convert_string_norecord)
14348 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
14349 XSYMBOL and name field.
14350 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
14351 (Fmake_variable_buffer_local, Fmake_local_variable)
14352 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
14353 of XSYMBOL and name field.
14354 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
14355 XSYMBOL and name field.
14356 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
14357 instead of XSYMBOL and name field.
14358 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
14359 XSYMBOL and name field.
14360 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
14361 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
14362 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
14363 instead of XSYMBOL and name field.
14364 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
14365 (parse_modifiers, apply_modifiers, Fevent_convert_list)
14366 (parse_solitary_modifier, Fexecute_extended_command):
14367 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
14368 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
14369 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
14370 of XSYMBOL and name field.
14371 (describe_command, describe_translation): Use SYMBOL_NAME and
14372 assignment instead of XSYMBOL and name field and XSETSTRING.
14373 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
14374 instead of XSYMBOL and name field.
14375 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
14376 name field and XSETSTRING.
14377 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
14378 of XSYMBOL and name field.
14379 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
14380 assignment instead of XSYMBOL and name field and XSETSTRING.
14381 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
14382 XSTRING instead of XSYMBOL and name field.
14383 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
14384 and XSTRING instead of XSYMBOL and name field.
14385 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
14386 and XSTRING instead of XSYMBOL and name field.
14387 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
14388 XSTRING instead of XSYMBOL and name field.
14389 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
14390 of XSYMBOL and name field.
14391 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
14392 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
14393
143942002-05-19 Ken Raeburn <raeburn@gnu.org>
14395
14396 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
14397 and XCDR real rvalues in most configurations.
14398
14399 * buffer.c (fix_overlays_in_range, fix_overlays_before):
14400 Don't take the address of the cdr part of a cons cell; instead, track
14401 the parent cell and call XSETCDR, or set the variable for the head
14402 of the list if we haven't started down the list yet.
14403
144042002-05-19 Richard M. Stallman <rms@gnu.org>
14405
14406 * doc.c (reread_doc_file): Don't ask for confirmation.
14407
144082002-05-18 Jason Rumney <jasonr@gnu.org>
14409
14410 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
14411 (xbm_load_image): Use it.
14412 (xbm_load): Ditto.
14413 (xbm_read_bitmap_data): Reverted to xfns.c version.
14414 From David Ponce <david@dponce.com>.
14415
144162002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
14417
14418 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
14419 2.02 and later.
14420
144212002-05-16 Juanma Barranquero <lektu@terra.es>
14422
14423 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
14424
144252002-05-15 Stefan Monnier <monnier@cs.yale.edu>
14426
14427 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
14428 meaningful test.
14429 (read_char_minibuf_menu_prompt): Fix typo.
14430
144312002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
14432
14433 * eval.c (Fcommandp): Doc fix.
14434
144352002-05-13 Stefan Monnier <monnier@cs.yale.edu>
14436
14437 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
14438 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
14439 (Fset_keymap_parent): Gcpro a bit more.
14440 (access_keymap): Gcpro around meta_map call and around the main loop.
14441 (get_keyelt): Gcpro when following indirect references.
14442 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
14443 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
14444 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
14445 Remove useless ad-hoc remap code.
14446
144472002-05-13 Richard M. Stallman <rms@gnu.org>
14448
14449 * search.c (search_buffer): Give up boyer moore search if inverse
14450 translation change charset_base.
14451
144522002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
14453
14454 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
14455 characters is carried over from the previous block of text, adjust
14456 coding->produced to account for the extra character.
14457
144582002-05-11 Andreas Schwab <schwab@suse.de>
14459
14460 * coding.c (intersection): Keep the elements of the returned list
14461 in the same order as in the first list.
14462
144632002-05-11 Kim F. Storm <storm@cua.dk>
14464
3419757d 14465 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
048addec
JD
14466 only update cmm_size if realloc actually succeeds.
14467 Testing with initial size of 2 elements revealed that using
14468 realloc on GNU/Linux would cause a random trap in xmalloc
14469 later on, so I rewrote the code to use malloc/bcopy/free instead
14470 of realloc.
14471
144722002-05-10 Jason Rumney <jasonr@gnu.org>
14473
14474 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
14475
144762002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
14477
14478 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
14479 parens, to ensure correct evaluation order.
14480
144812002-05-10 Kim F. Storm <storm@cua.dk>
14482
14483 * keymap.c (Vemulation_mode_map_alists): New variable.
14484 (syms_of_keymap): DEFVAR_LISP it.
14485 (current_minor_maps): Process keymap alists in that list before
14486 minor-mode-overriding-map-alist and minor-mode-map-alist.
14487
144882002-05-09 Richard M. Stallman <rms@gnu.org>
14489
14490 * search.c (Freplace_match): Doc fix.
14491
144922002-05-09 Kim F. Storm <storm@cua.dk>
14493
14494 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
14495 Enlarge cursor rectangle drawn around image with non-zero relief.
14496
14497 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
14498 Enlarge cursor rectangle drawn around image with non-zero relief.
14499
14500 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
14501 Enlarge cursor rectangle drawn around image with non-zero relief.
14502
145032002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
14504
14505 * xselect.c (lisp_data_to_selection_data): Don't set selection
14506 type if comes from the Lisp object's car. If the selection
14507 contains a pure ASCII text, always return QSTRING as its type.
14508
145092002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14510
14511 * mac.c (mac-cut-function): Doc fix.
14512
145132002-05-05 Richard M. Stallman <rms@gnu.org>
14514
14515 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
14516
145172002-05-04 Jason Rumney <jasonr@gnu.org>
14518
14519 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
14520 for event-click-count.
14521
14522 * process.c (init_process): Only add server subfeature if we can
14523 use non-blocking I/O.
14524
145252002-05-04 Andrew Choi <akochoi@shaw.ca>
14526
14527 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
14528 repeatedly.
14529
145302002-05-03 Jason Rumney <jasonr@gnu.org>
14531
14532 * process.c (Fmake_network_process): Only support server sockets
14533 when we can make them non-blocking.
14534
14535 * s/ms-w32.h (HAVE_SELECT): Define.
14536
14537 * w32.h (FILE_NDELAY): New flag.
14538
14539 * w32.c (sys_getpeername, fcntl): New functions.
14540 (_sys_read_ahead): Temporarily block on non-blocking sockets.
14541
14542 * w32proc.c: include sys/file.h.
14543
145442002-05-03 Colin Walters <walters@verbum.org>
14545
14546 * callproc.c (Vgame_score_directory): Renamed to
14547 Vshared_game_score_directory.
14548
145492002-04-30 Richard M. Stallman <rms@gnu.org>
14550
14551 * s/gnu.h [emacs]: Include stdio.h.
14552 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
14553
14554 * eval.c (do_autoload): Error if called while preparing to dump.
14555
14556 * fns.c (Frequire): Error if need to load while preparing to dump.
14557
145582002-04-28 Colin Walters <walters@verbum.org>
14559
14560 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
14561 Default to "~/.emacs.d/games".
14562
145632002-04-29 Stefan Monnier <monnier@cs.yale.edu>
14564
14565 * lread.c (openp): Change arg exec_only to predicate.
14566 (build_load_history): Use XCAR/XCDR.
14567 (Flocate_file_internal): New fun.
14568 (syms_of_lread): Defsubr it.
14569 (Fload): Update call to openp.
14570
14571 * lisp.h (openp): Update prototype.
14572
14573 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
14574 * w32proc.c (sys_spawnve):
14575 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
14576 * w32.c (check_windows_init_file):
14577 * sound.c (Fplay_sound_internal):
14578 * process.c (Fstart_process):
14579 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
14580 * mac.c (run_mac_command):
14581 * emacs.c (init_cmdargs):
14582 * callproc.c (Fcall_process): Update call to openp.
14583
14584 * textprop.c (remove_properties): Don't use XCAR without CONSP.
14585
14586 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
14587
145882002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14589
14590 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
14591 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
14592
145932002-04-28 Richard M. Stallman <rms@gnu.org>
14594
14595 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
14596
14597 * eval.c (Fcommandp): New arg for_call_interactively.
14598 * lisp.h (Fcommandp): Declare new arg.
14599
146002002-04-28 Jason Rumney <jasonr@gnu.org>
14601
14602 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
14603
14604 * w32.c (stat, fstat): Use file index information to generate
14605 inodes for directories where available.
14606
146072002-04-26 Andrew Choi <akochoi@shaw.ca>
14608
14609 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
14610 [HAVE_CARBON]: Include Mac object files.
14611
14612 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
14613 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
14614 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
14615 MAC_OSX, and MAC_OS instead of macintosh.
14616
14617 * editfns.c [MAC_OS8]: Include stdio.h.
14618
14619 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
14620
14621 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
14622 Apple Monaco.
14623
78819ebb 14624 * process.c (QCfamily, QCfilte): Declare extern.
048addec
JD
14625 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
14626 calling select.
14627
14628 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
14629
14630 * tparam.c [MAC_OSX]: Don't define BC and UP.
14631
14632 * config.in [HAVE_CARBON]: Add.
14633
14634 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
14635 Move here from mac/src and mac/inc.
14636
14637 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
14638
146392002-04-26 Gerd Moellmann <gerd@gnu.org>
14640
14641 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
14642 Compute phys_cursor_width from the x position returned
14643 by x_draw_glyhs, which is cheaper.
14644 (x_display_and_set_cursor): Compute the buffer-local value
14645 of `cursor-in-non-selected-windows' only when needed.
14646
146472002-04-25 Gerd Moellmann <gerd@gnu.org>
14648
14649 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
14650 cursor on a stretch glyph has a width that depends on
14651 x_stretch_cursor_p.
14652
146532002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14654
14655 * abbrev.c (abbrev-start-location): Doc fix.
14656
14657 * indent.c (Fvertical_motion): Fix last change.
14658
146592002-04-25 Gerd Moellmann <gerd@gnu.org>
14660
14661 * indent.c (Fvertical_motion): Move to the start of the line
14662 containing PT before moving up or down.
14663
146642002-04-24 Gerd Moellmann <gerd@gnu.org>
14665
14666 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
14667 case of writing a whole row, more or less analogous to the case of
14668 writing only parts of a row.
14669
14670 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
14671 0 for NO_CURSOR.
14672
14673 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
14674
146752002-04-23 Colin Walters <walters@verbum.org>
14676
14677 * buffer.c (syms_of_buffer): Doc fix.
14678
146792002-04-23 Gerd Moellmann <gerd@gnu.org>
14680
14681 * xterm.c (notice_overwritten_cursor): Handle the special case
14682 of the cursor being in the first blank non-text line at the
14683 end of a window.
14684
14685 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14686 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14687 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
14688 bar cursors only, to make phys_cursor_width contain what its name
14689 suggests.
14690 (notice_overwritten_cursor): Consider the cursor image erased if
14691 the output area intersects the cursor image in y-direction.
14692
146932002-04-23 Simon Marshall <simon@gnu.org>
14694
14695 * xfns.c (x_set_mouse_color): Change default for cross_cursor
14696 to XC_hand2.
14697
146982002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14699
14700 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
14701
147022002-04-22 Kim F. Storm <storm@cua.dk>
14703
14704 * textprop.c (remove_properties): Fixed trap for malformed plist.
14705
147062002-04-22 Richard M. Stallman <rms@gnu.org>
14707
14708 * cmds.c (Fend_of_line): Handle intangible text in mid line.
14709
14710 * window.c (make_window): Initialize height_fixed_p,
14711 last_cursor_off_p, and p->cursor_off_p slots.
14712
147132002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14714
14715 * fns.c (use-dialog-box): Doc fix.
14716
147172002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14718
14719 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
14720 variables `row', `i' and `area'.
14721 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
14722 toolkit library.
14723
147242002-04-19 Stefan Monnier <monnier@cs.yale.edu>
14725
14726 * xfaces.c (clear_font_table): Don't free the default font of
14727 a frame even if it's on another display.
14728 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
14729 that could be Qt.
14730
147312002-04-19 Juanma Barranquero <lektu@terra.es>
14732
14733 * indent.c (Fmove_to_column): Remove unused local variable
14734 `next_boundary_byte'.
14735 (current_column_1): Likewise.
14736
147372002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
14738
14739 * msdos.c (Qhbar): New variable.
14740 (syms_of_msdos): Intern and staticpro it.
14741 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
14742 cursor type.
14743
147442002-04-19 Dave Lambert <dlambert@acm.org>
14745
14746 Theses change implement an underscore-like (`hbar') cursor.
14747
14748 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
14749
14750 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
14751 Handle the `hbar' cursor type.
14752 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
14753
14754 * xfns.c (Qhbar): New variable.
14755 (syms_of_xfns): Intern and staticpro it.
14756 (x_specified_cursor_type): Handle `hbar' cursor.
14757
14758 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
14759 not defined.
14760
147612002-04-18 Richard M. Stallman <rms@gnu.org>
14762
14763 * textprop.c (remove_properties): New arg LIST allows scanning
14764 either a list or a plist.
14765 (interval_has_some_properties_list): New function, like
14766 interval_has_some_properties using list instead of plist.
14767 All callers changed.
14768 (Fremove_list_of_text_properties): New function.
14769 (syms_of_textprop): Defsubr it.
14770
147712002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
14772
14773 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
14774
147752002-04-17 Juanma Barranquero <lektu@terra.es>
14776
14777 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
14778
147792002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
14780
14781 * window.c (coordinates_in_window): Don't report on margin area
14782 if its width is zero.
14783
147842002-04-16 Jason Rumney <jasonr@gnu.org>
14785
14786 * w32fns.c (Fx_file_dialog): Decode file name before using.
14787
14788 * w32term.c (construct_drag_n_drop): Likewise.
14789
147902002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
14791
14792 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
14793 store load-history in pure space.
14794
14795 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
14796
147972002-04-16 Stefan Monnier <monnier@cs.yale.edu>
14798
14799 * xterm.c (Qlatin_1, Qutf_8): New vars.
14800 (syms_of_xterm): Initialize them.
14801 (XTread_socket): Eliminate incorrect optimization that tried to avoid
14802 decoding the output of X*LookupString.
14803 Always use latin-1 to decode the output of XLookupString.
14804 Try Xutf8LookupString if XmbLookupString failed.
14805
14806 * region-cache.c (new_region_cache): Use BEG.
14807
148082002-04-16 Gerd Moellmann <gerd@gnu.org>
14809
14810 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
14811 configuration files.
14812 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
14813 returns 0.
14814
148152002-04-15 Andreas Schwab <schwab@suse.de>
14816
14817 * config.in: Regenerated using autoheader.
14818
14819 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
14820 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
14821 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
14822 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
14823 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
14824 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
14825 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
14826 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
14827 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
14828 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
14829 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
14830 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
14831 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
14832 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
14833 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
14834 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
14835 STACK_DIRECTION, now set by autoconf.
14836
148372002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14838
14839 * dispnew.c (marginal_area_string): Sort arguments.
14840
14841 * dispextern.h (marginal_area_string): Add prototype.
14842
148432002-04-13 Richard M. Stallman <rms@gnu.org>
14844
14845 * fileio.c (Finsert_file_contents):
14846 Don't call temp_output_buffer_setup--do just part, by hand.
14847
14848 * coding.c (run_pre_post_conversion_on_str):
14849 Don't call temp_output_buffer_setup--do just part, by hand.
14850
14851 * keyboard.c (command_loop_1): Don't call start_hourglass
14852 or cancel_hourglass when executing a macro.
14853
14854 * marker.c (count_markers): New function.
14855
14856 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
14857 grow without limit. Move recently used elements to the front.
14858
148592002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
14860
14861 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
14862
148632002-04-12 Gerd Moellmann <gerd@gnu.org>
14864
14865 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
14866 rows marginal areas.
14867 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
14868 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
14869
14870 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
14871
148722002-04-12 Dave Love <fx@gnu.org>
14873
14874 * dispnew.c (marginal_area_string): New.
14875
14876 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
14877 (Qleft_margin, Qright_margin): Declare.
14878 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
14879
14880 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
14881 note_mode_line_highlight and extended.
14882
14883 * keyboard.c (Qleft_margin, Qright_margin): Declare.
14884 (make_lispy_event): Deal with mouse events in margins.
14885
148862002-04-12 Stefan Monnier <monnier@cs.yale.edu>
14887
14888 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
14889
14890 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
14891 than deactivating the mark if tmm is set to `lambda'.
14892 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
14893 Use a single event for HELP_EVENT.
14894 (Fexecute_extended_command): Save last_point_position.
14895
148962002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14897
14898 * lisp.h (Fpropertize): Add prototype.
14899
14900 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
14901
149022002-04-10 Colin Walters <walters@verbum.org>
14903
14904 * config.in: Add HAVE_SHARED_GAME_DIR.
14905
14906 * callproc.c: (Vgame_score_directory): New variable.
14907 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
14908
149092002-04-10 Richard M. Stallman <rms@gnu.org>
14910
14911 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
14912
149132002-04-09 Stefan Monnier <monnier@cs.yale.edu>
14914
14915 * minibuf.c (read_minibuf): Use empty_string.
14916 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
14917 Short-circuit the search as soon as it "failed".
14918 (Fall_completions): Allow lambda forms and lists of strings for alist.
14919 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
14920 when require_match is nil.
14921 (Ftest_completion): Rename from `test_completion' and export to elisp.
14922 Call the predicate also when alist is a list.
14923 Obey Vcompletion_regexp_list.
14924 (do_completion, Fminibuffer_complete_and_exit): Use it.
14925 (Fassoc_string): Rename from `assoc_for_completion'.
14926 Allow list of strings as well and export to elisp.
14927
149282002-04-08 Stefan Monnier <monnier@cs.yale.edu>
14929
14930 * puresize.h (BASE_PURESIZE): Increase to 900KB.
14931
149322002-04-08 Juanma Barranquero <lektu@terra.es>
14933
14934 * w32.c (sys_accept): Don't hide variable `s'.
14935
149362002-04-05 Gerd Moellmann <gerd@gnu.org>
14937
14938 * callint.c (Fcall_interactively): Use INTEGERP instead of
14939 NUMBERP for checking Vhistory_length.
14940
149412002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14942
14943 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
14944 Doc fix to reflect it.
14945
149462002-04-04 Richard M. Stallman <rms@gnu.org>
14947
14948 * xdisp.c (display_mode_element): New arg RISKY.
14949 Disregard text props found or specified within a variable
14950 that isn't marked risky-local-variable.
14951 (Qrisky_local_variable): New variable.
14952 (syms_of_xdisp): Init and staticpro it.
14953
149542002-04-04 Stefan Monnier <monnier@cs.yale.edu>
14955
14956 * undo.c (record_point): New fun.
14957 (record_delete, record_insert): Use it.
14958
149592002-04-03 Juanma Barranquero <lektu@terra.es>
14960
14961 * doc.c (Fdocumentation): Add missing parentheses.
14962 (Fdocumentation_property): Likewise.
14963
149642002-04-03 Stefan Monnier <monnier@cs.yale.edu>
14965
14966 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
14967 data is 0, just return nil.
14968
149692002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
14970
14971 * msdos.c (syms_of_msdos): Fix last change with
14972 mouse_autoselect_window.
14973
149742002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14975
14976 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
14977 mouse_autoselect_window.
14978
149792002-04-02 Stefan Monnier <monnier@cs.yale.edu>
14980
14981 * keyboard.c (make_lispy_event): Handle unknown keysyms together
14982 with system-specific keysyms. Use it also for unknown function keys.
14983
14984 * doc.c (reread_doc_file): Return whether reload was attempted.
14985 (Fdocumentation, Fdocumentation_property): Don't try to reload
14986 if the doc is 0 and only ask once.
14987
14988 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
14989
149902002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
14991
14992 * keyboard.c (read_char): If the event was Qselect_window,
14993 restore timer_idleness_start_time to its previous value.
14994
14995 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
14996
149972002-04-01 Stefan Monnier <monnier@cs.yale.edu>
14998
14999 * region-cache.c (new_region_cache): Use BEG.
15000
15001 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
15002 Use BEG and BEG_BYTE.
15003
15004 * doc.c (get_doc_string): Return nil if the location is wrong.
15005 (reread_doc_file): New fun.
15006 (Fdocumentation, Fdocumentation_property):
15007 Call it if get_doc_string fails.
15008 (Fsnarf_documentation): Make it work for a dumped Emacs.
15009
15010 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
15011 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
15012
15013 * charset.c (Fstring): Allow 0 arguments.
15014
15015 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
15016
15017 * process.c (DATAGRAM_CONN_P, list_processes_1)
15018 (Fprocess_datagram_address, Fset_process_datagram_address)
15019 (Fset_network_process_options, server_accept_connection):
15020 Fix some int/Lisp_Object confusions (thank you union types).
15021
150222002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15023
15024 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
15025
15026 * w32term.c: Likewise.
15027 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
15028
15029 * keyboard.c (Qselect_window): New symbol.
15030 (head_table): Use it.
15031 (keys_of_keyboard): Bound select-window event to handle-select-window.
15032 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
15033
15034 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
15035 (last_window): New variable.
15036 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
15037 (note_mouse_movement): Remove reimplemented code in #if 0.
15038 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
15039 Emacs windows.
15040
15041 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
15042
150432002-03-31 Gerd Moellmann <gerd@gnu.org>
15044
15045 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
15046 Callers changed.
15047
150482002-03-30 Richard M. Stallman <rms@gnu.org>
15049
15050 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
15051 loop whenever it stops making progress.
15052
15053 * widget.c (set_frame_size): Don't call change_frame_size.
15054
150552002-03-30 Gerd Moellmann <gerd@gnu.org>
15056
15057 * dispnew.c (direct_output_for_insert):
15058 Call mark_window_display_accurate.
15059
150602002-03-29 Jason Rumney <jasonr@gnu.org>
15061
15062 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
15063
150642002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
15065
15066 * Makefile.in (lread.o): Depend on coding.h.
15067
15068 * lread.c (openp, Fload): Encode the file name before passing it
15069 to `stat', `access', and `emacs_open'.
15070 (openp): GCPRO the encoded file name. Don't recompute Lisp
15071 strings unnecessarily.
15072
150732002-03-29 Kim F. Storm <storm@cua.dk>
15074
15075 * fns.c (Flax_plist_put): Doc fix.
15076
150772002-03-28 Miles Bader <miles@gnu.org>
15078
15079 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
15080
150812002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15082
15083 * process.c (set-network-process-options): Add usage.
15084 (make-network-process): Doc fix.
15085
150862002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
15087
15088 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
15089
150902002-03-26 Richard M. Stallman <rms@gnu.org>
15091
15092 * fns.c (Fsubstring_no_properties): New function.
15093 (Flax_plist_get, Flax_plist_put): New functions.
15094 (syms_of_fns): defsubr them.
15095
15096 * xdisp.c (update_menu_bar): Test only update_mode_lines;
15097 don't test or alter w->update_mode_line.
15098
15099 * window.c (Fdisplay_buffer): Doc fix.
15100
151012002-03-24 Richard M. Stallman <rms@gnu.org>
15102
15103 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
15104
151052002-03-24 Gerd Moellmann <gerd@gnu.org>
15106
15107 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
15108 (Fdefmacro): Handle `(declare ...)'.
15109 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
15110 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
15111
151122002-03-24 Jason Rumney <jasonr@gnu.org>
15113
15114 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
15115 (xbm_file_p): Add prototypes.
15116 (xbm_format, xbm_image_p): Sync with xfns.c.
15117 (reflect_byte): New function.
15118 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
15119 (xbm_load_image): Create bitmaps with a depth of 1.
15120 (init_xfns): Enable XBM images.
15121
151222002-03-23 Jason Rumney <jasonr@gnu.org>
15123
15124 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
15125 correctly. Do not pass up_modifier to keyboard buffer.
15126
15127 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
15128
151292002-03-22 Stefan Monnier <monnier@cs.yale.edu>
15130
15131 * Makefile.in (bootstrapclean): New target.
15132 (bootstrap-temacs, bootstrap-doc): Remove.
15133 (bootstrap-emacs): Use a bog-standard `temacs'.
15134 Don't bother to build a DOC file.
15135
15136 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
15137
15138 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
15139 in temacs even if !CANNOT_DUMP.
15140 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
15141
15142 * alloc.c (check_pure_size): Only output a warning.
15143
151442002-03-22 Jason Rumney <jasonr@gnu.org>
15145
15146 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
15147 supported.
15148
15149 * w32term.c (zv_bits): Declare as short, for word alignment.
15150 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
15151 (syms_of_w32term): Define x-use-underline-position-properties.
15152
15153 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
15154 (clear_image_cache): Block input, fix logic, clear matrices in
15155 all frames that share this cache.
15156
151572002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
15158
15159 * emacs.c (main): Update the Copyright year in the blurb printed
15160 by "emacs --version".
15161
15162 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
15163
15164 * xterm.c (XTread_socket): If XK_ISO_Lock and
15165 XK_ISO_Last_Group_Lock are defined, handle keysyms between
15166 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
15167
151682002-03-21 Kim F. Storm <storm@cua.dk>
15169
15170 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
15171 menu-bar bindings in keymap and local-map properties _are_ used.
15172 But try keymap property first in accordance with 2002-01-03 patch.
15173 Added comment describing why this is not always reliable.
15174 (tool_bar_items): Ditto for tool-bar.
15175
151762002-03-21 Jason Rumney <jasonr@gnu.org>
15177
15178 * w32fns.c (x_clear_image_1): Disable color table code.
15179
151802002-03-21 Kim F. Storm <storm@cua.dk>
15181
15182 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
15183 removed the wrong version of the DEFUN macro; fixed it.
15184
15185 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
15186 Fmember rather than Fmemq).
15187 (Fprovide): Check that subfeatures is a list.
15188
15189 * process.c (QCfeature, QCdatagram): Removed variables.
15190 (QCtype, Qdatagram): New variables.
15191 (network_process_featurep): Removed function.
15192 (Fmake_network_process): Removed :feature check.
15193 Use :type 'datagram instead of :datagram t to create a datagram
15194 socket. This allows us to add other connection types (e.g. raw
15195 sockets) later in a consistent manner.
15196 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
15197 supported subfeatures for feature make-network-process.
15198 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
15199 Intern and staticpro QCtype and Qdatagram.
15200 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
15201
15202 * xfns.c: (QCtype): Remove duplicate declaration and
15203 initialization (is now declared in process.c).
15204
15205 * w32fns.c: (QCtype): Remove duplicate declaration and
15206 initialization (is now declared in process.c).
15207
152082002-03-21 Richard M. Stallman <rms@gnu.org>
15209
15210 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
15211 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
15212 when jumping to `fail' to avoid undoing reg changes in the
15213 last iteration of the loop.
15214 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
15215
15216 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
15217 Depend on process.h.
15218
152192002-03-20 Jason Rumney <jasonr@gnu.org>
15220
15221 Most of the following changes are still conditional on HAVE_IMAGES
15222 which is not set by default on Windows.
15223
15224 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
15225
15226 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
15227 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
15228 (four_corners_best, x_clear_image_1, x_clear_image)
15229 (x_alloc_image_color, postprocess_image)
15230 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
15231 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
15232 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
15233
15234 * w32gui.h (struct XImage): Define.
15235
15236 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
15237 extract mouse co-ordinates.
15238
152392002-03-20 Jason Rumney <jasonr@gnu.org>
15240
15241 * w32.c (init_winsock): Dynamically load new server and UDP
15242 socket functions.
15243 (socket_to_fd): New function.
15244 (sys_socket): Use it.
15245 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
15246 (sys_recvfrom, sys_sendto): New wrapper functions.
15247
15248 * process.c (QCfamily, QCfilter): Remove duplicate declaration
15249 and initialization.
15250
15251 * makefile.w32-in (LIBS): Remove $(WSOCK32).
15252
152532002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
15254
15255 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
15256 Don't use "sun" as a variable, it's a predefined constant on Sun
15257 machines.
15258
152592002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15260
15261 * bytecode.c (Fbyte_code): Revert last change.
15262
152632002-03-19 Kim F. Storm <storm@cua.dk>
15264
15265 * makefile.w32-in (LIBS): Add $(WSOCK32).
15266 From David Ponce <dponce@voila.fr>.
15267
152682002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15269
15270 * process.c (wait_reading_process_input): Move variables `pname'
15271 and `pnamelen' down where they are used.
15272
15273 * bytecode.c (Fbyte_code): Discard unused computed value to
15274 prevent gcc warning.
15275
15276 * lisp.h (Fplist_member): Add prototype.
15277
152782002-03-18 Kim F. Storm <storm@cua.dk>
15279
15280 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
15281 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
15282
15283 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
15284 Remove explicit GNU_LINUX settings for datagram support.
15285
152862002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15287
15288 * process.c (Fmake_network_process): Remove unused variable `sa'.
15289 Doc fix. Add usage:.
15290 (set_socket_options): Remove unused variables `optnum' and `opttype'.
15291
152922002-03-17 Richard M. Stallman <rms@gnu.org>
15293
15294 * xdisp.c (cursor_type_changed): New variable.
15295 (redisplay_internal): Redisplay all windows if cursor_type_changed.
15296 Clear it when clearing windows_or_buffers_changed.
15297 (try_cursor_movement, redisplay_window, try_window_id)
15298 (try_window_reusing_current_matrix): Test cursor_type_changed
15299 along with windows_or_buffers_changed.
15300
15301 * window.h (cursor_type_changed): New variable.
15302
15303 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
15304 not update_mode_lines, and always set it to 1.
15305
15306 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
15307 if no frames needed redrawing.
15308
153092002-03-17 Kim F. Storm <storm@cua.dk>
15310
15311 The following changes add support for network server processes,
15312 datagram connections, and local (unix) sockets.
15313
15314 * process.h (struct Lisp_Process): New member log.
15315 Doc fix: Member command used to indicate stopped network process.
15316 Doc fix: Member childp contains plist for network process.
15317 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
15318
15319 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
15320 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
15321 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
15322 New variables.
15323 (NETCONN1_P): New macro.
15324 (DATAGRAM_SOCKETS): New conditional symbol.
15325 (datagram_address): New array.
15326 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
15327 (status_message): Use concat3.
15328 (Fprocess_status): Add `listen' status to doc string. Return `stop'
15329 for a stopped network process.
15330 (Fset_process_buffer): Update contact plist for network process.
15331 (Fset_process_filter): Ditto. Don't enable input for stopped
15332 network processes. Server must listen, even if filter is t.
15333 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
15334 New functions.
15335 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
15336 (Fprocess_contact): Added KEY argument. Handle datagrams.
15337 (list_processes_1): Optionally show only processes with the query
15338 on exit flag set. Dynamically adjust column widths. Omit tty
15339 column if not needed. Report stopped network processes.
15340 Identify server and datagram network processes.
15341 (Flist_processes): New optional arg `query-only'.
15342 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
15343 (conv_lisp_to_sockaddr, set_socket_options)
15344 (network_process_featurep, unwind_request_sigio): New helper functions.
15345 (Fprocess_datagram_address, Fset_process_datagram_address):
15346 (Fset_network_process_options): New lisp functions.
15347 (Fopen_network_stream): Removed. Now defined in simple.el.
15348 (Fmake_network_process): New lisp function. Code is based on previous
15349 Fopen_network_stream, but heavily reworked with new property list based
15350 argument list, support for datagrams, server processes, and local
15351 sockets in addition to old client-only functionality.
15352 (server_accept_connection): New function.
15353 (wait_reading_process_input): Use it to handle incoming connects.
15354 Do not enable input on a new connection if process is stopped.
f63fd14e 15355 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
15356 (send_process): Handle datagram sockets.
15357 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
15358 network process is indicated by setting command field to t .
15359 (Fprocess_send_eof): No-op if datagram connection.
15360 (Fstatus_notify): Don't read input for a stream server socket or a
15361 stopped network process.
15362 (init_process): Initialize datagram_address array.
15363 (syms_of_process): Intern and staticpro new variables, defsubr new
15364 functions.
15365
153662002-03-16 Jason Rumney <jasonr@gnu.org>
15367
15368 * w32fns.c (w32_to_all_x_charsets): Return correct type in
15369 startup case.
15370
153712002-03-16 Richard M. Stallman <rms@gnu.org>
15372
15373 * xdisp.c (redisplay_internal, redisplay_windows):
15374 Use list_of_error to call internal_condition_case_1.
15375 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
15376 so as to catch all errors with no possibility of debugger redisplay.
15377 (list_of_error): New variable.
15378 (syms_of_xdisp): Init and staticpro it.
15379
15380 * print.c (print_object): Delete `\ ' from printed rep of frame.
15381
153822002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
15383
15384 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
15385 until its implementation is fixed.
15386
153872002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15388
15389 * xfns.c (png_load): Remove unused variable `gamma_str'.
15390
153912002-03-14 Richard M. Stallman <rms@gnu.org>
15392
15393 * xfns.c (x_real_positions): Handle failure in XQueryTree.
15394
153952002-03-14 Miles Bader <miles@gnu.org>
15396
15397 * intervals.c (adjust_for_invis_intang): New function.
15398 (set_point_both): Use `adjust_for_invis_intang' to do most of the
15399 work for dealing with invisible+intangible regions. Do so before
15400 and after both forward and backward movements, to handle both
15401 front-sticky and rear-sticky cases.
15402 * textprop.c (text_property_stickiness): Function moved here from
15403 `editfns.c'.
15404 * intervals.h (text_property_stickiness): New declaration.
15405 * editfns.c (char_property_eq): Function removed.
15406 (text_property_stickiness): Function moved to `textprop.c'.
15407
154082002-03-13 Jason Rumney <jasonr@gnu.org>
15409
15410 * config.in: Add STRFTIME_NO_POSIX2.
15411
15412 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
15413 and %OX when underlying strftime does not.
15414
154152002-03-13 Stefan Monnier <monnier@cs.yale.edu>
15416
15417 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
15418 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
15419 line) to avoid annoying flicker.
15420 (xm_scroll_callback): Get rid of the now unnecessary kludge.
15421 (XTread_socket): Mark it static.
15422
15423 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
15424
154252002-03-13 Kim F. Storm <storm@cua.dk>
15426
15427 * puresize.h (BASE_PURESIZE): Increase to 775000.
15428
154292002-03-12 Juanma Barranquero <lektu@terra.es>
15430
15431 * editfns.c (syms_of_editfns): Fix typo.
15432
154332002-03-12 Gerd Moellmann <gerd@gnu.org>
15434
15435 * xsmfns.c: Include stdio.h because termhooks.h needs it.
15436 Include termopt.h for interrupt_input.
15437
154382002-03-11 Andreas Schwab <schwab@suse.de>
15439
15440 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
15441
154422002-03-11 Gerd Moellmann <gerd@gnu.org>
15443
15444 * xterm.c (note_mouse_movement): Put code for
15445 x_autoselect_window_p in #if 0.
15446
15447 * lread.c (Fload): Don't assume that message_with_string uses the
15448 string it is given like a C string.
15449
154502002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15451
78819ebb 15452 * xterm.h (x_session_check_input, x_session_initialize): Declare.
048addec
JD
15453
15454 * xterm.c: (XTread_socket): Add call to x_session_check_input and
15455 x_session_have_connection.
15456 (x_initialize): Add call to x_session_initialize.
15457
15458 * termhooks.h (enum event_kind): Add save_session_event.
15459
15460 * keyboard.c: Add Emacs event save_session_event.
15461
15462 * emacs.c (main): Add call to syms_of_xsmfns.
15463
78819ebb 15464 * lisp.h (syms_of_xsmfns): Declare extern.
048addec
JD
15465
15466 * config.in: Add HAVE_X_SM.
15467
15468 * Makefile.in (LIBXT): Add -lSM -lICE
15469 if HAVE_X_SM and not USE_X_TOOLKIT.
15470 (XOBJ): New file xsmfns.c added.
15471
15472 * xsmfns.c: New file for X session management.
15473
154742002-03-09 Jason Rumney <jasonr@gnu.org>
15475
15476 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
15477 read-only when setting modified time.
15478
154792002-03-08 Gerd Moellmann <gerd@gnu.org>
15480
15481 * xdisp.c (move_it_vertically_backward): At the end of the function,
15482 when moving forward by lines, treat terminal frames specially.
15483
15484 * keyboard.c (echo_char): Make sure to add a separator between
15485 keys even if echo_dash hasn't been called.
15486
15487 * xdisp.c: Use new string macros.
15488 (update_echo_area): Pass number of bytes to message3 instead of
15489 number of chars.
15490 (set_message_1): Don't access a string's size_byte directly.
15491 (decode_mode_spec_coding): Use number of bytes of eoltype string
15492 instead number of chars.
15493
15494 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
15495
154962002-03-08 Juanma Barranquero <lektu@terra.es>
15497
15498 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
15499 24-bit.
15500
155012002-03-06 Jason Rumney <jasonr@gnu.org>
15502
15503 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
15504
155052002-03-06 Gerd Moellmann <gerd@gnu.org>
15506
15507 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
15508 (cancel_echoing, echo_length, echo_truncate): Changed to
15509 work with new kboard definition.
15510 (echo_now): Use message3_nolog instead of message2_nolog.
15511
15512 * alloc.c (mark_kboards): Mark echo_string.
15513
15514 * keyboard.h (ECHOBUFSIZE): Removed.
15515 (struct kboard): Member echoptr removed, member echobuf renamed
15516 to echo_string.
15517
15518 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
15519 message3 instead of message2 to display the message using STRING's
15520 text properties.
15521
155222002-03-05 Andreas Schwab <schwab@suse.de>
15523
15524 * xdisp.c (hscroll_margin): Change to EMACS_INT.
15525
155262002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
15527
15528 * frame.c (default-frame-alist): Explain that setting it doesn't
15529 affect existing frames.
15530
155312002-03-05 Stefan Monnier <monnier@cs.yale.edu>
15532
15533 * indent.c (skip_invisible): Fix my brain fart.
15534
15535 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
15536
155372002-03-04 Stefan Monnier <monnier@cs.yale.edu>
15538
15539 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
15540 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
15541 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
15542 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
15543 and variables to use EMACS_INT instead of just int.
15544
15545 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
15546
155472002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
15548
15549 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
15550 environment, pass it down with corrected value.
15551
155522002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15553
15554 * lread.c (read_filtered_event): Do not call start_hourglass
15555 before returning.
15556
155572002-03-04 Juanma Barranquero <lektu@terra.es>
15558
15559 * w32term.c (x_display_and_set_cursor): Fix typo.
15560
155612002-03-03 Richard M. Stallman <rms@gnu.org>
15562
15563 * fileio.c (Fmake_temp_name): Doc fix.
15564
155652002-03-03 Gary Wong <gtw@gnu.org>
15566
15567 * termcap.c [!emacs]: Replace ospeed for building standalone
15568 libtermcap, for binary compatibility.
15569
15570 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
15571
155722002-03-03 Richard M. Stallman <rms@gnu.org>
15573
15574 * xrdb.c (file_p): Rename arg `path' to `filename'.
15575
15576 * abbrev.c (Fexpand_abbrev): Increment plist as use count
15577 only if it is an integer.
15578
15579 * xfns.c (png_load): Set screen_gamma based on f->gamma.
15580 If png_get_sRGB gives an answer, call png_set_gamma
15581 using the default image gamma value.
15582
15583 * lread.c (read1): When reading from a file, default string to
15584 multibyte only if it has some multibyte characters.
15585
15586 * print.c (print_object): Output multibyte chars 128...255
15587 using \x even if ! print_escape_multibyte.
15588
15589 * xdisp.c (display_mode_element): Move the places where
15590 bytepos, charpos, this, and lisp_string are set.
15591 Use lisp_string to set bytepos.
15592
15593 * xdisp.c (redisplay_internal):
15594 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
15595
15596 * xdisp.c (display_mode_element): Merge properties specified with
15597 :propertize onto those that come with the string.
15598
155992002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
15600
15601 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
15602 automatic-hscrolling. Users changed.
15603 <hscroll-margin>: Renamed from automatic-hscroll-margin.
15604 Users changed.
15605 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
15606
156072002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
15608
15609 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
15610
156112002-03-02 Kim F. Storm <storm@cua.dk>
15612
15613 * window.c (Fminibuffer_selected_window): New function.
15614 (syms_of_window): Defsubr it.
15615
156162002-03-01 Kim F. Storm <storm@cua.dk>
15617
15618 * window.h (struct window): New member phys_cursor_width.
15619
15620 * window.c (make_window, replace_window): Init phys_cursor_width.
15621
15622 * xterm.c (x_display_and_set_cursor): Blink box cursor using
15623 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
15624
15625 * w32term.c (x_display_and_set_cursor): Blink box cursor using
15626 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
15627
15628 * lisp.h (GCPRO6): New macro.
15629
15630 * process.c (Fopen_network_stream): Use GCPRO6.
15631
156322002-03-01 Kim F. Storm <storm@cua.dk>
15633
15634 * process.c (Qconnect, Qfailed): New variables.
15635 (syms_of_process): Intern and staticpro them.
15636 (Fprocess_status): Document connect and failed return values.
15637 [NON_BLOCKING_CONNECT]: New conditional.
15638 (connect_wait_mask, num_pending_connects): New variables.
15639 (status_message): Convert Qfailed status.
15640 (Fopen_network_stream): Added support for non-blocking connect.
15641 New optional args: filter, sentinel, non_blocking. Doc updated.
15642 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
15643 (deactivate_process): Handle pending non-blocking connect.
15644 (wait_reading_process_input): Poll for status of non-blocking
15645 connects. Exec sentinel directly when connect succeeds.
15646 (status_notify): Don't read process output if not yet connected.
15647
156482002-02-28 Kim F. Storm <storm@cua.dk>
15649
15650 * window.c: (minibuf_selected_window): Renamed from
15651 Vminibuf_selected_window. Users changed.
15652 (syms_of_window): Staticpro it.
15653
156542002-02-26 Kim F. Storm <storm@cua.dk>
15655
15656 The following changes add a new Vminibuf_selected_window variable
15657 which is similar to Vminibuf_scroll_window, but which is only set
15658 on entry to the minibuffer (from a non-minibuffer window):
15659
15660 * window.c: (Vminibuf_selected_window): New variable.
15661 (struct save_window_data): New member minibuf_selected_window.
15662 (Fset_window_configuration): Restore Vminibuf_selected_window.
15663 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
15664 Set minibuf_scroll_window member to nil if minibuf_level is 0.
15665 (compare_window_configurations): Compare minibuf_selected_window.
15666
15667 * window.h: (Vminibuf_selected_window): Declare extern.
15668
15669 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
15670 entry to minibuffer or on entry from a non-minibuffer window.
15671
15672 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
15673 Vminibuf_selected_window instead of Vminibuf_scroll_window.
15674
15675 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
15676 instead of Vminibuf_scroll_window when deciding in which window
15677 the region should be highlighted. Consequently, the region remains
15678 highlighteded even when a completion buffer is also displayed.
15679
156802002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
15681
15682 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
15683
15684 * xselect.c (Qcompound_text_with_extensions): Renamed from
15685 Qcompound_text_no_extensions.
15686 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
15687
156882002-02-26 Juanma Barranquero <lektu@terra.es>
15689
15690 * w32proc.c (syms_of_ntproc): Doc fix.
15691
156922002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15693
15694 * intervals.h: Include "dispextern.h" unconditionally.
15695
156962002-02-24 Jason Rumney <jasonr@gnu.org>
15697
15698 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
15699 and disp-table.elc.
15700 (lisp): Add emacs-lisp/backquote.elc.
15701
157022002-02-24 Kim F. Storm <storm@cua.dk>
15703
3419757d 15704 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
048addec
JD
15705 The validation of the event type was too strict as it didn't
15706 allow string events; buffer names are used in bindings for
15707 menu-bar-select-buffer (see `menu-bar-update-buffers').
15708
157092002-02-23 Kim F. Storm <storm@cua.dk>
15710
15711 The following changes rework my patch of 2002-02-06 which
15712 added command remapping by entering the commands directly into
15713 the keymaps. Now, command remapping uses an explicit `remap'
15714 prefix in the keymaps, i.e. [remap COMMAND].
15715
15716 * keymap.c (Qremap, remap_command_vector): New variables.
3419757d 15717 (is_command_symbol): Remove function.
048addec
JD
15718 (Fdefine_key): No longer accept a symbol for KEY.
15719 Added validation of [remap COMMAND] argument for KEY.
15720 The DEF is no longer required to be a symbol when remapping a command.
15721 (Fremap_command): New function to remap command through keymaps.
15722 (Flookup_key): Perform command remapping initiated by
15723 Fremap_command directly for speed.
15724 (Fkey_binding): Use Fremap_command for command remapping.
15725 (where_is_internal): Handle new command remapping representation.
15726 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
15727 staticpro them. Defsubr Fremap_command.
15728
15729 * keymap.h (Fremap_command): Declare extern.
15730 (is_command_symbol): Remove extern.
15731
15732 * keyboard.c (command_loop_1): Use Fremap_command for command
15733 remapping; now try command remapping for all symbols.
15734
157352002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
15736
15737 * coding.h (run_pre_post_conversion_on_str): Add prototype.
15738
157392002-02-23 Jason Rumney <jasonr@gnu.org>
15740
15741 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
15742 on the string before encoding it.
15743 (Fw32_get_clipboard_data): Run post-read-conversion on the string
15744 after decoding it.
15745
15746 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
15747
157482002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15749
15750 * w32term.c (enter_timestamp): Remove unused static variable to
15751 prevent warning.
15752
15753 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
15754
157552002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
15756
15757 * w16select.c (Fw16_get_clipboard_data): Fix last change.
15758
15759 * xselect.c (selection_data_to_lisp_data): Fix last change.
15760
157612002-02-22 Jason Rumney <jasonr@gnu.org>
15762
15763 * w32term.h (struct w32_output): New member menu_command_in_progress.
15764
15765 * w32menu.c (menubar_selection_callback): Free the menu and
15766 clear the menu_command_in_progress flag.
15767
15768 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
15769 (menu_free_timer): New variable.
15770 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
15771 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
15772 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
15773 menu command is in progress.
15774 <WM_COMMAND>: Set the menu_command_in_progress flag.
15775 Kill any menu_free_timer that is running.
15776
15777 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
15778 Call ExtTextOutA rather than ExtTextOut.
15779
157802002-02-22 Eli Zaretskii <eliz@gnu.org>
15781
15782 * puresize.h (BASE_PURESIZE): Increase to 755000.
15783
157842002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
15785
15786 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
15787 on the string before encoding it.
15788 (Fw16_get_clipboard_data): Run post-read-conversion on the string
15789 after decoding it.
15790
157912002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
15792
15793 Support for ICCCM Extended Segments in X selections:
15794
15795 * xselect.c <Qcompound_text_no_extensions>: New variable.
15796 (syms_of_xselect): Intern and staticpro it.
15797 (selection_data_to_lisp_data): Run post-read-conversion on decoded
15798 selection text.
15799 (lisp_data_to_selection_data): If next-selection-coding-system is
15800 compound-text-no-extensions, set the type of selection to be
15801 compound-text.
15802
15803 * xterm.h (x_encode_text): Update prototype.
15804
15805 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
15806 callers changed. If SELECTIONP is non-zero, run the
15807 pre-write-conversion function before encoding the selection text.
15808
158092002-02-21 Kim F. Storm <storm@cua.dk>
15810
15811 * frame.c (syms_of_frame): Change mouse-highlight default to t.
15812
15813 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
15814 Correct composing of language-change event.
15815
158162002-02-20 Kim F. Storm <storm@cua.dk>
15817
15818 * keyboard.c (menu_bar_items): Don't include keymap or local-map
15819 bindings at PT when building menu (the menu is not updated often
15820 enough for this to work reliable).
15821 (tool_bar_items): Likewise.
15822 (current_active_maps): Removed unused (and buggy) function.
15823
158242002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15825
15826 * xfns.c (gif_load): Use correct width and height for GIF images.
15827
158282002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
15829
15830 * floatfns.c (Fatan): Accept an optional second arg and call
15831 atan2 if passed 2 args.
15832
158332002-02-18 Jason Rumney <jasonr@gnu.org>
15834
15835 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
15836
158372002-02-17 Jason Rumney <jasonr@gnu.org>
15838
15839 * w32term.c (x_autoselect_window_p): New variable.
15840 (syms_of_w32term): DEFVAR_BOOL and initialize it.
15841 (note_mouse_movement): Use it.
15842
15843 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
15844
15845 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
15846
15847 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
15848 New variables.
15849 (syms_of_w32fns): Intern and staticpro them.
15850 (x_frame_parms) <"fullscreen">: New parameter.
15851 (x_fullscreen_move, x_set_fullscreen): New functions.
15852 (x_set_frame_parameters): Support Qfullscreen.
15853 (x_real_positions): Save x/y_pixels_diff frame params.
15854 (x_figure_window_size): Support full-screen frames.
15855 (Fx_create_frame): Default the fullscreen parameter.
15856
15857 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
15858 (x_fullscreen_adjust): New functions.
15859 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
15860 fullscreen. Call x_check_fullscreen_move, and set the
15861 want_fullscreen member of output_data.w32
15862 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
15863
15864 * w32term.h: New enum for FULLSCREEN_* constants.
15865 (struct w32_output): New members want_fullscreen, x_pixels_diff,
15866 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
15867 (x-fullscreen-adjust): New prototype.
15868
158692002-02-17 Kim F. Storm <storm@cua.dk>
15870
15871 * frame.c: (Vmouse_highlight): New variable.
15872 (syms_of_frame): DEFVAR_LISP it.
15873
15874 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 15875
048addec 15876 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 15877
048addec
JD
15878 * xterm.c (disable_mouse_highlight): Removed variable.
15879 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
15880 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15881 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
15882 and on after keyboard input.
15883 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 15884
048addec 15885 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 15886
048addec
JD
15887 * msdos.c (disable_mouse_highlight): Removed variable.
15888 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15889 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
15890 (internal_terminal_init): Initialize mouse_face_hidden.
15891 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
15892 and on after keyboard input.
4f1b1854 15893
048addec 15894 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 15895
048addec
JD
15896 * w32term.c (disable_mouse_highlight): Removed variable.
15897 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
15898 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15899 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
15900 and on after keyboard input.
15901 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 15902
048addec 159032002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 15904
048addec
JD
15905 * msdos.c (last_mouse_window): New variable.
15906 (dos_rawgetc): Fix last change--if the mouse is in the same window
15907 as recorded in last_mouse_window, don't select this window.
5cb6905d 15908
048addec 15909 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 15910
048addec
JD
15911 * msdos.c (x_autoselect_window_p): New variable.
15912 (syms_of_msdos): Defvar it.
15913 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
15914 which the last mouse movement occured, unless it is already selected.
437dfb9f 15915
048addec
JD
15916 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
15917 New variables.
15918 (syms_of_xdisp): DEVFAR them.
15919 (hscroll_window_tree): Use automatic_hscroll_margin and
15920 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 15921
048addec 159222002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 15923
048addec
JD
15924 * xterm.c (x-autoselect-window): New variable.
15925 (note_mouse_movement): Use it.
9f696a00 15926
048addec 15927 * keyboard.c: Do not include "systime.h" twice.
d57966d7 15928
048addec 159292002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 15930
bfa02563 15931 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 15932
048addec 15933 * alloc.c (NSTATICS): Increase to 1280.
74779f52 15934
048addec 159352002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 15936
048addec 15937 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 15938
048addec
JD
15939 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
15940 (Vx_super_keysym): New variables.
15941 (syms_of_xterm): DEFVAR_LISP them.
15942 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
15943 variables to determine which keys to use for the various modifiers.
a474d59c 15944
048addec 159452002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 15946
048addec
JD
15947 * window.c: (Vmode_line_in_non_selected_windows): Removed.
15948 (mode_line_in_non_selected_windows): New variable.
15949 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 15950
048addec
JD
15951 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
15952 Use mode_line_in_non_selected_windows.
15953 (mode_line_in_non_selected_windows): Declare extern.
15954 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 15955
048addec 159562002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 15957
048addec
JD
15958 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
15959 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
15960 (Fclear_this_command_keys): Doc fixes.
2d10309f 15961
048addec
JD
15962 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
15963 (update_face_from_frame_parameter): Increment face_change_count
15964 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 15965
048addec
JD
15966 * xdisp.c (QCpropertize): New variable.
15967 (mode_line_proptrans_alist): New variable.
15968 (display_mode_element): New arg PROPS; all calls changed.
15969 Implement this, for strings.
15970 Handle literal output of strings by sharing the
15971 main-line code for strings, using local var `literal'.
15972 Handle :propertize feature.
15973 (syms_of_xdisp): Initialze and staticpro QCpropertize and
15974 mode_line_proptrans_alist.
0b1e6b54 15975
048addec 159762002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 15977
048addec
JD
15978 * window.c: (Vmode_line_in_non_selected_windows): New variable.
15979 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 15980
048addec
JD
15981 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
15982 (CURRENT_MODE_LINE_FACE_ID): Use it.
15983 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 15984
048addec
JD
15985 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
15986 to get mode line face.
e17144de 15987
048addec 159882002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 15989
048addec
JD
15990 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
15991 variables; cus-start.el doesn't need them anymore.
44368f8f 15992
048addec 159932002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 15994
048addec
JD
15995 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
15996 reduction. This fixes a display problem where stray newlines were
15997 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 15998
048addec 159992002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 16000
048addec 16001 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 16002
048addec 16003 * xdisp.c (display_mode_lines): Fix last change.
453c5510 16004
048addec 160052002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 16006
048addec
JD
16007 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
16008 match each other.
16009 (w32_load_system_font): Prevent Cleartype fonts from loading.
16010 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 16011
048addec 160122002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 16013
048addec
JD
16014 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
16015 (CURRENT_MODE_LINE_HEIGHT): Use it.
16016 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 16017
048addec
JD
16018 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
16019 (pos_visible_p, handle_face_prop): Likewise.
16020 (display_mode_lines): Likewise, but for the real selected window.
16021 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 16022
048addec
JD
16023 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
16024 in non-selected windows.
16025 (realize_basic_faces): Realize it.
16026 (syms_of_term): Intern and staticpro it.
308dd672 16027
048addec 160282002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 16029
048addec
JD
16030 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
16031 Changed mail addresses to emacs-devel@gnu.org.
308dd672 16032
048addec 160332002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 16034
048addec
JD
16035 * fileio.c (Fsubstitute_in_file_name): If the file name includes
16036 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 16037
048addec 16038 * floatfns.c (Fround): Doc fix.
3c1e6b46 16039
048addec 160402002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 16041
048addec 16042 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 16043
048addec 160442002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 16045
048addec 16046 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 16047
048addec 160482002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 16049
048addec
JD
16050 * keymap.c (where_is_internal): Only check whether definition is
16051 remapped if it fulfills is_command_symbol.
0065bb74 16052
048addec 160532002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 16054
048addec 16055 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 16056
048addec 16057 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 16058
048addec 160592002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 16060
048addec
JD
16061 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
16062 defining command remapping. Doc updated.
16063 (Flookup_key): Remap command through keymap if KEY is a symbol.
16064 (is_command_symbol): New function.
16065 (Fkey_binding): Use it. New optional argument NO-REMAP.
16066 Doc updated. Callers changed. Perform command remapping via
16067 recursive call unless that arg is non-nil.
16068 (where_is_internal): New argument no_remap. Callers changed.
16069 Call recursively to find original key bindings for a remapped
16070 comand unless that arg is non-nil.
16071 (Fwhere_is_internal): New optional argument NO-REMAP.
16072 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 16073
048addec 16074 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
3419757d 16075 (is_command_symbol): Add prototype.
0d8466cc 16076
048addec
JD
16077 * keyboard.c (Vthis_original_command): New variable.
16078 (syms_of_keyboard): DEFVAR_LISP it.
16079 (command_loop_1): Set it, and perform command remapping.
15fff01d 16080
048addec 160812002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 16082
048addec 16083 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 16084
048addec 160852002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 16086
048addec 16087 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 16088
048addec 160892002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 16090
048addec 16091 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 16092
048addec 160932002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 16094
048addec 16095 * filelock.c (S_ISLNK): Define if not defined.
3a232704 16096
048addec 160972002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 16098
048addec 16099 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 16100
048addec
JD
16101 * lread.c (read1): Redesign strategy for force_multibyte and
16102 force_singlebyte. Now is_multibyte records whether read_buffer
16103 is multibyte. Encountering any multibyte character makes it so.
4e02881b 16104
048addec 161052002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 16106
048addec
JD
16107 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
16108 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 16109
048addec 161102002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 16111
048addec
JD
16112 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
16113 latter never being defined on GNU/Linux.
749f499f 16114
048addec 161152002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 16116
048addec
JD
16117 * xfaces.c (realize_default_face): Don't set the weight and slant of
16118 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 16119
048addec 161202002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 16121
048addec
JD
16122 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
16123 Call cancel_hourglass unconditionally.
d0fd26dd 16124
048addec
JD
16125 * eval.c (Fsignal): Remove duplicated declaration of
16126 the variable `display_hourglass_p'.
b4c45162 16127
048addec 161282002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 16129
048addec 16130 * editfns.c (region_limit): Nicer error message.
c95eaa61 16131
048addec
JD
16132 * coding.c (decode_composition_emacs_mule):
16133 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 16134
048addec
JD
16135 * callint.c (check_mark): New arg to specify clearer error message.
16136 Callers changed.
c95eaa61 16137
048addec 161382002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 16139
048addec 16140 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 16141
048addec 161422002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 16143
048addec
JD
16144 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
16145 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
16146 Fix doc-strings.
c95eaa61 16147
048addec 161482002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 16149
048addec 16150 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 16151
048addec
JD
16152 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
16153 and scroll_up_aggressively.
c95eaa61 16154
048addec 161552002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 16156
048addec 16157 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 16158
048addec 161592002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 16160
048addec
JD
16161 * textprop.c (Fnext_property_change, Fnext_single_property_change)
16162 (Fprevious_property_change, Fprevious_single_property_change):
16163 Stay within the narrowed-buffer boundaries.
e2c3786a 16164
048addec 161652002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 16166
048addec
JD
16167 * term.c (Ftty_display_color_cells): New function.
16168 (syms_of_term): Defsubr it.
16169 (Ftty_display_color_cells, Ftty_display_color_p): Change the
16170 argument name to DISPLAY. Doc fix.
bf794306 16171
048addec
JD
16172 * dispextern.h: Add prototype for set_tty_color_mode and
16173 tty_setup_colors.
bf794306 16174
048addec 161752002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 16176
048addec
JD
16177 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
16178 If region left to draw is not what was expected, mark the frame as
16179 garbaged.
62582985 16180
048addec
JD
16181 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
16182 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 16183
048addec 161842002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 16185
048addec
JD
16186 * w32term.c (x_update_window_begin): Only hide caret if
16187 w32_use_visible_system_caret is set.
16188 (x_update_window_end): Only show caret if
16189 w32_use_visible_system_caret is set.
16190 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 16191
048addec 16192 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 16193
048addec 161942002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 16195
048addec
JD
16196 * unexelf.c (unexec): Define n so as to cause compilation error
16197 for the code where people have often written n instead of nn.
1e9a6186 16198
048addec 16199 * .gdbinit (hookpost-run): Defined.
1e9a6186 16200
048addec 162012002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 16202
048addec 16203 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 16204
048addec 162052002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 16206
048addec
JD
16207 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
16208 if fullscreen is being set.
7c75be36 16209
048addec 162102002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 16211
048addec
JD
16212 * minibuf.c (Fminibuffer_contents)
16213 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
16214 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 16215
048addec 162162002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 16217
048addec 16218 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 16219
048addec 162202002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 16221
048addec
JD
16222 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
16223 height before comparison.
16224 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 16225
048addec 162262002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 16227
048addec
JD
16228 * w32term.c (w32_system_caret_width): Remove.
16229 (w32_use_visible_system_caret): New user flag.
16230 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
16231 Windows reports a screen reader running.
16232 (x_update_window_begin): Hide the system caret.
16233 (x_update_window_end): Show the system caret.
16234 (x_display_and_set_cursor): Don't draw a cursor when
16235 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 16236
048addec
JD
16237 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
16238 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
16239 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
16240 the user requests it. Use system default width when creating.
16241 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 16242
048addec
JD
16243 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
16244 New window messages.
905cc05a 16245
048addec 162462002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 16247
048addec 16248 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 16249
048addec 162502002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 16251
048addec 16252 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 16253
048addec 162542002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 16255
048addec 16256 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 16257
048addec 162582002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 16259
048addec
JD
16260 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
16261 that Windows returns. If a double check fails, try to guess how
16262 ExtTextOut is going to act.
4d0fa4f3 16263
048addec
JD
16264 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
16265 in place of stricmp.
16266 (w32_list_synthesized_fonts): Removed.
16267 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
16268 (struct enumfont_t): New element; list.
16269 (enum_font_cb2): List all style and charset variations of a font.
16270 (Fw32_select_font): New optional argument; include_proportional.
16271 Exclude vertical fonts. Exclude proportional fonts unless
16272 include_proportional is non-nil.
16273 (w32_enable_synthesized_fonts): Change to a boolean.
16274 (Fw32_send_sys_command): Doc fix.
493faf20 16275
048addec 162762002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 16277
048addec
JD
16278 * dispnew.c (update_frame): Move the variable `tem' to the block
16279 where it is used.
4971e491 16280
048addec 162812002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 16282
048addec
JD
16283 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
16284 call to face-set-after-frame-default.
4971e491 16285
048addec 162862002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 16287
048addec
JD
16288 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
16289 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 16290
048addec 162912002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 16292
048addec
JD
16293 * window.c (enlarge_window): When exceeding size of parent,
16294 directly delete all the siblings instead of trying to resize it.
201c831a 16295
048addec 162962002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 16297
048addec 16298 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 16299
048addec 163002002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 16301
048addec 16302 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 16303
048addec 163042002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 16305
048addec
JD
16306 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
16307 is invisible. This can happen if cursor is on top line of a
16308 window, and we switch to a buffer with a header line.
d77fbc16 16309
048addec 16310 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 16311
048addec 163122002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 16313
048addec
JD
16314 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
16315 `dont_resize' only when used.
61e3b944 16316
048addec 16317 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 16318
048addec 163192002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 16320
048addec
JD
16321 * xdisp.c (display_mode_element): When computing charpos, depend
16322 on multibyteness of elt, not the text in field.
8af01033 16323
048addec 163242002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 16325
048addec
JD
16326 * buffer.c (Fkill_all_local_variables):
16327 Increment `update_mode_lines' only once.
7363986a 16328
048addec 163292002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 16330
048addec
JD
16331 * lisp.h (adjust_after_replace_noundo)
16332 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 16333
048addec 16334 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 16335
048addec 163362002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 16337
048addec
JD
16338 Support for the --color command-line argument and tty-color-mode
16339 frame parameter:
f1a85b89 16340
048addec
JD
16341 * term.c (tty_default_color_capabilities, tty_setup_colors)
16342 (set_tty_color_mode): New functions.
16343 (term_init): Call tty_default_color_capabilities.
16344 (Qtty_color_mode_alist): New variable.
16345 (syms_of_term): Intern and staticpro it.
f1a85b89 16346
048addec
JD
16347 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
16348 frames.
16349 (do_switch_frame): For termcap frames, switch the tty
16350 color mode as specified by the frame's parameters.
16351 (Qtty_color_mode): New variable.
16352 (syms_of_frame): Intern and staticpro it.
3a62677f 16353
048addec
JD
16354 * emacs.c (USAGE2): Add the --color option.
16355 (standard_args): Ditto.
72244db2 16356
048addec
JD
163572002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16358
16359 * xterm.h (struct x_output): New members want_fullscreen,
16360 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
16361 y_pixels_outer_diff.
16362 New enum for FULLSCREEN_* constants.
16363 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
16364 is NULL.
16365 (x_fullscreen_adjust): Add prototype.
3a62677f 16366
048addec
JD
16367 * emacs.c (USAGE2): Add the new full-screen arguments.
16368 (standard_args): Ditto.
3a62677f 16369
048addec
JD
16370 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
16371 New variables.
16372 (syms_of_xfns): Intern and staticpro them.
16373 (x_frame_parms) <"fullscreen">: New parameter.
16374 (x_fullscreen_move, x_set_fullscreen): New functions.
16375 (x_set_frame_parameters): Support for Qfullscreen.
16376 (x_real_positions): More accurate computation of the frame position.
16377 (x_figure_window_size): Support full-screen frames.
16378 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 16379
048addec
JD
16380 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
16381 (XTread_socket) <Expose>: Call x_check_fullscreen.
16382 <ConfigureNotify>: Don't resize to fullscreen.
16383 Call x_check_fullscreen_move, and set the want_fullscreen member of
16384 output_data.x.
3a62677f 16385
048addec 163862002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 16387
048addec
JD
16388 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
16389 for mice with more than 3 buttons.
b8523839 16390
048addec
JD
16391 * w32term.c (parse_button): New parameter xbutton. Callers changed.
16392 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 16393
048addec
JD
16394 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
16395 (syms_of_w32fns): DEFVAR_BOOL it.
16396 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 16397
048addec 163982002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 16399
048addec 16400 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 16401
048addec 164022002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 16403
048addec 16404 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 16405
048addec 164062002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 16407
048addec
JD
16408 * .gdbinit (xbuffer): Remove address operator since data is now a
16409 pointer.
c93674bb 16410
048addec 164112002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 16412
048addec 16413 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 16414
048addec 16415 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 16416
048addec 164172002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 16418
048addec
JD
16419 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
16420 when checking for multiple frames.
91175673 16421
048addec 164222002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 16423
048addec
JD
16424 * window.c (delete_window): Rewrite the code for changing the
16425 selected window to handle the case where WINDOW is not a leaf.
91175673 16426
048addec 164272002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 16428
048addec
JD
16429 * process.c (send_process): Set src_multibyte to 1 after the call
16430 top setup_coding_system, not before the call.
e0fead5d 16431
048addec 164322002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 16433
048addec
JD
16434 * xmenu.c (set_frame_menubar, xmenu_show):
16435 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 16436
048addec
JD
16437 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
16438 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 16439
048addec 164402002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 16441
048addec 16442 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 16443
048addec 16444 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 16445
048addec 16446 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 16447
048addec 164482002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 16449
048addec
JD
16450 * insdel.c (make_gap_larger): Make sure buffer size does not
16451 overflow range of int.
62854fe2 16452
048addec 164532002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 16454
048addec
JD
16455 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
16456 OVERLAPS_P.
656f46bb 16457
048addec 16458 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 16459
048addec
JD
16460 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
16461 to the left or to the right of the pointer, put it against
16462 the left screen edge.
16463 (x_frame_parms): Add missing braces around initializer.
036e218d 16464
048addec
JD
16465 * w32term.c (x_setup_relief_colors): Don't compute an image's
16466 background color if it doesn't have a Pixmap.
16467 (notice_overwritten_cursor): Don't depend on
16468 output_cursor and updated_area. Compare pixel coordinates with
16469 window's cursor pixel coordinates.
16470 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
16471 Call notice_overwritten_cursor with new arg list.
16472 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
16473 unconditionally.
16474 (x_draw_image_relief): Use predefined macro instead of
16475 constant when the value of `tool_bar_button_relief' is negative.
036e218d 16476
048addec 16477 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 16478
048addec 164792002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 16480
048addec 16481 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 16482
048addec 164832002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 16484
048addec
JD
16485 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
16486 (Fkey_binding): Try the `keymap' property map first.
16487 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
16488 minor mode bindings.
90647b07 16489
048addec 164902002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 16491
3419757d 16492 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
ace9b298 16493
048addec 164942002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 16495
048addec
JD
16496 * keyboard.c (read_key_sequence): Handle the keymap property
16497 before minor mode maps.
9fbc32aa 16498
048addec
JD
16499 * editfns.c (Fformat): Update thissize from field_width
16500 based on the actual width, in the string case.
036e218d 16501
048addec 165022002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 16503
048addec
JD
16504 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
16505 when used as truth value to prevent gcc warnings.
9fbc32aa 16506
048addec
JD
16507 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
16508 * w32proc.c: Include <config.h>.
9fbc32aa 16509
048addec 165102002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 16511
048addec
JD
16512 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
16513 not EMACS_INT, to make them compatible with DEFVAR_INT.
16514 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 16515
048addec 165162002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 16517
048addec
JD
16518 * print.c (print_object): Test print_escape_nonascii only for
16519 unibyte strings.
16520 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
16521 when outputting to a multibyte buffer.
9fbc32aa 16522
048addec 165232001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 16524
048addec
JD
16525 * print.c (print_object): In multibyte string, use hex escapes.
16526 Use octal only for unibyte strings.
16527 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 16528
048addec
JD
16529 * lread.c (read_escape): New arg BYTEREP for reporting whether
16530 escape forces unibyte or multibyte.
16531 (read1): When reading a string, take note of that info.
0142178a 16532
048addec 165332001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 16534
048addec
JD
16535 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
16536 comparison to test lisp value returned by Fget.
d4824a5d 16537
048addec 165382001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 16539
048addec 16540 * lisp.h (max_specpdl_size): Add declaration.
b1356234 16541
048addec 16542 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 16543
048addec
JD
16544 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
16545 Handle modifier bits. Correct typo in error message.
99e380ee 16546
048addec 165472001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 16548
048addec
JD
16549 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
16550 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
16551 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
16552 Update calls to Fdefine_abbrev.
16553 (write_abbrev): Update for changed data format.
16554 Don't list "system" abbrevs.
16555 (Fexpand_abbrev): Update use count with new data format.
16556 (describe_abbrev): Update for changed data format.
16557 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 16558
048addec 16559 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 16560
048addec 16561 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 16562
048addec
JD
16563 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
16564 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 16565
048addec
JD
16566 * keymap.c (Flookup_key): Error message if key has wrong data type.
16567 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
16568 (exclude_key): New variable.
59a86c99 16569
048addec 165702001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 16571
048addec
JD
16572 * xterm.c (x_setup_relief_colors): Don't compute an image's
16573 background color if it doesn't have a Pixmap.
eb77a5f4 16574
048addec
JD
16575 * xterm.c (notice_overwritten_cursor): Don't depend on
16576 output_cursor and updated_area. Compare pixel coordinates with
16577 window's cursor pixel coordinates.
16578 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
16579 Call notice_overwritten_cursor with new arg list.
16580 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
16581 unconditionally.
eb77a5f4 16582
048addec
JD
16583 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
16584 height of the cursor line to the amount to scroll.
eb77a5f4 16585
048addec 165862001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 16587
048addec
JD
16588 * intervals.c (set_point_both): The position after an invisible,
16589 intangible character is not an acceptable stopping point.
bb313871 16590
048addec 165912001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 16592
048addec
JD
16593 * window.c (enlarge_window): In new preserve_before code, convert
16594 CURBEG from lisp object to integer before doing arithmetic.
6052529b 16595
048addec 165962001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 16597
048addec 16598 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 16599
048addec 166002001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 16601
048addec
JD
16602 * keyboard.c (record_char): Ignore duplicate help-echo events only
16603 separated by mouse-movement. When tracking mouse, only record
16604 first and last mouse-movement event in same window.
16605 Don't record mouse-movement events in keyboard macros.
3ce081f5 16606
048addec 166072001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 16608
048addec
JD
16609 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
16610 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 16611
048addec
JD
16612 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
16613 instead of Fstring_as_unibyte.
9fabb2f5 16614
048addec 166152001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 16616
048addec 16617 The following changes remove mocklisp support:
9fabb2f5 16618
048addec 16619 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 16620
048addec
JD
16621 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
16622 `Qmocklisp' and `Qmocklisp_arguments'.
16623 Remove prototype of syms_of_mocklisp.
2fa0eedf 16624
048addec 16625 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 16626
048addec
JD
16627 * callint.c: Do not include mocklisp.h.
16628 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 16629
048addec
JD
16630 * eval.c: Remove variables `Qmocklisp_arguments',
16631 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
16632 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
16633 Do not test for mocklisp case.
16634 (Fwhile): Remove unused variable `tem'.
16635 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 16636
048addec 16637 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 16638
048addec 16639 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 16640
048addec 16641 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 16642
048addec 166432001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 16644
048addec
JD
16645 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
16646 to the left or to the right of the pointer, put it against
16647 the left screen edge.
6108b49c 16648
048addec 166492001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 16650
048addec
JD
16651 * Makefile.in (distclean): Remove .gdbinit if we are building
16652 outside the source tree.
5eea19a4 16653
048addec 166542001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 16655
048addec 16656 * w32.c (emacs_root_dir): New function.
5eea19a4 16657
048addec 16658 * msdos.c (emacs_root_dir): New function.
5eea19a4 16659
048addec
JD
16660 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
16661 of the current drive as the fallback for default_directory.
438e57dd 16662
048addec
JD
16663 * dired.c (file_name_completion): Run the elements of
16664 completion-ignored-extensions through ENCODE_FILE.
438e57dd 16665
048addec
JD
16666 * lisp.h (scmp): Remove prototype, since it's now a static
16667 function private to dired.c.
c88e5347 16668
048addec 166692001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 16670
048addec
JD
16671 * dired.c (scmp): Function moved from minibuf.c.
16672 Delete multibyte handling--used only on encoded strings.
59ce1461 16673
048addec 16674 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 16675
048addec 16676 * fns.c (merge): Add QUIT call.
59ce1461 16677
048addec 166782001-12-18 Dave Love <fx@gnu.org>
8727d588 16679
048addec
JD
16680 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
16681 language/georgian.el.
8727d588 16682
048addec 166832001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 16684
048addec
JD
16685 * Makefile.in (lisp, shortlisp): Synchronize with changes to
16686 lisp/Makefile.in:DONTCOMPILE.
cc63037e 16687
048addec 166882001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 16689
048addec
JD
16690 * xdisp.c (window_box_height): Do not return negative values.
16691 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 16692
048addec 16693 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 16694
048addec 16695 * term.c (keys): Likewise.
deece6f5 16696
048addec 16697 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 16698
048addec 166992001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 16700
048addec
JD
16701 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
16702 patch (COMPOSING_P, not COMPOSING).
28ff4293 16703
048addec 167042001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 16705
048addec 16706 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 16707
048addec
JD
16708 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
16709 before calling decode_coding.
9b46de40 16710
048addec 16711 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 16712
048addec
JD
16713 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
16714 instead of only for COMPOSITION_DISABLED.
9b46de40 16715
048addec 167162001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 16717
048addec 16718 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 16719
048addec 16720 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 16721
048addec
JD
16722 * buffer.h (struct buffer): New field `display_error_modiff'.
16723 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 16724
048addec 16725 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 16726
048addec
JD
16727 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
16728 Call redisplay_window, but not if display_error_modiff field says no.
16729 (redisplay_window_error): New function.
16730 (displayed_buffer): New variable.
16731 (redisplay_internal, redisplay_windows): Call the new functions
16732 instead of redisplay_window directly.
2cd23960 16733
048addec 167342001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 16735
048addec 16736 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 16737
048addec 167382001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 16739
048addec 16740 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 16741 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 16742 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 16743
048addec 167442001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 16745
048addec
JD
16746 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
16747 parameter have a numeric value all the time.
f6fa0866 16748
048addec 16749 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 16750
048addec 167512001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 16752
048addec 16753 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 16754
048addec
JD
16755 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
16756 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 16757
048addec 167582001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 16759
048addec
JD
16760 * xdisp.c (move_it_vertically_backward): Change heuristic
16761 for the case that we didn't move far enough initially.
91c153e2 16762
048addec
JD
16763 * window.c (Frecenter): Simplify computation in the case of window
16764 system frames and ARG < 0; use window_box_height.
65b7d3e7 16765
048addec 167662001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 16767
048addec
JD
16768 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
16769 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 16770
048addec 167712001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 16772
048addec
JD
16773 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
16774 arg is negative.
be676094 16775
048addec 167762001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 16777
048addec
JD
16778 * m/hp800.h: Split the __hpux conditional into the parts
16779 that are right for GNU/Linux too and the parts that are not.
16780 Use the former if GNU_LINUX.
16781 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 16782
048addec 16783 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 16784
048addec 167852001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 16786
048addec
JD
16787 * macros.c, msdos.c, w16select.c: Change doc-string comments to
16788 `new style' [w/`doc:' keyword].
032a857d 16789
048addec 167902001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 16791
048addec
JD
16792 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
16793 before using.
b6270150 16794
048addec 167952001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 16796
048addec
JD
16797 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
16798 keyword].
98cbb9fa 16799
048addec 168002001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 16801
048addec 16802 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 16803
048addec 16804 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 16805
048addec 168062001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 16807
048addec 16808 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
78819ebb 16809 Add comment to explain where the struct came from.
048addec
JD
16810 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
16811 (add_menu_item): Process pop-up menus first to avoid memory leak.
16812 (add_menu_item, w32_menu_display_help): Use `help' field as
16813 Lisp_Object.
16814 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 16815
048addec 168162001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 16817
048addec 16818 * COPYING: Moved back.
fa336b91 16819
048addec
JD
16820 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
16821 Add parentheses around && within ||.
077907d4 16822
048addec 16823 * indent.c (compute_motion): Likewise.
aa2af83a 16824
048addec 16825 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 16826
048addec
JD
16827 * coding.c (setup_coding_system, shrink_encoding_region)
16828 (Fdecode_sjis_char): Likewise.
60a653f1 16829
048addec 168302001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 16831
048addec
JD
16832 * xdisp.c (display_mode_element): Don't read past end of string if
16833 it ends with '%'.
60a653f1 16834
048addec
JD
16835 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
16836 can hold.
60a653f1 16837
048addec
JD
16838 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
16839 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
16840 type changed to Lisp_Object.
16841 (syms_of_data): DEFVAR_LISP them.
60a653f1 16842
048addec 168432001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 16844
048addec
JD
16845 * callproc.c (init_callproc): Set Vdata_directory based on the source
16846 location whenever Emacs was run uninstalled.
60a653f1 16847
048addec 168482001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 16849
048addec
JD
16850 * config.in (HAVE_WORKING_VFORK): New #undefs.
16851 * process.c (create_process):
16852 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
16853 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
16854 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
16855 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
16856 * m/intel386.h (HAVE_VFORK): Likewise.
16857 * m/mips-siemens.h (HAVE_VFORK): Likewise.
16858 * m/mips.h (HAVE_VFORK): Likewise.
16859 * s/freebsd.h (vfork): Remove #define.
16860 * s/lynxos.h (HAVE_VFORK): Remove #undef.
16861 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 16862
048addec 168632001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 16864
048addec
JD
16865 * s/hpux10.h (random): Add undef.
16866 (HAVE_RANDOM): Define it just once.
60a653f1 16867
048addec 168682001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16869
048addec 16870 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 16871
048addec 168722001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 16873
048addec
JD
16874 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
16875 scroll bars of the frame before deleting the frame itself. If the
16876 frame has a widget, delete the frame with XtDestroyWidget, and do
16877 not call XDestroyWindow before that.
60a653f1 16878
048addec 168792001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 16880
048addec 16881 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 16882
048addec 16883 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 16884
048addec 168852001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 16886
048addec
JD
16887 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
16888 excessively large.
60a653f1 16889
048addec
JD
16890 * insdel.c (make_gap_larger): New function.
16891 (make_gap_smaller): New function.
16892 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
16893 Call make_gap_smaller if arg is negative.
60a653f1 16894
048addec 168952001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16896
048addec
JD
16897 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
16898 Pass a dummy argument when calling interrupt_signal.
16899 (parse_menu_item): Mark disabled items before checking for empty def.
16900 (read_char_minibuf_menu_prompt): Make safety more visible.
16901 (read_key_sequence): Add a `first_unbound' variable.
16902 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
16903 unbound prefix as soon as we can detect it.
60a653f1 16904
048addec
JD
16905 * doc.c (Fsnarf_documentation): Add prototype.
16906 (get_doc_string): Handle negative arguments.
16907 (Fdocumentation): Use AREF and ASIZE.
16908 Move the calls to get_doc_string to a single place.
16909 Don't confuse an interactive-spec for a docstring reference.
16910 (Fdocumentation_property): Take advantage of the fact that
16911 get_doc_string now ignores the sign of the docstring position.
60a653f1 16912
048addec 16913 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 16914
048addec 169152001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16916
a64387ee 16917 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 16918
048addec 169192001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16920
048addec
JD
16921 * xterm.c (x_draw_image_relief): Use predefined macro instead of
16922 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 16923
048addec 169242001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 16925
048addec
JD
16926 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
16927 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 16928
048addec 16929 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 16930
048addec 169312001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16932
048addec 16933 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 16934
048addec 169352001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 16936
048addec 16937 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 16938
048addec 169392001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 16940
f63fd14e 16941 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 16942
048addec
JD
16943 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
16944 [!WM_MOUSELEAVE]: Define.
60a653f1 16945
048addec
JD
16946 * w32menu.c (current_popup_menu, get_menu_item_info):
16947 (set_menu_item_info): New vars.
16948 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
16949 (w32_menu_show): Set current_popup_menu.
16950 (add_menu_item): Allocate new strings for owner-drawn menu items
16951 and help strings.
16952 Use owner-draw for disabled menu items again.
16953 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
16954 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 16955
048addec
JD
16956 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
16957 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
16958 <WM_EXITMENULOOP>: Free menu strings.
16959 <WM_MOUSELEAVE>: Stop tracking mouse.
16960 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 16961
048addec
JD
16962 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
16963 and mouse face.
60a653f1 16964
048addec 169652001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 16966
048addec
JD
16967 The following changes add left-fringe and right-fringe
16968 frame parameters to adjust fringe widths, or remove one or
16969 both fringes.
60a653f1 16970
048addec
JD
16971 * frame.h (struct frame): Remove trunc_area_pixel_width and
16972 trunc_area_cols fields.
16973 (Qleft_fringe, Qright_fringe): Declare.
16974 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 16975
048addec
JD
16976 * frame.c (Qleft_fringe, Qright_fringe): New vars.
16977 (syms_of_frame): Initialize them.
60a653f1 16978
048addec
JD
16979 * window.c (coordinates_in_window): Handle separate left and right
16980 fringe widths.
60a653f1 16981
048addec
JD
16982 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
16983 and fringe_cols fields.
16984 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
16985 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
16986 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
16987 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
16988 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
16989 (x_compute_fringe_widths): Add prototype.
60a653f1 16990
048addec
JD
16991 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
16992 fill fringe evenly with small dashes.
f63fd14e 16993 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
16994 clip the new ZV bitmap to avoid jitter between rows.
16995 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
16996 background. Don't draw fringe bitmaps if fringe width is zero.
16997 (x_compute_fringe_widths): New function.
16998 (x_new_font, x_set_window_size_1): Use it.
60a653f1 16999
048addec
JD
17000 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
17001 (x_set_frame_parameters): Process `font' parameter before other
17002 parameters as fringe widths depend on it.
17003 (x_set_fringe_width): New function.
17004 (x_figure_window_size): Use x_compute_fringe_widths.
17005 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
17006 parameters.
60a653f1 17007
048addec
JD
17008 * widget.c (set_frame_size): Use x_compute_fringe_widths.
17009 (EmacsFrameSetCharSize): Ditto.
60a653f1 17010
048addec
JD
17011 * w32term.h: Merged changes from xterm.h.
17012 * w32term.c: Merged changes from xterm.c.
17013 * w32fns.c: Merged changes from xfns.c.
60a653f1 17014
048addec 170152001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17016
048addec 17017 * COPYING: Removed.
60a653f1 17018
048addec 170192001-11-29 Dave Love <fx@gnu.org>
60a653f1 17020
048addec
JD
17021 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
17022 extra extra slot.
17023 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 17024
048addec 170252001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17026
048addec
JD
17027 * fileio.c (file-name-coding-system)
17028 (default-file-name-coding-system): Doc fix (links to referenced
17029 variables added).
60a653f1 17030
048addec 170312001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17032
048addec
JD
17033 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
17034 Add dummy uses of gcproN variables.
60a653f1 17035
048addec
JD
17036 * category.c (describe_category, describe_category_1)
17037 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
17038 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 17039
048addec 170402001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 17041
048addec 17042 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 17043
048addec
JD
17044 * Makefile.in (lispdir): New variable, referring to build dir.
17045 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 17046
048addec 170472001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 17048
048addec
JD
17049 * w32menu.c (w32_menu_display_help): Actually add the new argument
17050 OWNER.
60a653f1 17051
048addec 170522001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 17053
048addec
JD
17054 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
17055 menu items. From David Ponce <dponce@wanadoo.fr>.
17056 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
17057 conditionally.
f63fd14e 17058 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 17059 help event in the owner frame's keyboard buffer.
60a653f1 17060
048addec
JD
17061 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
17062 (Fx_show_tip): Don't subtract last width from row width.
17063
17064 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
17065 (w32_read_socket): Use EQ to compare frames.
60a653f1 17066
048addec 170672001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 17068
048addec
JD
17069 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
17070 OVERLAPS_P.
60a653f1 17071
048addec 170722001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17073
048addec
JD
17074 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
17075 `gcpro3' and `gcpro4'.
60a653f1 17076
048addec 17077 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 17078
048addec 170792001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17080
048addec 17081 * ccl.c: Use AREF and ASIZE.
60a653f1 17082
048addec 170832001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17084
048addec
JD
17085 * lisp.h (run_hook_list_with_args): Remove.
17086 (LIST_END_P): Fix call to wrong_type_argument.
17087 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 17088
048addec 170892001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17090
048addec
JD
17091 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
17092 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 17093
048addec
JD
17094 * eval.c: Use AREF and ASIZE.
17095 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 17096
048addec
JD
17097 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
17098 which match the end of the file-name.
17099 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
17100 is not a valid env var, but leave it as is instead.
60a653f1 17101
048addec
JD
17102 * keymap.c (access_keymap): Handle t bindings like nil bindings.
17103 Make nil bindings in char-tables transparent.
17104 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 17105
048addec 171062001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 17107
048addec
JD
17108 * textprop.c (set_text_properties_1): Allow START, END in either order.
17109 Do nothing if range is empty.
60a653f1 17110
048addec 17111 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 17112
048addec
JD
17113 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
17114 (clean): Not here.
60a653f1 17115
048addec 171162001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17117
048addec
JD
17118 * textprop.c (set_text_properties_1): Clearly mark that the
17119 interval should not be empty.
60a653f1 17120
048addec
JD
17121 * intervals.c (graft_intervals_into_buffer):
17122 Don't call set_text_properties_1 on an empty interval.
60a653f1 17123
048addec 171242001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 17125
048addec 17126 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 17127
048addec
JD
17128 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
17129 don't lose the data in it.
60a653f1 17130
048addec 171312001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 17132
048addec 17133 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 17134
c62aec78 17135 * buffer.c (Fkill_buffer): Likewise.
60a653f1 17136
c62aec78 17137 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 17138
048addec 171392001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17140
048addec 17141 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 17142
048addec 171432001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 17144
048addec
JD
17145 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
17146 Niemitalo <kon@iki.fi>.
60a653f1 17147
048addec 171482001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 17149
048addec 17150 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 17151
048addec
JD
17152 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
17153 (Fx_show_tip): Block input during frame creation.
17154 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 17155
048addec 171562001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 17157
048addec
JD
17158 * lread.c (Fload): Detect recursive load error for more than 3
17159 nestings of the same file.
17160 (Vrecursive_load_depth_limit): Variable deleted.
17161 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 17162
048addec 171632001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 17164
048addec
JD
17165 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
17166 mouse position if either left or top is not specified.
60a653f1 17167
048addec
JD
17168 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
17169 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
17170 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
17171 (my_create_tip_window): Assign tip_window.
17172 (x_create_tip_frame): Use same defaults as X.
17173 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 17174 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 17175
048addec
JD
17176 * w32term.c (x_after_update_window_line): Doc fix.
17177 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
17178 frames.
17179 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 17180
048addec
JD
17181 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
17182 for all Windowed systems.
60a653f1 17183
048addec 171842001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 17185
048addec
JD
17186 * msdos.c (IT_clear_screen): If the frame's faces are not yet
17187 realized, use the initial screen colors to clear the screen.
60a653f1 17188
048addec 171892001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17190
048addec
JD
17191 * textprop.c (Fset_text_properties): Remove unused variables
17192 `unchanged', `prev_changed', `s' and `len'.
60a653f1 17193
048addec
JD
17194 * search.c (Freplace_match): Remove unused variable `inslen'.
17195
17196 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
17197
171982001-11-22 Jason Rumney <jasonr@gnu.org>
17199
17200 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
17201 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
17202 (my_create_tip_window): New function.
17203 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
17204 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
17205
172062001-11-20 Jason Rumney <jasonr@gnu.org>
17207
17208 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
17209 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
17210
17211 * w32fns.c (Vw32_system_coding_system): Remove.
17212 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
17213
172142001-11-19 Stefan Monnier <monnier@cs.yale.edu>
17215
17216 * fileio.c (Fwrite_region): Move choose_write_coding_system to
17217 after build_annotations.
17218
17219 * syntax.c (describe_syntax): Add dummy arg.
17220 (describe_syntax_1): Update call to describe_vector.
17221
17222 * category.c (describe_category): Add dummy arg.
17223 (describe_category_1): Update call to describe_vector.
17224
17225 * keymap.c (Fdescribe_vector): Add `describer' parameter.
17226 (describe_command, describe_translation): Add dummy second param.
17227 (describe_map): Call elt_describer with two arguments.
17228 (describe_vector_princ): Add `fun' parameter.
17229 Call it instead of the hardcoded `princ'.
17230 (describe_vector): Add arg `args'.
17231 Pass it as a new second argument to elt_describer.
60a653f1 17232
048addec 17233 * keymap.h (describe_vector): Update prototype.
60a653f1 17234
048addec
JD
17235 * frame.c: Don't include keymap.h any more.
17236 (keys_of_frame): Remove.
60a653f1 17237
048addec 17238 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 17239
048addec 17240 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 17241
048addec 172422001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 17243
048addec
JD
17244 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
17245 if defined, 0 otherwise.
17246 (MAP_FAILED): Define if not defined and use it to test mmap failure.
17247 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 17248
048addec 172492001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 17250
048addec 17251 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 17252
048addec 172532001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 17254
048addec
JD
17255 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
17256 (x_draw_bar_cursor): If the background color of the glyph under
17257 the cursor equals the frame's cursor color, use the glyph's
17258 foreground color for drawing the bar cursor.
17259 (x_after_update_window_line): Clear internal border in different
17260 circumstances.
17261 (w32_set_vertical_scroll_bar): Check for width and height > 0.
17262 (w32_draw_relief_rect): Correct relief by 1 pixel.
17263 (x_set_glyph_string_background_width):
17264 Set extends_to_end_of_line_p if the row's fill_line_p is set and
17265 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
17266 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
17267 if cursor_in_non_selected_windows is false.
17268 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
17269 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
17270 Notice if cursor gets overwritten.
17271 (notice_overwritten_cursor): Renamed from
17272 note_overwritten_text_cursor. Rewritten to take glyph widths
17273 into account, and to take X positions as parameters.
17274 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
17275 around call to x_draw_glyphs.
17276 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
17277 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
17278 color to use for image glyph reliefs.
17279 (x_draw_image_relief): Accept zero tool_bar_button_relief.
17280 (glyph_rect): Remove unused variable `area'.
60a653f1 17281
048addec
JD
17282 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
17283 some items.
17284 (x_set_internal_border_width): Set frame garbaged when window
17285 doesn't exist yet.
17286 (Fx_create_frame): Accept zero tool_bar_button_relief.
17287 (x_clear_image_1, four_corners_best, image_background)
17288 (image_background_transparent): New functions.
17289 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
17290 (gs_format): Add `:background' entry.
17291 (lookup_image): Set IMG's background color if specified.
17292 (pbm_load, xbm_load_image, png_load): Set IMG's background field
17293 when appropriate.
17294 (x_clear_image_1): Reset `background_valid' and
17295 `background_transparent_valid' fields.
17296 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
17297 calculating it here. Set IMG's background_transparent field.
17298 (enum xpm_keyword_index): Add XPM_BACKGROUND.
17299 (enum png_keyword_index): Add PNG_BACKGROUND.
17300 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
17301 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
17302 (enum gif_keyword_index): Add GIF_BACKGROUND.
17303 (enum gs_keyword_index): Add GS_BACKGROUND.
17304 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
17305 Pre-calculate image background color where necessary.
17306 (x_create_x_image_and_pixmap, xbm_load, gs_load):
17307 Use display info's n_cbits entry for screen depth.
17308 (Fx_show_tip): Remove unused variables `buffer', `top',
17309 `left', `max_width' and `max_height'.
60a653f1 17310
048addec 17311 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 17312
048addec 173132001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 17314
048addec 17315 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 17316
048addec 173172001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17318
048addec 17319 * frame.c (Fframe_live_p): Doc fix.
60a653f1 17320
048addec 173212001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 17322
048addec
JD
17323 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
17324 (message_dolog_marker3): New static variables hold three markers.
17325 (syms_of_xdisp): Initialize and staticpro them.
17326 (message_dolog): Use message_dolog_marker1..3 instead of
17327 allocating markers each time. Unchain them when done.
60a653f1 17328
048addec 173292001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 17330
048addec 17331 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 17332
048addec 173332001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 17334
048addec 17335 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 17336
048addec 173372001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 17338
048addec 17339 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 17340
048addec 173412001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 17342
048addec 17343 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 17344
048addec 173452001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 17346
048addec
JD
17347 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
17348 with invalid position.
60a653f1 17349
048addec 173502001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 17351
048addec 17352 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 17353
048addec
JD
17354 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
17355 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
17356 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 17357
048addec 17358 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 17359
048addec 173602001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17361
048addec
JD
17362 * fileio.c (build_annotations): Split off the tail.
17363 (build_annotations_2): New fun. Extracted from build_annotations.
17364 (Fwrite_region): Split the call to build_annotations into two
17365 calls to build_annotations and build_annotations_2.
077907d4 17366
048addec 173672001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 17368
048addec
JD
17369 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
17370 clear_waiting_for_input with argument.
1756e2fb 17371
048addec 17372 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 17373
048addec 17374 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 17375
048addec 17376 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 17377
048addec 17378 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 17379
048addec 173802001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 17381
048addec
JD
17382 * fileio.c (choose_write_coding_system): New fun, extracted
17383 from Fwrite_region.
17384 (Fwrite_region): Use it.
fa336b91 17385
048addec
JD
17386 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
17387 (funcall_lambda, run_hook_with_args): Make static and add prototype.
17388 (ml_apply, find_handler_clause): Add prototype.
fa336b91 17389
048addec 173902001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 17391
048addec 17392 * config.in: Add #undef HAVE_COFF_H.
fa336b91 17393
048addec
JD
17394 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
17395 Required for ISC 4.1.
fa336b91 17396
048addec 173972001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 17398
048addec
JD
17399 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
17400 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 17401
048addec 174022001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 17403
048addec
JD
17404 The following changes are made to clean up the various internal
17405 references to the fringes to actually use the term `fringe' for
17406 them. Previously, they were called `flags areas', `bitmap areas',
17407 `left/right side of windows', or implicitly as `flags' or
17408 `bitmaps':
fa336b91 17409
048addec 17410 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 17411 Comments fixed. Use renamed symbols.
06e8f738 17412
f63fd14e 17413 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 17414
048addec
JD
17415 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
17416 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
17417 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 17418
048addec 17419 * msdos.c: Comment fix.
9ce647f4 17420
048addec 17421 * w32fns.c: Use renamed symbols.
9b784ab8 17422
f63fd14e 17423 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
17424 (fringe_bitmap_type): Renamed from bitmap_type.
17425 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
17426 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
17427 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 17428
f63fd14e 17429 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
17430 (fringes_extra): Renamed from flags_areas_extra.
17431 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
17432 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
17433 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
17434 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
17435 (FRAME_X_LEFT_FRINGE_WIDTH):
17436 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
17437 (FRAME_X_RIGHT_FRINGE_WIDTH):
17438 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 17439
048addec 17440 * widget.c: Use renamed symbols.
9f7e52b4 17441
f63fd14e 17442 * window.c: Comment fixes. Use renamed symbols.
048addec 17443 (coordinates-in-window-p): Doc fix.
fa336b91 17444
f63fd14e 17445 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 17446
048addec 17447 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 17448
048addec 17449 * xfns.c: Use renamed symbols.
89512fcd 17450
f63fd14e 17451 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
17452 (fringe_bitmap_type): Renamed from bitmap_type.
17453 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
17454 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
17455 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 17456
f63fd14e 17457 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
17458 (fringes_extra): Renamed from flags_areas_extra.
17459 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
17460 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
17461 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
17462 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
17463 (FRAME_X_LEFT_FRINGE_WIDTH):
17464 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
17465 (FRAME_X_RIGHT_FRINGE_WIDTH):
17466 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
17467
174682001-11-15 Jason Rumney <jasonr@gnu.org>
17469
17470 * w32menu.c (add-menu-item): Make help_echo and radio buttons
17471 work for most menu items. From David Ponce
17472 <david.ponce@wanadoo.fr>.
17473
174742001-11-15 Gerd Moellmann <gerd@gnu.org>
17475
17476 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
17477 Some x_set_* function expect to be called even if old and new
17478 value are equal.
17479
17480 * xdisp.c (build_desired_tool_bar_string): Accept zero
17481 tool_bar_button_relief.
17482
17483 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
17484
17485 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
17486
17487 * xterm.c (x_draw_bar_cursor): If the background color of the
17488 glyph under the cursor equals the frame's cursor color, use
17489 the glyph's foreground color for drawing the bar cursor.
17490
17491 * dispnew.c (direct_output_forward_char): Fix character/byte
17492 position comparison.
7d18891d 17493
048addec 174942001-11-15 Miles Bader <miles@gnu.org>
d2936d21 17495
048addec
JD
17496 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
17497 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
17498 Update arguments to find_field.
17499 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
17500 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
17501 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
17502 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 17503
048addec 175042001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 17505
048addec 17506 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 17507
048addec
JD
17508 * dispextern.h (image_background, image_background_transparent):
17509 Conditionalize on HAVE_X_WINDOWS.
7d18891d 17510
048addec 175112001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 17512
048addec 17513 * print.c (Fprin1_to_string): Doc fix.
7d18891d 17514
048addec 17515 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 17516
048addec 17517 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 17518
048addec 17519 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 17520
048addec 17521 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 17522
048addec 17523 * eval.c (syms_of_eval): Doc fix.
7d18891d 17524
048addec 17525 * coding.c (syms_of_coding): Doc fix.
7d18891d 17526
048addec 17527 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 17528
048addec 17529 * dispnew.c (syms_of_display): Doc fix.
9474c847 17530
048addec 17531 * category.c (Fget_unused_category): Doc fix.
9474c847 17532
048addec 17533 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 17534
048addec 175352001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 17536
048addec 17537 * print.c (prin1, print): Doc fix.
e3059a5d 17538
048addec 175392001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 17540
048addec
JD
17541 * fontset.h: Remove declarations of variables
17542 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 17543
048addec
JD
17544 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
17545 `Vclip_large_size_font'.
eae936e2 17546
048addec 175472001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 17548
048addec 17549 * w32fns.c: Doc fix.
ddb67bdc 17550
048addec 175512001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 17552
048addec 17553 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 17554
048addec 17555 * fns.c: Doc fix.
6e1b91d7 17556
048addec 17557 * emacs.c: Doc fix.
1c1d3d69 17558
048addec 17559 * coding.c: Doc fix.
1c1d3d69 17560
048addec
JD
17561 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
17562 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
17563 `new style' [w/`doc:' keyword].
b6f4c7ba 17564
048addec 175652001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 17566
048addec
JD
17567 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
17568 LeaveNotify events. Only FocusIn and FocusOut do that now.
17569 (x_display_and_set_cursor): Do display hollow cursors in active
17570 minibuffer windows when they are not selected.
b6f4c7ba 17571
048addec 175722001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 17573
048addec 17574 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
17575 * w32term.c: Change doc-string comments to `new style'
17576 [w/`doc:' keyword]. Doc fixes.
a89f435d 17577
048addec
JD
17578 * w32fns.c: Don't define max.
17579 (Fx_open_connection): Only execute once.
a4cd0cd7 17580
048addec 175812001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 17582
048addec
JD
17583 * ccl.c: Change macros to use do-while block instead of if-else.
17584 Use braces to follow GNU Coding Standards.
eafb659a 17585
048addec 175862001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 17587
048addec 17588 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 17589
048addec 17590 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 17591
048addec
JD
17592 * insdel.c (replace_range): Use adjust_markers_for_replace
17593 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 17594
78819ebb 17595 * intervals.h (set_text_properties, set_text_properties_1): Declare.
a4cd0cd7 17596
048addec
JD
17597 * textprop.c (set_text_properties_1): New subroutine
17598 broken out of set_text_properties.
17599 (set_text_properties): Use set_text_properties_1.
91823618 17600
048addec
JD
17601 * intervals.c (graft_intervals_into_buffer):
17602 Use set_text_properties_1 to clear out properties.
91823618 17603
048addec
JD
17604 * search.c (Freplace_match): Use replace_range to insert
17605 and delete. Don't request property inheritance from
17606 surrounding text.
86928dfb 17607
048addec 176082001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 17609
048addec 17610 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 17611 vertical fonts. Allow them if face name is explicitly specified.
048addec 17612 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 17613
048addec 176142001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 17615
048addec
JD
17616 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
17617 instead of malloc/free.
a78e0303 17618
048addec 176192001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 17620
048addec
JD
17621 * xfaces.c (merge_face_vectors): Use braces to follow GNU
17622 Coding Standards.
17623 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 17624
048addec 17625 * buffer.c (Fbury_buffer): Likewise.
0c99b139 17626
048addec 17627 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 17628
048addec
JD
17629 * coding.c (encode_coding): Use precomputed value of `src'.
17630 (encode_coding): Remove unused variable `src_end'.
17631 (code_convert_region): Remove unused variables `count'.
830ddd77 17632
048addec 176332001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 17634
048addec
JD
17635 * w32term.c (x_display_and_set_cursor): Do not move system caret
17636 if cursor_glyph is NULL.
55c6d645 17637
048addec 176382001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 17639
048addec 17640 * keymap.c (access_keymap): Fix compilation error.
5de38842 17641
048addec 176422001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 17643
048addec 17644 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 17645
048addec 176462001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 17647
048addec
JD
17648 * intervals.c (graft_intervals_into_buffer):
17649 Remove #ifdef'd-out code.
17650 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 17651
048addec
JD
17652 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
17653 code (eval-current-buffer).
17654 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 17655
048addec 176562001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 17657
048addec 17658 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 17659
048addec 176602001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 17661
048addec 17662 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 17663
048addec
JD
17664 * keyboard.c (make_lispy_event): Check integerness and fix
17665 Lisp_Object/int mixup.
17893c65 17666
048addec 176672001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 17668
048addec 17669 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 17670
048addec
JD
17671 * fontset.c (fontset_font_pattern): Remove unused variable
17672 `family_registry'.
d5360cc7 17673
048addec 17674 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 17675
048addec 176762001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 17677
048addec 17678 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 17679
048addec
JD
17680 * buffer.c (Fkill_buffer): Don't delete auto save file
17681 if buffer is modified.
d9d54213 17682
048addec 176832001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 17684
048addec
JD
17685 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
17686 CHECK_NUMBER_CDR.
b116830b 17687
048addec 176882001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 17689
048addec 17690 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 17691
048addec 176922001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 17693
048addec 17694 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 17695
048addec 176962001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 17697
048addec 17698 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 17699
048addec 177002001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 17701
048addec
JD
17702 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
17703 the program image directly.
982f6c7e 17704
048addec 177052001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 17706
048addec 17707 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 17708
048addec 177092001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 17710
048addec
JD
17711 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
17712 and CHECK_BUFFER.
d31053f9 17713
048addec
JD
17714 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
17715 (record_char): Likewise.
d31053f9 17716
048addec
JD
17717 * keyboard.c (make_lispy_event): Don't insist a drag event must
17718 move to a different buffer position. Instead, check for moving at
17719 least double_click_fuzz.
982f6c7e 17720
048addec 17721 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 17722
048addec 17723 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 17724
048addec
JD
17725 * indent.c (current_column_1, Fmove_to_column): Separate the code
17726 for display-table glyphs from the code for buffer text, to fix
17727 bugs in the former.
830047fd 17728
048addec 177292001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 17730
048addec
JD
17731 * buffer.c (Fbuffer_local_value): New function.
17732 (syms_of_buffer): Defsubr it.
2df5238c 17733
048addec
JD
17734 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
17735 value of `cursor-in-non-selected-windows'.
4e397688 17736
048addec
JD
17737 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
17738 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
17739 (syms_of_xdisp): Initialize it.
48b0f3ae 17740
048addec 177412001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 17742
048addec 17743 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 17744
048addec
JD
17745 * coding.c: Change doc-string comments to `new style' [w/`doc:'
17746 keyword].
3ecaf7e5 17747
048addec
JD
17748 * eval.c (top_level_value, top_level_set): Remove commented and
17749 #ifdef'd-out code.
17750 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 17751
048addec 177522001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 17753
048addec 17754 * xfns.c: Include unistd.h, if it exists.
8db2e33b 17755
048addec 17756 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 17757
048addec 17758 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 17759
048addec 177602001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 17761
048addec
JD
17762 * lisp.h (CHECK_STRING_CAR): New macro.
17763 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
17764 treating XCAR and XCDR as lvalues.
17765 (openp): Use CHECK_STRING_CAR.
17766 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 17767
048addec 177682001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 17769
048addec
JD
17770 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
17771 (SIGMASKTYPE): Define.
1b1acc13 17772
048addec 17773 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 17774
048addec 177752001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 17776
048addec
JD
17777 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
17778 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
17779 Fix typos in comments.
6cb16f95 17780
048addec
JD
17781 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
17782 and #ifdef'd-out code.
17783 Fix and reindent comments.
6cb16f95 17784
048addec 17785 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 17786
048addec
JD
17787 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
17788 argument `i' in macros.
6cb16f95 17789
048addec
JD
17790 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
17791 `i' in macros.
7e9d3c2f 17792
048addec
JD
17793 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
17794 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
17795 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
17796 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
17797 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
17798 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
17799 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
17800 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
17801 in macros.
7e9d3c2f 17802
048addec
JD
17803 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
17804 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
17805 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
17806 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
17807 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
17808 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
17809 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
17810 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
17811 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
17812 (remove unused second argument).
7e9d3c2f 17813
048addec 178142001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 17815
048addec
JD
17816 * syntax.c (describe_syntax): New wrapper.
17817 (Finternal_describe_syntax_value): Rename from describe_syntax.
17818 Don't insert space at front and \n at the end.
17819 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 17820
048addec
JD
17821 * regex.c (re_wctype): Try to fix some warnings.
17822 (regcomp, regexec): Don't forget the __restrict.
9ba48103 17823
048addec 178242001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 17825
048addec 17826 * textprop.c (Fget_char_property): Doc fix.
9ba48103 17827
048addec 178282001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 17829
048addec 17830 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 17831
048addec 17832 * data.c (Fsetq_default): Ditto.
c22e59e1 17833
048addec 17834 * callint.c (Finteractive): Ditto.
9271ed2c 17835
048addec 178362001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 17837
048addec
JD
17838 * macros.c: Don't include keymap.h any more.
17839
178402001-11-01 Richard M. Stallman <rms@gnu.org>
17841
17842 * data.c (Fmake_local_variable): Doc fix.
17843
17844 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
17845 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 17846
048addec 17847 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
17848 bindings along with or instead of the buffer local map.
17849 Make the overriding maps override what they should.
17850
f00691a3 178512001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
17852
17853 * window.c (grow_mini_window): Fix typo in comment.
17854
27188d11
GM
178552001-11-01 Gerd Moellmann <gerd@gnu.org>
17856
7b49b9d2
GM
17857 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
17858 (XTset_vertical_scroll_bar): Likewise.
17859
43f7c3ea
GM
17860 * xfns.c (x_build_heuristic_mask): Use four_corners_best
17861 instead of IMAGE_BACKGROUND.
c22e59e1 17862
b350c2e5
GM
17863 * xfns.c (four_corners_best): Reindent.
17864
c22e59e1 17865 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
17866 Handle :box so that it is possible to specify sexprs.
17867
bf00d461
EZ
178682001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
17869
17870 * s/hpux11.h: New file.
17871
f00691a3 178722001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 17873
2b209b97
PJ
17874 * emacs.c (USAGE1): Show command line option --no-window-system
17875 instead of --no-windows in usage.
17876 (standard_args): Rename --no-windows to --no-window-system.
17877 (bug_reporting_address): Follow Emacs coding conventions.
17878
9dbc9081
PJ
17879 * eval.c (Fcommandp): Doc fix.
17880 Change doc-string comments to `new style' [w/`doc:' keyword].
17881
4e10df59
PJ
17882 * frame.c (Fframe_live_p): Doc fix.
17883
17884 * buffer.c (selective-display-ellipses): Doc fix.
17885
dd387b25
GM
178862001-10-31 Gerd Moellmann <gerd@gnu.org>
17887
fe957e65
GM
17888 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
17889
dd387b25
GM
17890 * xfaces.c (realize_x_face): If C is not a single-byte character,
17891 set the face's colors_copied_bitwise_p instead of the defaulted_p
17892 members which have a different meaning.
17893 (free_face_colors): Do nothing for a face whose colors have been
17894 copied bitwise.
17895
c22e59e1 17896 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 17897
f00691a3 178982001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 17899
687784e8
PJ
17900 * marker.c, mocklisp.c: Change doc-string comments to `new style'
17901 [w/`doc:' keyword].
2e1280f8 17902
b9d9a9b9
GM
179032001-10-31 Gerd Moellmann <gerd@gnu.org>
17904
17905 * fns.c (require_unwind): Return Lisp_Object.
17906
f00691a3 179072001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 17908
fa1361cb
PJ
17909 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
17910 (last-input-char): Revert doc-string to be the same as the
17911 doc-string of `last-input-event'.
17912
6c465a15 17913 * xdisp.c: Fix typos in comments.
48400103 17914
eafa3196
GM
179152001-10-31 Gerd Moellmann <gerd@gnu.org>
17916
17917 * window.c (grow_mini_window): Handle case that the root
17918 window is already smaller than the nominal mininum height.
17919
747d3f2a
SM
179202001-10-30 Stefan Monnier <monnier@cs.yale.edu>
17921
bf9bb76f
SM
17922 * emacs.c (main): Don't call keys_of_macros any more.
17923
17924 * lisp.h (keys_of_macros): Remove.
17925
17926 * macros.c (keys_of_macros): Remove.
17927
747d3f2a
SM
17928 * xfaces.c (Fface_attribute_relative_p): Declare args.
17929
5e905a57
JR
179302001-10-30 Jason Rumney <jasonr@gnu.org>
17931
17932 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
17933 (enum_font_cb2): Ignore fonts with vertical orientation.
17934
3a426197
RS
179352001-10-30 Richard M. Stallman <rms@gnu.org>
17936
17937 * keyboard.c (Finput_pending_p): Doc fix.
17938
a742d646
GM
179392001-10-30 Gerd Moellmann <gerd@gnu.org>
17940
259cf6bc
GM
17941 * xterm.c (x_after_update_window_line): Don't run the code
17942 clearing in borders for rows whose visible height is 0.
17943
3f99f948
GM
17944 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
17945 resized_p flag is set. If not set, use the much less flickering
17946 method previously used.
17947
17948 * dispnew.c (change_frame_size_1): Set frame's resized_p.
17949
17950 * frame.h (struct frame) <resized_p>: New member.
17951
b4a3be43
GM
17952 * lread.c (to_multibyte): Ensure read_buffer is at least twice
17953 as large as the number of bytes to convert.
747d3f2a 17954
a742d646
GM
17955 * lread.c (to_multibyte): New function.
17956 (read1): Use it.
17957
cacbb9e9
EZ
179582001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
17959
17960 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
17961
99cb6b2f
GM
179622001-10-30 Gerd Moellmann <gerd@gnu.org>
17963
327f42ee 17964 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
17965 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
17966 if the row's fill_line_p is set and drawing the last glyph with
17967 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 17968
99cb6b2f
GM
17969 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
17970
8e8223e2
SM
179712001-10-29 Stefan Monnier <monnier@cs.yale.edu>
17972
17973 * xmenu.c: Include coding.h and charset.h.
17974 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
17975 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
17976 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
17977 Explicitly set wv->help. Use `TRUE' rather than `True'.
17978 (menu_help_callback): Use empty_string.
17979
17980 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
17981 (Fx_popup_dialog): Explicitly init f.
17982 (w32_menu_display_help): Use empty_string.
17983
4d083a8f
RS
179842001-10-29 Richard M. Stallman <rms@gnu.org>
17985
b2304472
RS
17986 * fns.c (Frequire): Detect recursive try to require the same
17987 feature 3 or more levels deep, and get error.
17988 (require_unwind): New subroutine.
17989 (require_nesting_list): New variable.
17990 (syms_of_fns): Init and staticpro it.
17991
4d083a8f
RS
17992 * print.c (print_object): Clarify indication of insertion type.
17993
2fe41216
EZ
179942001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
17995
90480000
EZ
17996 * coding.c (syms_of_coding): Document that locale-coding-system is
17997 used for decoding input on X.
17998
2fe41216
EZ
17999 * window.c (Fscroll_left, Fscroll_right): Doc fix.
18000
f00691a3 180012001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
18002
18003 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
18004 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
18005
60ebcfe8
GM
180062001-10-29 Gerd Moellmann <gerd@gnu.org>
18007
9a7bdceb
GM
18008 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
18009 use NO_CURSOR if cursor_in_non_selected_windows is false.
18010
3f08fcd2
GM
18011 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
18012 the slant attribute if FRAME is t.
18013
0ccfdad2
GM
18014 * xfns.c (x_set_internal_border_width): Set frame garbaged
18015 when X window doesn't exist yet.
18016
ef253080
GM
18017 * xterm.c (x_after_update_window_line): Clear internal border
18018 in different circumstances.
b116830b 18019
60ebcfe8
GM
18020 * xterm.c (XTread_socket) <KeyPress>: Don't use
18021 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
18022 <handa@etl.go.jp>.
18023
73d25f9c
EZ
180242001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
18025
18026 * m/ibms390.h: New file. From Adam Thornton
18027 <athornton@sinenomine.net>.
18028
cac1daf0
GM
180292001-10-28 Gerd Moellmann <gerd@gnu.org>
18030
053b3256 18031 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 18032
cac1daf0
GM
18033 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
18034 a loop counter.
18035
f00691a3 180362001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 18037
f9711de4 18038 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 18039
4707d2d0
PJ
18040 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
18041 keyword].
18042 Fix typos in comments.
b116830b 18043
d883731c
PJ
18044 * emacs.c (bug_reporting_address): New function.
18045 Use it when displaying usage message.
18046
04012254
PJ
18047 * minibuf.c (read_minibuf): Remove unused external declaration of
18048 variable `Qread_only'.
18049
13b1a09c
PJ
18050 * keymap.c (access_keymap): Remove unused variable `charset'.
18051
5bbf4378
MB
180522001-10-28 Miles Bader <miles@gnu.org>
18053
18054 * xfaces.c (merge_face_heights): Handle TO being relative as well.
18055 Remove #ifdef'd-out code.
18056 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
18057 (syms_of_xfaces): Initialize them.
18058
1ce1e4ee
JR
180592001-10-27 Jason Rumney <jasonr@gnu.org>
18060
18061 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
18062 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
18063 position using the system caret.
18064
18065 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
18066 (w32_system_caret_height, w32_system_caret_x)
18067 (w32_system_caret_y): New variables for tracking system caret.
18068 (w32_initialize): Initialize them.
c2d53558 18069 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 18070
c2d53558
SM
18071 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
18072 New messages types.
1ce1e4ee
JR
18073
18074 * w32term.c (note_mouse_highlight): Clear old help_echo.
18075
f00691a3 180762001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 18077
bb4600a4
PJ
18078 * xterm.c: Fix typo in a comment.
18079
7db35a48
PJ
18080 * emacs.c: Fix typos in comments.
18081 Remove unnecessary spaces.
18082 Change doc-string comments to `new style' [w/`doc:' keyword].
18083 (USAGE2): Fix typos in usage string.
18084
a7248e4f
PJ
18085 * xterm.c: Fix typo in a comment.
18086
4e30ce42
PJ
18087 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
18088 emacs.c.
18089
62725a92
GM
180902001-10-27 Gerd Moellmann <gerd@gnu.org>
18091
798dbe1f 18092 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 18093 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
18094 farther backward when target_y was not reached.
18095
62725a92
GM
18096 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
18097 Display errno only if non-zero.
18098 (sound_warning): New function.
18099 (vox_configure): Don't treat failing to set sample rate as error.
18100 (various places): Improve error messages.
18101
d4e34d24
EZ
181022001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
18103
944e6f60
EZ
18104 * fileio.c (Faccess_file): Run the argument filename through
18105 Fexpand_file_name, before using it.
18106
d4e34d24
EZ
18107 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
18108 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
18109
38d2af0c
GM
181102001-10-26 Gerd Moellmann <gerd@gnu.org>
18111
da80a8d5
GM
18112 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
18113
38d2af0c
GM
18114 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
18115 Fix clearing in the case of scroll bars on the right.
c2d53558 18116
45de4a6f 181172001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
18118
18119 * w32gui.h (XImage): Add a dummy typedef.
18120
fbd5ceb2
GM
181212001-10-26 Gerd Moellmann <gerd@gnu.org>
18122
c2d53558 18123 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 18124
b23236fb
EZ
181252001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
18126
18127 * frame.c (Fframe_parameter): Fix last change.
18128
5d991fc4
EZ
18129 * fileio.c: Revert last change (which removed old commented-out
18130 version of expand-file-name). Add a comment that explains why
18131 this old version should not be removed.
18132
879eadc3
GM
181332001-10-25 Gerd Moellmann <gerd@gnu.org>
18134
75700ff2
GM
18135 * frame.c (Fframe_parameter): Fix a bug whereby some
18136 ``artificial'' frame parameters, like `minibuffer' were not
18137 obtained by calling Fframe_parameters.
18138
dfe92a6a
GM
18139 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
18140 cursor differently.
18141
879eadc3
GM
18142 * xdisp.c (move_it_vertically_backward): Compute line height
18143 differently. Add heuristic to try to be more compatible to 20.x.
18144
e1010ebe
SM
181452001-10-25 Stefan Monnier <monnier@cs.yale.edu>
18146
d73a471b
SM
18147 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
18148
d6da5a06
GM
18149 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
18150 boolean.
e1010ebe 18151
f66bd220
MB
181522001-10-25 Miles Bader <miles@gnu.org>
18153
18154 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
18155 BG is a pointer to a structure, not a structure.
18156 (gif_format, png_format): Add missing commas.
18157
d436d538
RS
181582001-10-24 Richard M. Stallman <rms@gnu.org>
18159
18160 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 18161 (syms_of_xfaces): Defsubr it.
d436d538 18162
f00691a3 181632001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
18164
18165 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
18166 variable `area'.
18167
f00691a3 181682001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 18169
c2d53558 18170 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 18171
e2a57b34
MB
181722001-10-25 Miles Bader <miles@gnu.org>
18173
18174 * dispextern.h (struct image): Add `background',
18175 `background_valid', and `background_transparent' fields.
18176 (image_background, image_background_transparent): New declarations.
18177 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
18178 * xfns.c (image_background, image_background_transparent)
18179 (four_corners_best): New functions.
c2d53558 18180 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
18181 (gs_format): Add `:background' entry.
18182 (lookup_image): Set IMG's background color if specified.
18183 (pbm_load, xbm_load_image, png_load): Set IMG's background field
18184 when appropriate.
18185 (x_clear_image_1): Reset `background_valid' and
18186 `background_transparent_valid' fields.
18187 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
18188 calculating it here. Set IMG's background_transparent field.
18189 (enum xpm_keyword_index): Add XPM_BACKGROUND.
18190 (enum png_keyword_index): Add PNG_BACKGROUND.
18191 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
18192 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
18193 (enum gif_keyword_index): Add GIF_BACKGROUND.
18194 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 18195 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
18196 Pre-calculate image background color where necessary.
18197 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
18198 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
18199 color to use for image glyph reliefs.
18200
b547b6e8
GM
182012001-10-24 Gerd Moellmann <gerd@gnu.org>
18202
d9e3b8c6
GM
18203 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
18204 in full-width rows.
c2d53558 18205
b547b6e8
GM
18206 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
18207 Fix clearing of area not covered by scroll bar.
18208
f00691a3 182092001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
18210
18211 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
18212 and `real_start'.
c2d53558 18213 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
18214 (glyph_rect): Remove unused variable `area'.
18215
76cb5e06
GM
182162001-10-24 Gerd Moellmann <gerd@gnu.org>
18217
bdbdebff 18218 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
18219
18220 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
18221 (row_containing_pos): Take additional argument DY.
18222 Treat rows ending in middle of char differently.
62e33982
GM
18223 (display_line): Handle tabs on window systems differently.
18224
18225 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
18226 with additional argument.
18227
18228 * dispextern.h (row_containing_pos): Adjust prototype.
18229
76cb5e06
GM
18230 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
18231 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
18232 (try_window_id, try_window_reusing_current_matrix)
18233 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 18234 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 18235
f00691a3 182362001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 18237
c9e60620
PJ
18238 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
18239 gnuemacs).
18240 (HAVE_BOXES): Fix typo in comment.
18241 (push_menu_pane): Fix typo in comment.
18242
3b552d56
PJ
18243 * xdisp.c: (display_prop_string_p): Remove unused local declaration
18244 of `Qwhen'.
18245 (single_display_prop_string_p): Remove unused local declarations
18246 of `Qwhen' and `Qmargin'.
18247 (string_buffer_position): Remove unused variable `around'.
18248 (store_frame_title): Remove unused variable `width'.
18249
15c565ac
PJ
18250 * window.c: Don't define max.
18251 (coordinates_in_window): Remove unused variable `uy'.
18252
a8818eb9
PJ
18253 * widget.c: Don't define max.
18254
996fee11
PJ
18255 * process.c: Don't define max.
18256 (create_process): Remove unused variable `buffer'.
18257
496e1a5b
GM
182582001-10-23 Gerd Moellmann <gerd@gnu.org>
18259
c2d53558 18260 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 18261
5905ae8b
EZ
182622001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
18263
18264 * xfaces.c (Finternal_set_lisp_face_attribute)
18265 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
18266 frame is on a windowed display.
18267
24db49fb
GM
182682001-10-23 Gerd Moellmann <gerd@gnu.org>
18269
c2d53558
SM
18270 * dispnew.c (sync_window_with_frame_matrix_rows):
18271 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
18272 of marginal areas.
18273
c2d53558 18274 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 18275
f0487f05
EZ
182762001-10-23 Andreas Schwab <schwab@suse.de>
18277
18278 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
18279 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
18280
f0a48a01
GM
182812001-10-23 Gerd Moellmann <gerd@gnu.org>
18282
c2d53558 18283 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
18284 REAL_END. Notice if cursor gets overwritten.
18285 (notice_overwritten_cursor): Take X positions as parameters.
18286 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
18287 around call to x_draw_glyphs.
18288
f00691a3 182892001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 18290
fc11dff0
PJ
18291 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
18292 instead of C) and usage.
a50a10a0 18293
fc11dff0
PJ
18294 * editfns.c (char-to-string): Fix argument names (use CHAR instead
18295 of C) and usage.
a50a10a0
PJ
18296
18297 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
18298 `left', `max_width' and `max_height'.
18299
8738febd
GM
183002001-10-23 Gerd Moellmann <gerd@gnu.org>
18301
18302 * xdisp.c (display_line): For a tab continued to the next line,
18303 set row's ends_in_middle_of_char_p.
18304
653c329b
GM
183052001-10-22 Gerd Moellmann <gerd@gnu.org>
18306
18307 * xdisp.c (display_line): Fix computation of continuation lines
18308 width for TABs.
18309
f00691a3 183102001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 18311
7ba51063
PJ
18312 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
18313 `Qlaplace'.
18314
f958c5ac
PJ
18315 * fileio.c: Remove unused code.
18316
eb360291
MB
183172001-10-22 Miles Bader <miles@gnu.org>
18318
18319 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
18320 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
18321 Remove `DOC_STRINGS_IN_COMMENTS' cases.
18322
98515cf0
JR
183232001-10-21 Jason Rumney <jasonr@gnu.org>
18324
18325 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
18326
93026d88
EZ
183272001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
18328
18329 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
18330 (Finsert_string): Avoid the multi-line string literals warning.
18331
c9a95b79
MB
183322001-10-22 Miles Bader <miles@gnu.org>
18333
18334 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
18335 (Fdocumentation): Don't use it.
18336 (syms_of_doc): Don't initialize it.
18337
18338 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
18339 * print.c (Fwith_output_to_temp_buffer): Likewise.
18340 * window.c (Fsave_window_excursion): Likewise.
c2d53558 18341 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 18342 (Fsave_restriction): Likewise.
c2d53558
SM
18343 * eval.c (Frun_hooks, Frun_hook_with_args)
18344 (Frun_hook_with_args_until_failure)
18345 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
18346 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
18347 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
18348 (Funwind_protect, Fcondition_case): Likewise.
18349 * coding.c (Ffind_operation_coding_system): Likewise.
18350 * keyboard.c (Ftrack_mouse): Likewise.
18351
a3b10252
MB
183522001-10-21 Miles Bader <miles@gnu.org>
18353
c2d53558 18354 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
18355 (Fmake_hash_table): Add usage: string to doc string.
18356 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 18357 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
18358 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
18359 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
18360 (Fml_prefix_argument_loop): Likewise.
18361
f00691a3 183622001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 18363
c2d53558 18364 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 18365
c6f73eec
PJ
18366 * sysdep.c (init_sys_modes): Change doc-string comments to `new
18367 style' [w/`doc:' keyword].
18368
18369 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
18370 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
18371 comments to `new style' [w/`doc:' keyword].
18372
3cf3436e
JR
183732001-10-21 Jason Rumney <jasonr@gnu.org>
18374
18375 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
18376
c169b8f1
JR
18377 * w32term.c (remember_mouse_glyph): New function.
18378 (w32_mouse_position): Use it.
18379 (note_mouse_movement): If the mouse moved off the glyph, remember
18380 its new position.
c2d53558 18381
4fdd691b
JR
18382 * w32term.h (struct w32_output): Correct spelling of x_compatible.
18383 (w32_display_info): Add mouse_face_overlay.
18384
c169b8f1
JR
18385 * w32term.c (notice_overwritten_cursor): Renamed from
18386 note_overwritten_text_cursor. Rewritten to take glyph widths into
18387 account.
18388 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
18389 (fast_find_string_pos): New function.
18390 (fast_find_position): Return the correct vpos. Add parameter
18391 STOP. In the final row, stop before glyphs having STOP as object.
18392 Don't consider glyphs that are not from a buffer.
18393 (fast_find_position) [0]: Add a presumably more correct version
18394 for after 21.1.
18395 (expose_window_tree, expose_frame): Don't compute intersections here.
18396 (expose_window): Do it here instead.
18397 (expose_window_tree, expose_window, expose_line): Return 1 when
18398 overwriting mouse-face.
18399 (expose_window): If W is the window currently being updated, mark
18400 the frame garbaged.
18401 (expose_frame): If mouse-face was overwritten, redo it.
18402 (x_use_underline_position_properties): New variable.
18403 (syms_of_xterm): DEFVAR_BOOL it.
18404 (x_draw_glyph_string): Add comment to use it in future.
18405 (x_draw_glyph_string): Restore clipping after drawing box.
18406 Fix a computation of the underline position.
18407 (w32_get_glyph_string_clip_rect): Minor cleanup.
18408 (x_fill_stretch_glyph_string): Remove an assertion.
18409 (x_produce_glyphs): Don't convert multibyte characters
18410 to unibyte characters in unibyte buffers.
18411 (cursor_in_mouse_face_p): New function.
18412 (x_draw_stretch_glyph_string): Use it to choose a different GC
18413 when drawing a cursor within highlighted text. Don't draw
18414 background again if it has already been drawn.
18415 (x_draw_glyph_string_box): Don't draw a full-width
18416 box just because the glyph row's full_width_p flag is set.
18417 (x_draw_glyphs): Fix computation of rightmost x for
18418 full-width rows.
18419 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
18420 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 18421 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
18422 (x_update_window_end): Handle overwritten mouse face
18423 also for tool bar windows.
18424 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
18425 DRAW is DRAW_IMAGE_RAISED.
18426 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
18427 actually redrawn. Make the function static.
18428 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
18429 optimize away highlighting if we pass over that same overlay again.
18430 (note_mouse_highlight): Call mouse_face_overlay_overlaps
18431 to detect a case where we have to highlight a different region
18432 despite not having left the currently highlighted region.
18433 Set mouse_face_overlay in the x_display_info. Avoid changing the
18434 mouse pointer shape when show_mouse_face has already done it, or
18435 there is no need. Handle mouse-face and help-echo in strings.
18436 (glyph_rect): New function.
18437 (w32_mouse_position): Use it to raise the threshold for mouse
18438 movement event generation.
18439 (w32_initialize_display_info): Initialize the x_display_info's
18440 mouse_face_overlay.
18441 (w32_set_vertical_scroll_bar): Don't clear a zero height
18442 or width area.
18443 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
18444 a widget to zero height.
18445
3cf3436e 18446 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 18447 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
18448 equivalents in menu_items.
18449 (w32_menu_show): Don't overwrite an item's name with its key
18450 description in case the description is a multibyte string.
18451 (single_submenu): Some cleanup.
18452
18453 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
18454 (postprocess_image): New function.
18455 (lookup_image): Call it for all image types except PostScript.
18456 (x_kill_gs_process): Call postprocess_image.
18457 (tiff_error_handler, tiff_warning_handler): New functions.
18458 (tiff_load): Install them as handlers.
18459 (x_kill_gs_process): Recognize if someone has cleared the image
18460 cache under us.
18461 (valid_image_p): Protect better against invalid image
18462 specifications. Previous code could signal an error.
18463 (Fx_hide_tip, Fshow_tip): Doc fix.
18464 (Fv_max_tooltip_size): New variable.
18465 (syns_of_xfns): DEFVAR_LISP it.
18466 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 18467 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
18468 window_width. Use a maximum tooltip size specified by
18469 Vx_max_tooltip_size, if that has valid contents.
18470 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
18471 Make sure the tooltip is completely visible.
18472 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
18473 (Fx_create_frame): Adjust the frame's height for presence
18474 of the tool bar before calling x_figure_window_size.
18475 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
18476 when the window gets smaller.
18477 (x_set_foreground_color): Set frame's cursor_pixel.
18478 (x_set_foreground_color, x_set_background_color): Cleaned up.
18479 (x_set_font): Handle case of x_new_fontset returning the same name
18480 as before, although there was a change in fontsets.
18481
386ca361
MB
184822001-10-21 Miles Bader <miles@gnu.org>
18483
c2d53558 18484 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
18485 (Flogxor): Add usage: string to doc string.
18486 * charset.c (Fstring): Likewise.
18487 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
18488 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
18489
f00691a3 184902001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 18491
03be2694
PJ
18492 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
18493
18494 * alloc.c: Reindent DEFUNs with doc: keywords.
18495
18496 * abbrev.c (Finsert_abbrev_table_description): Reindent.
18497
14ff1ee0
PJ
18498 * frame.c: Change doc-string comments to `new style' [w/`doc:'
18499 keyword].
18500
2f147815 18501See ChangeLog.9 for earlier changes.
6922b018
KH
18502
18503;; Local Variables:
49b3bd82 18504;; coding: iso-2022-7bit
6922b018 18505;; End:
2a34a036 18506
2f147815 18507 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
18508 Copying and distribution of this file, with or without modification,
18509 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
18510
18511;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4