(ido-file-internal): Fall back to non-ido command if
[bpt/emacs.git] / src / ChangeLog
CommitLineData
fafbb99d 12005-03-31 Kenichi Handa <handa@m17n.org>
bf762c98
KH
2
3 * coding.c (syms_of_coding): Fix previous change.
4
52005-03-25 Kenichi Handa <handa@m17n.org>
6
7 * coding.c (syms_of_coding): Suggest to use set-coding-category in
8 the docstring of coding-category-list.
9
f793f885
KS
102005-03-31 Kim F. Storm <storm@cua.dk>
11
12 * keyboard.c (Qmouse_fixup_help_message): New var.
13 (syms_of_keyboard): Intern and staticpro it.
14 (show_help_echo): Apply mouse-fixup-help-message to help string.
15
c364fe19
KS
162005-03-30 Kim F. Storm <storm@cua.dk>
17
18 * xdisp.c (display_line): Allow multiple overlay arrows in window.
19
c70a4df6
SM
202005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
21
22 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
23 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
24 (Ffile_name_absolute_p): Use it.
25 (search_embedded_absfilename): New fun, extracted from
26 Fsubstitute_in_file_name. Use file_name_absolute_p.
27 Free the pw data after use.
28 (Fsubstitute_in_file_name): Use it.
29 After cutting a prefix, re-check file-name-handler.
30
6e7d0438
JR
312005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
32
33 * w32term.h (x_output): add focus_state.
34
35 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
36 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
37
65671706
SM
382005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
39
40 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
41 Use Fexit_minibuffer.
42 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
43
0de4dad4
SM
442005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
45
781da985
SM
46 * dired.c (Ffile_attributes): Add a missing gcpro.
47
0de4dad4
SM
48 * alloc.c (make_number): The arg can be bigger than `int'.
49 * lisp.h (make_number): Make prototype more precise.
50
51 * process.c, dired.c (Vfile_name_coding_system)
52 (Vdefault_file_name_coding_system):
53 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
54 (Vdefault_file_name_coding_system): Remove unused declarations.
55
ff18668f
JD
562005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
57
58 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
59 if it failed to pop up (Gnome "show pointer on ctrl" option makes
60 menus fail to pop up).
61
0de4dad4 622005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
66347da7
SM
63
64 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
0de4dad4 65 Just prepend a backslash without replacing the NBSP by an SPC.
66347da7 66
8df0ffbe
KS
672005-03-22 Kim F. Storm <storm@cua.dk>
68
69 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
70 * dispextern.h (lookup_derived_face): Fix prototype.
71 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
72
73 * xdisp.c (handle_single_display_spec): Derive left-fringe and
74 right-fringe face from fringe face.
75
76 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
77 Derive face from fringe face.
78
6ca30ba4
JD
792005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
80
81 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
82
d615870a
DK
832005-03-22 David Kastrup <dak@gnu.org>
84
85 * textprop.c (Fnext_char_property_change)
66347da7 86 (Fprevious_char_property_change): Allow marker as limit.
d615870a
DK
87 (Fnext_single_char_property_change)
88 (Fprevious_single_char_property_change): Check that limit is a
89 number in strings.
90 (Fnext_single_char_property_change): Coerce position to integer.
91 (Fprevious_single_char_property_change): Same here.
92
32b939ea
TTN
932005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
94
95 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
96
6027e473
SM
972005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
98
99 * frame.c (Fignore_event): Remove.
100 (syms_of_frame): Don't defsubr it.
101
102 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
103 redundant `ignore-event'.
104
730f4d72
EZ
1052005-03-19 Eli Zaretskii <eliz@gnu.org>
106
107 * unexec.c (write_segment, unexec): Move these functions to avoid
108 forward references (which cause errors with "gcc -gcoff").
109
c7f6afd5
JD
1102005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
111
6027e473 112 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
9188be47 113 that it doesn't become "tooltip". The specbind is enough.
8d5980cf 114
c7f6afd5
JD
115 * xrdb.c (x_load_resources): Use different char *helv when I18N
116 is present.
117
db328182
KH
1182005-03-17 Kenichi Handa <handa@m17n.org>
119
66347da7 120 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
db328182 121
211f2210
SM
1222005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
123
124 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
125 Use xic_create_fontsetname even for non-Motif menus.
126 Don't forget to free the fontsetname.
127
128 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
129
c7bd5d57
RS
1302005-03-17 Richard M. Stallman <rms@gnu.org>
131
132 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
133
134 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
135 (Fmake_symbolic_link): Use G to read the new file name.
136
137 * callint.c (Finteractive): Document G option.
138 (Fcall_interactively): Implement G option.
139
140 * buffer.c (buffer_lisp_local_variables): New function,
141 broken out from Fbuffer_local_variables.
142 (clone_per_buffer_values): Use buffer_lisp_local_variables.
143
888953f1
SM
1442005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
145
3c916d65
SM
146 * xfns.c (xic_create_fontsetname): Add `motif' argument.
147 Always return a freshly allocated string.
148 (xic_create_xfontset): Adjust call.
149
150 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
151 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
152 (dump_realized_face): Fix warning.
153
9f9e5275
SM
154 * emacs.c (Fkill_emacs): YAILOM.
155
888953f1
SM
156 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
157
48502d68
YM
1582005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
159
160 * mac.c (HASHKEY_TERMINAL): Remove.
161 (HASHKEY_MAX_NID): New macro.
162 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
163 argument.
888953f1 164 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
48502d68
YM
165 (xrm_create_database, xrm_q_put_resource)
166 (xrm_merge_string_database, xrm_q_get_resource_1)
167 (xrm_q_get_resource): Change resource database representation so
168 that it may not use multiple hash tables for a single database.
169 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
170
d5161e8c
SM
1712005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
172
11a646cd
SM
173 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
174
175 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
176 locale-coding-system, as was already done for WINDOWSNT.
177
d5161e8c
SM
178 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
179 translation for chars in the 0-255 range.
180
568b6e41
LK
1812005-03-16 Lute Kamstra <lute@gnu.org>
182
183 * floatfns.c (Ffloor): Doc fix.
184
469fb3cf
YM
1852005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
186
187 * mac.c: Include macterm.h instead of directly including Carbon.h.
188 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
189 (Qarray, Qdictionary): New variables.
190 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
191 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
192 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
193 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
194 in callback for CFDictionaryApplyFunction.
195 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
196 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
197 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
198 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
199 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
200 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
201 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
3d454340 202 (skip_white_space, parse_comment, parse_include_file)
469fb3cf
YM
203 (parse_binding, parse_component, parse_resource_name, parse_value)
204 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
205 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
d5161e8c
SM
206 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
207 New functions.
469fb3cf
YM
208
209 * macfns.c (mac_get_rdb_resource): Remove function.
210 (x_get_string_resource): Use xrm_get_resource.
211
212 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
213
214 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
215 name_list_element.
216 (mac_make_rdb): Create resource database from preferences and
217 argument string.
218 (mac_term_init): Save resource database to cddr part of
219 name_list_element.
220
221 * macterm.h (xrm_merge_string_database, xrm_get_resource)
222 (xrm_get_preference_database): Add externs.
223 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
224 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
225 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
226
227 * process.c (init_process): Change `#ifdef DARWIN' to `#if
228 defined (DARWIN) || defined (MAC_OSX)'
229
230 * s/darwin.h (DARWIN): Don't define.
231
6a3fac90
YM
2322005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
233
234 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
235 Remove unused variables.
236 (syms_of_macfns): Don't initialize them. Likewise for
237 Qface_set_after_frame_default. Defvar and initialize
238 Vx_window_horizontal_drag_shape.
239 (x_set_mouse_color): Change mouse pointer shape.
240 (mac_window) [!MAC_OSX]: Create root control.
469fb3cf 241 (Fx_create_frame): Remove initializations of mouse pointer shapes.
6a3fac90
YM
242 (hourglass_started): New function (from xfns.c).
243 (start_hourglass, cancel_hourglass): Put function body in #ifdef
244 MAC_OSX.
245 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
246 indicator for each non-tooltip frame if needed, and show it.
d5161e8c 247 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
6a3fac90
YM
248
249 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
250 Controls.h. Use ThemeCursor instead of CursHandle.
251
d5161e8c
SM
252 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
253 Remove functions and declarations.
254 (mac_set_colors): Take argument for saving background color.
255 All callers changed.
6a3fac90
YM
256 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
257 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
258 background color.
259 (x_update_end, mac_do_track_drag): Don't reset background color.
d5161e8c
SM
260 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
261 Use SetThemeCursor.
6a3fac90
YM
262 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
263 indicator control to the upper-right corner of the window.
264 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
265 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
266 (do_window_update): Update controls after updating content area.
267 (mac_handle_window_event): Remove unused extern.
268 (XTread_socket): Check both control handle and control part code
269 to determine whether a scroll bar is clicked. Activate/deactivate
270 root control instead of contained scroll bar controls.
271 (make_mac_terminal_frame): Use ThemeCursor constants.
272
d5161e8c
SM
273 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
274 New member hourglass_control.
6a3fac90 275 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
d5161e8c 276 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
6a3fac90 277
a7321976
YM
2782005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
279
280 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
6a3fac90 281 coincides with that in Apple X11 except `clear', `enter' on
a7321976
YM
282 laptops, and fn + `enter' on laptops.
283
f7b758bd
SM
2842005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
285
286 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
287 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
288 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
289
290 * xfns.c (xic_defaut_fontset): New constant.
291 (xic_create_fontsetname): New function.
292 Extracted from create_frame_xic. Try to generate a slightly
293 better fontset.
294 (xic_create_xfontset): Use it.
295 (create_frame_xic): Simplify.
296
dac24db4
SM
2972005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
298
299 * fileio.c (Fmake_symbolic_link): Fix last change.
300
e0402468
RS
3012005-03-11 Richard M. Stallman <rms@gnu.org>
302
303 * fileio.c (Frename_file, Fadd_name_to_file)
304 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
305 expand the basename of FILE relative to it.
306
fa815b14
KH
3072005-03-11 Kenichi Handa <handa@m17n.org>
308
309 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
310 before calling setup_coding_system so that autoloading of a coding
311 system work.
312
817d354b
JD
3132005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
314
68a505ef
JD
315 * xfns.c (hourglass_started): New function.
316
317 * dispextern.h: Declare hourglass_started.
318
319 * keyboard.c (Fexecute_extended_command): Restart hourglass
320 after call to Fcompleting_read if already started.
321
817d354b
JD
322 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
323 GTK main loop is entered in xterm.c, thus doing the redraw.
324
b0a6f45c
KS
3252005-03-10 Kim F. Storm <storm@cua.dk>
326
327 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
328
ee5d57b0
KH
3292005-03-08 Kenichi Handa <handa@m17n.org>
330
331 * frame.c (x_set_font): Call set_default_ascii_font if an
332 available font is found.
333
334 * fontset.c (set_default_ascii_font): New function.
dac24db4 335 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
ee5d57b0
KH
336
337 * fontset.h (set_default_ascii_font): Extern it.
338
f30c4a5c
KS
3392005-03-07 Kim F. Storm <storm@cua.dk>
340
3fb26a86
KS
341 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
342 (clear_image_cache_count): New var.
343 (redisplay_internal): Don't clear face and image caches in the
344 middle of redisplay; do it afterwards.
345
a54595d4
KS
346 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
347
f30c4a5c
KS
348 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
349 is valid. If not, clear phys_cursor_on_p and return.
350
3d182f9d
AS
3512005-03-07 Andreas Schwab <schwab@suse.de>
352
353 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
354
85d964de
RS
3552005-03-06 Richard M. Stallman <rms@gnu.org>
356
357 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
358
359 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
360 (Feval, Ffuncall): Use CHECK_CONS_LIST.
361
362 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
363
364 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
365 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
366
3ff96c81
JL
3672005-03-05 Juri Linkov <juri@jurta.org>
368
369 * emacs.c (USAGE1): Replace Info node name "command arguments"
370 with "emacs invocation".
371 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
372 allow arguments `--color' and `MODE' to be separated by space.
373 Add --no-blinking-cursor, -nbc.
374 (standard_args): Add -nbc, --no-blinking-cursor.
375
64eb0083
TTN
3762005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
377
378 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
379 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
380 * fileio.c (Fexpand_file_name) [VMS]:
381 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
382 * doc.c (munge_doc_file_name) [VMS]: Likewise.
383 (Fsnarf_documentation): Call munge_doc_file_name.
384
ad708ae5
TTN
3852005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
386
387 * s/vms.h (FILE_SYSTEM_CASE): New macro.
388 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
389 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
390
ba025f6d
YM
3912005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
392
393 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
394 defined (MAC_OSX) && defined (HAVE_CARBON)'.
ad708ae5 395
dac24db4 396 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
ba025f6d
YM
397
398 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
399 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
dac24db4 400 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
ba025f6d
YM
401 (mac_clear_font_name_table): Move extern to macterm.h.
402
403 * macfns.c (install_window_handler): Move extern to macterm.h.
404 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
405 valid. Don't check !NILP (dir) because it is already checked with
406 CHECK_STRING.
407 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
dac24db4 408 specifying the default location and obtaining the selected filename.
ba025f6d
YM
409
410 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
411
2313f861 412 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
ba025f6d
YM
413 are included via Carbon.h.
414
dac24db4
SM
415 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
416 Define USE_CARBON_EVENTS to 1.
2313f861 417 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
ba025f6d
YM
418 (x_free_frame_resources): Call remove_window_handler for
419 non-tooltip windows.
420 [TARGET_API_MAC_CARBON]: Don't include headers that are included
421 via Carbon.h.
422 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
423 (mac_do_receive_dragUPP): New variables.
424 (mac_handle_service_event, init_service_handler): Put declarations
425 and definitions in #ifdef MAC_OSX.
426 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
427 drag-and-drop handler functions and register them.
428 (remove_window_handler): New function.
dac24db4
SM
429 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
430 Use fsspec_to_posix_pathname.
ba025f6d
YM
431 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
432 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
dac24db4
SM
433 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
434 Set default cursors.
ba025f6d
YM
435 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
436 init_service_handler or init_quit_char_handler.
437 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
438
439 * macterm.h (install_window_handler, remove_window_handler)
440 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
441 (mac_clear_font_name_table): New externs.
ad708ae5 442
c1558952
TTN
4432005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
444
445 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
446 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
447 (Fexpand_file_name): Likewise.
448
fa439170
TTN
4492005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
450
451 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
452 no longer special-case VMS. Add bogus return value.
453
db2dacf6
KS
4542005-03-02 Kim F. Storm <storm@cua.dk>
455
456 * dispextern.h (XASSERTS): Define to 0 if not already defined.
457 (xassert) [!XASSERTS]: Define dummy version.
458
0870514c
KS
4592005-03-02 Kim F. Storm <storm@cua.dk>
460
461 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
462 Reported by David Kastrup.
463
6b640092
KS
4642005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
465
466 * xdisp.c (get_next_display_element): Fix control and escape
467 glyph from display vector.
468
f4a5a485
SM
4692005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
470
471 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
472
85d964de
RS
4732005-02-27 Richard M. Stallman <rms@gnu.org>
474
475 * xdisp.c (fast_find_position): Rename END to BEG.
476 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
477
6e8db3ea
JD
4782005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
479
f4a5a485 480 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
6e8db3ea
JD
481 gtk_window_resize and x_wm_set_size_hint.
482
0f465b55
KS
4832005-02-25 Kim F. Storm <storm@cua.dk>
484
485 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
486
487 * xdisp.c (init_from_display_pos): Don't read past end of
488 it->overlay_strings array.
489
845a78b4
LK
4902005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
491
492 * buffer.c (syms_of_buffer): Fix typo.
493
b02c3eed
LK
4942005-02-23 Lute Kamstra <lute@gnu.org>
495
496 * buffer.c (Foverlay_buffer): Doc fix.
497
c8500765
KS
4982005-02-22 Kim F. Storm <storm@cua.dk>
499
b686dd59
KS
500 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
501 and symbol keys in alists and hash tables.
502
c8500765
KS
503 * xdisp.c (fast_find_position): Fix search for start of overlay.
504
81c85b53
KS
5052005-02-21 Kim F. Storm <storm@cua.dk>
506
507 * window.c (window_scroll_pixel_based): When scrolling backwards,
508 handle partial visible line at end of window even when we hit PT.
509
f4a5a485 5102005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
9df747e1
SM
511
512 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
513
0dd5a842
KS
5142005-02-21 Kim F. Storm <storm@cua.dk>
515
516 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
517 I think those asserts are bogus if buffer contains invisible text
518 or images.
519
19e05d1f
KS
5202005-02-21 David Kastrup <dak@gnu.org>
521
522 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
523
0fba9f25
KS
5242005-02-20 Kim F. Storm <storm@cua.dk>
525
526 * xdisp.c (pos_visible_p): Be sure to move to the specified
527 position. Always get the full ascent / descent of the
528 corresponding row, to return reliable rtop and rbot values.
529 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
530 Must look one character back, as back_to_previous_line_start
531 returns position after the newline.
532 (move_it_vertically_backward): Fix heuristic for when to move further
533 back in case line_height * 2/3 is larger than window height.
534 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
535 as it does not do anything anymore. Add arg current_matrix_p to
536 use current matrix rather than desired matrix when set.
537 (try_cursor_movement): Don't scroll to make cursor row fully
538 visible if cursor didn't move. This avoids unexpected recentering
539 in case of blinking cursor or accepting process output.
540 Use current matrix to check cursor row visibility.
541 (redisplay_window): Fix whether to recenter or move to top in case
542 cursor line is taller than window height.
543 (find_first_unchanged_at_end_row): Stop search if we reach a row
544 which not enabled (instead of abort).
545
b1c2adc3
KS
5462005-02-18 Kim F. Storm <storm@cua.dk>
547
c2ee48fb
KS
548 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
549 to be nil in a :box attribute value list; customize prints that
550 as lisp value when no box color is specified.
551
b1c2adc3
KS
552 * .gdbinit (pitx, pit): Pretty print display iterator.
553 (prowx, prow): Pretty print glyph row.
554 (pcursorx, pcursor): Pretty print a window cursor.
555 (pwinx, pwin): Pretty print struct window.
556
f102186f
SM
5572005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
558
559 * alloc.c (BLOCK_BYTES): Harmless typo.
560
9b516537
AS
5612005-02-17 Andreas Schwab <schwab@suse.de>
562
563 * xfns.c (hack_wm_protocols): Use correct type for last parameter
564 of XGetWindowProperty to avoid aliasing issues.
565 (Fx_window_property): Likewise.
566
567 * xselect.c (Fx_disown_selection_internal): Use union of struct
f4a5a485 568 input_event and struct selection_input_event to avoid aliasing issues.
9b516537
AS
569
570 * xterm.c (handle_one_xevent): Use union of struct input_event and
571 struct selection_input_event to avoid aliasing issues.
572 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
573
886b1418
KS
5742005-02-17 Kim F. Storm <storm@cua.dk>
575
576 * dispextern.h (enum it_method): New enum.
577 (GET_FROM_*): Its members.
578 (struct it): Change member method from function pointer to enum.
579
580 * xdisp.c (check_it, init_from_display_pos, handle_stop)
581 (setup_for_ellipsis, handle_single_display_spec)
582 (handle_composition_prop, next_overlay_string)
583 (get_overlay_strings, reseat_1, reseat_to_string)
584 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
585 (in_display_vector_p, display_line, get_next_display_element):
586 Change it->method from function pointer to enum.
587 (get_next_element): New array to map it->method to function.
588 (get_next_display_element): Use it.
589 (set_iterator_to_next): Use switch instead of if/else chain.
590
99ee2c6a 5912005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
52c7f9ee
JR
592
593 * w32select.c: Summary: Thorough rework to implement Unicode
594 clipboard operations and delayed rendering.
595
596 Drop last_clipboard_text and related code, keep track of
f4a5a485 597 ownership via clipboard_owner instead. Drop old #if0 sections.
52c7f9ee
JR
598
599 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
600 (clipboard_owner, modifying_clipboard, cfg_coding_system)
601 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
602 (current_coding_system, current_requires_encoding)
f4a5a485
SM
603 (current_num_nls, current_clipboard_type, current_lcid):
604 New static variables.
52c7f9ee
JR
605
606 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
607 (render, render_all, run_protected, lisp_error_handler)
608 (owner_callback, create_owner, setup_config)
f4a5a485
SM
609 (enum_locale_callback, cp_from_locale, coding_from_cp):
610 New local functions.
52c7f9ee
JR
611
612 (term_w32select, globals_of_w32select): New global functions.
613
614 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
615 clipboard_owner instead. Use delayed rendering and provide
616 all text formats. Provide CF_LOCALE if necessary.
617
618 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
619 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
620 available. Force DOS line-ends for decoding.
621
622 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
623
624 (syms_of_w32select): Init and register new variables.
625
626 * w32.h: Add prototypes for globals_of_w32select and
627 term_w32select. Make the neighboring K&R declarations into
628 prototypes, too.
629
630 * emacs.c: Include w32.h to get function prototypes.
631 (main): Call globals_of_w32select.
632
886b1418 633 * w32.c (term_ntproc): Call term_w32select.
52c7f9ee
JR
634
635 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
636
86e61586
KS
6372005-02-16 Kim F. Storm <storm@cua.dk>
638
639 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
640 at end of display vector.
641
6407f07b
RS
6422005-02-15 Richard M. Stallman <rms@gnu.org>
643
644 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
645 for mode and header lines.
646
647 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
648
649 * keymap.h (describe_map_tree): Change decl.
650
651 * keyboard.c (command_loop_1): Always use safe_run_hooks
652 to run Qdeferred_action_function.
653
654 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
655 (describe_map, describe_vector): Likewise. When it's 1,
656 don't omit shadowed bindings, instead mark them as shadowed.
657
658 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
659 for describe_map_tree. Pass 1 for MENTION_SHADOW.
660
661 * data.c (Fsetq_default): Allow no arg case.
662
3bb917bf
KH
6632005-02-14 Kenichi Handa <handa@m17n.org>
664
665 * coding.c (encode_coding_string): Always return a unibyte string.
666 If NOCOPY is nonzero and there's no need of encoding, make STR
667 unibyte directly.
668
669 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
670 multibyte string, signal an error instead of aborting.
671
e31d908f
DN
6722005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
673
674 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
675
48e029b6
KS
6762005-02-12 Kim F. Storm <storm@cua.dk>
677
678 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
679
c10bb00a
KS
6802005-02-10 Kim F. Storm <storm@cua.dk>
681
682 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
683 if it moves outside window or it doesn't display text.
684
9ca0f64a
KS
6852005-02-09 Kim F. Storm <storm@cua.dk>
686
687 * undo.c (Fprimitive_undo): Check that undo function does not
688 switch buffer.
689
b8d6f4af
JD
6902005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
691
692 * xselect.c (selection_data_to_lisp_data): For the special case
693 type == XA_ATOM, data contains array of int, not array of Atom.
d5161e8c
SM
694 (x_property_data_to_lisp, selection_data_to_lisp_data):
695 Comment update: data must be array of int for format == 32.
b8d6f4af 696
3419757d
SM
6972005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
698
699 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
700
3a441526
JD
7012005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
702
fc34503b
JD
703 * xfns.c (Fx_change_window_property): Use long array when format is 32.
704 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
705 convert long array returned from XGetWindowProperty to an int array.
bae45dc3
JD
706 (x_set_tool_bar_lines): Check that width and height is greater than
707 zero before clearing area.
fc34503b
JD
708
709 * xselect.c (x_reply_selection_request): Pass long array to
710 XChangeProperty so that 64 bit longs are handeled correctly.
711 (x_get_window_property): If format is 32 and long is bigger than 32
712 bits convert data from XGetWindowProperty from long array to int array.
713 (lisp_data_to_selection_data): When the input is a vector and the
714 format is 32, allocate a long array even if long is bigger than 32 bits.
715 (x_fill_property_data): Use char, short and long as the man page
716 for XChangeProperty specifies. This way the data returned is OK for
717 both 32 and 64 bit machines.
718 (x_handle_dnd_message): Calculate size correctly even for 64 bit
719 machines.
720 (Fx_send_client_event): Undo change from 2005-02-05,
721 x_fill_property_data now handles that case.
722
3419757d 723 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3a441526
JD
724 reason for the approach in the code.
725
82ec225b
KS
7262005-02-07 Kim F. Storm <storm@cua.dk>
727
728 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
729
ba2c991c
RS
7302005-02-06 Richard M. Stallman <rms@gnu.org>
731
732 * eval.c (Frun_hook_with_args)
733 (Frun_hook_with_args_until_success)
734 (Frun_hook_with_args_until_failure): Doc fixes.
735
e120ea40
AS
7362005-02-05 Andreas Schwab <schwab@suse.de>
737
3419757d 738 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
e120ea40 739
31f16913
JD
7402005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
741
742 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
743 the longs in a XClientMessageEvent correctly when long is 64 bits.
744
6082a820
EZ
7452005-02-05 Eli Zaretskii <eliz@gnu.org>
746
747 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
748 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
749
0e95095b
JD
7502005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
751
752 * xmenu.c (menubar_selection_callback): Force out GTK buffered
753 events so the menu event comes after them. This is to prevent sit-for
754 from exiting on buffered events directly after a menu selection,
755 lisp code for Help => About Emacs uses sit-for.
756
757 * gtkutil.c (create_menus): Connect selection-done event instead of
758 the deactivate event to deactivate_cb. This will make the last
759 leave event come before the call to deactivate_cb, so the leave
760 event does not make sit-for exit after a menu selection.
761
5bb6a3c1
KS
7622005-02-03 Kim F. Storm <storm@cua.dk>
763
764 * dispnew.c (build_frame_matrix_from_leaf_window)
765 [!GLYPH_DEBUG]: Fix xassert.
766
767 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
768
769 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
770
e9859e26
YM
7712005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
772
773 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
774 the compiling OS version.
775
776 * macfns.c (x_create_tip_frame): Likewise.
777
3419757d 778 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
e9859e26 779
4e07258f
RS
7802005-02-03 Richard M. Stallman <rms@gnu.org>
781
782 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
783
784 * xdisp.c (echo_area_display): Clear echo_message_buffer.
785
786 * buffer.c (Fbury_buffer): Doc fix.
787
4a34b529
ST
7882005-02-02 Steven Tamm <steventamm@mac.com>
789
f6c62d96
ST
790 * macfns.c (unwind_create_frame): Fixing compile error due to
791 xassert being uncondition, but predicate is.
4a34b529 792 * dispnew.c (update_window): Fixing compile error due to
f6c62d96 793 xassert being uncondition, but predicate is.
4a34b529 794
d78f30b8
MB
7952005-02-02 Miles Bader <miles@gnu.org>
796
797 * dispextern.h (xassert): Enable unconditionally.
798
b044278d
KS
7992005-02-02 Kim F. Storm <storm@cua.dk>
800
801 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
802
56072160
KH
8032005-02-02 Kenichi Handa <handa@m17n.org>
804
805 * casefiddle.c (casify_object): Enable changing characters of
806 different byte length.
807 (casify_region): Fix loop condition, args to replace_range_2, and
808 update opoint_byte.
809
f4a5a485 810 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
56072160 811
5e1674c5
KS
8122005-02-01 Kim F. Storm <storm@cua.dk>
813
814 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
815 stack before calling handle_display_prop.
816
fb89c330
KS
8172005-01-31 Kim F. Storm <storm@cua.dk>
818
819 * undo.c (Qapply): New lisp var.
820 (syms_of_undo): Intern and staticpro it.
821 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
822 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
823
824 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
825
7bf72fa6
JH
8262005-01-30 Jesper Harder <harder@phys.au.dk>
827
a050b1a9
KS
828 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
829 <mac-emulate-three-button-mouse>: Fix docstring indentation.
7bf72fa6 830
03c64f2e
LT
8312005-01-29 Luc Teirlinck <teirllm@auburn.edu>
832
833 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
6de38aa3 834 Increase value to 3 Meg.
03c64f2e 835
49b8b5dc
JD
8362005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
837
838 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
839 button events are not received otherwise.
840
5a92a9eb
RS
8412005-01-29 Richard M. Stallman <rms@gnu.org>
842
843 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
844
845 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
846
5c243ee4
SM
8472005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
848
849 * keymap.c (access_keymap): YAILOM.
850
caf533af
KS
8512005-01-27 Kim F. Storm <storm@cua.dk>
852
853 * xdisp.c (get_phys_cursor_geometry): New function to calculate
854 phys cursor position and size for hollow cursor. Position is
855 aligned with get_glyph_string_clip_rect and ensures that a hollow
856 cursor is shown, even when the actual glyph is not visible.
857
858 * dispextern.h (get_phys_cursor_geometry): Add prototype.
859
860 * xterm.c (x_clip_to_row): Ensure y >= 0.
861 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
862
863 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
864
865 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
866
043f7f73
SM
8672005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
868
869 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
870
889f3641
KS
8712005-01-27 Kim F. Storm <storm@cua.dk>
872
873 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
874 glyph, even when row is only partially visible and actual cursor
875 position is not visible.
876
29099c2f
RS
8772005-01-24 Richard M. Stallman <rms@gnu.org>
878
879 * xterm.c (x_error_quitter): No longer static, and moved after
880 x_error_handler.
881
6adb6f01
KS
8822005-01-24 Kim F. Storm <storm@cua.dk>
883
884 * xdisp.c (move_it_by_lines): If we move forward after going too
885 far back, cancel move if end position is same as start position.
886
4d904fa0
ST
8872005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
888
889 * dispextern.h (struct glyph_string): New members clip_head and
890 clip_tail.
6adb6f01 891
4d904fa0
ST
892 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
893 region to the area between clip_head and clip_tail.
894 (draw_glyphs): Record the area that need to be actually redrawn to
895 the new variables clip_head and clip_tail when there are
896 overhangs. Set values of these variables to the corresponding
897 members in struct glyph_string. Refine x coordinates for
898 notice_overwritten_cursor using clip_head and clip_tail.
6adb6f01 899
4d904fa0
ST
900 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
901
902 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
903 QDTextBounds.
904 (x_draw_glyph_string): Don't fill the background of the successor
6adb6f01 905 of a glyph with a right overhang if the successor will draw a cursor.
4d904fa0 906 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
6adb6f01 907 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4d904fa0 908
f2417699
KS
9092005-01-24 Kim F. Storm <storm@cua.dk>
910
6f67f013
KS
911 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
912 direction if window height was smaller than next-screen-context-lines.
913 Now always scroll at least one line in the requested direction.
914 Ensure that we actually do scroll backwards when requested to do so.
915
f2417699
KS
916 * xdisp.c (redisplay_window): Only try to make cursor line fully
917 visible once (to avoid redisplay loop).
918
a354b72c
KS
9192005-01-23 Kim F. Storm <storm@cua.dk>
920
6b3d88f7 921 * window.c (Fpos_visible_in_window_p): Simplify return value for
8f958b40 922 partially visible rows.
6b3d88f7
KS
923 (window_scroll_pixel_based): Adapt to that change.
924
5c20cae2
KS
925 * window.c (window_scroll_pixel_based): Force moving to next line
926 if scrolling doesn't move start point, e.g. if looking at tall image.
927
a354b72c 928 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
5c20cae2
KS
929 Clear last_height before calling line_bottom_y to get real height.
930 Fix calculation of y.
a354b72c 931
d9e7c622
ST
9322005-01-22 Steven Tamm <steventamm@mac.com>
933
934 * s/darwin.h: Removed PTY_ITERATION from here.
043f7f73 935 (DARWIN): Define.
d9e7c622
ST
936 * process.c (init_process): Default process-connection-type to
937 nil on darwin 6 or less, t if it is 7 or higher. This way the
938 broken pty behavior is still allowed on darwin 6 for interactive
939 processes for people that know what they are doing.
940
d00e399a
KS
9412005-01-22 Kim F. Storm <storm@cua.dk>
942
943 * window.c (auto_window_vscroll_p): New boolean.
944 (syms_of_window): DEFVAR_BOOL it.
945 (Fpos_visible_in_window_p): Extend return value to include RTOP
946 and RBOT values if FULLY is nil.
947 (window_scroll_pixel_based): Adjust vscroll for partially visible
948 rows if auto_window_vscroll_p is set.
949 (Fset_window_vscroll): Do nothing if vscroll is not modified.
950
951 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
952 to return number of partially invisible pixels at top and bottom
953 of the dislay row at POS.
954
955 * lisp.h (pos_visible_p): Fix prototype.
956
f95a20e7
RS
9572005-01-21 Richard M. Stallman <rms@gnu.org>
958
959 * fileio.c (Fcopy_file): Doc fix.
960
eee141ce
JD
9612005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
962
963 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
964 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
965 start of function for older compilers.
966
6f771c32
RS
9672005-01-20 Richard M. Stallman <rms@gnu.org>
968
969 * editfns.c (Fmessage): If arg is "", return "" (as before).
970
971 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
972
973 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
974 variable.
975
a15252fd
ST
9762005-01-20 Steven Tamm <steventamm@mac.com>
977
043f7f73 978 * editfns.c (Voperating_system_release): Add.
a15252fd
ST
979 (init_editfns): Assign new variable operating-system-release
980 based on call to uname if available.
043f7f73 981 (get_operating_system_release): Add function to
d00e399a 982 allow c-level access to operating system release.
a15252fd
ST
983
984 * config.h: Regenerated.
985
043f7f73
SM
986 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
987 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
a15252fd
ST
988 using ptys as '7'.
989
3d6a4b2d
KS
9902005-01-20 Kim F. Storm <storm@cua.dk>
991
62fc9b0f
KS
992 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
993
c310aca4
KS
994 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
995 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
996
997 * macterm.c (x_draw_glyph_string_box): Likewise.
998
999 * w32term.c (x_draw_glyph_string_box): Likewise.
1000
3d6a4b2d
KS
1001 * indent.c (Fvertical_motion): Temporarily disable selective display.
1002
27c8be45
KS
10032005-01-19 Kim F. Storm <storm@cua.dk>
1004
77db5cf3
KS
1005 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
1006 image property.
1007
27c8be45
KS
1008 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
1009
81f498dc
KS
10102005-01-18 Kim F. Storm <storm@cua.dk>
1011
1012 * xdisp.c (fast_find_position): Backtrack to find first row if
1013 charpos is inside a display overlay that spans multiple lines.
1014
1cdb0707
KH
10152005-01-18 Kenichi Handa <handa@m17n.org>
1016
1017 * coding.c (decode_coding_iso2022): Translate invalid codes if
1018 translation-table is specified.
1019
677159ce
KS
10202005-01-18 Kim F. Storm <storm@cua.dk>
1021
1022 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
1023 change. If handle_display_prop indicates newline is replaced by
1024 image or text, move back to start of relevant overlay or interval
1025 and continue scan from there. Simplify.
1026
977284cc
KS
10272005-01-17 Kim F. Storm <storm@cua.dk>
1028
043f7f73
SM
1029 * dispnew.c (mode_line_string, marginal_area_string):
1030 Fix off-by-one error in search for glyph.
977284cc 1031
e24531b7
KS
10322005-01-16 Kim F. Storm <storm@cua.dk>
1033
1034 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
1035
5ddd7664
ST
10362005-01-16 Steven Tamm <steventamm@mac.com>
1037
043f7f73 1038 * macterm.c (mac_to_x_fontname): Remove spurious argument.
5ddd7664 1039
fc2ff44b
AS
10402005-01-16 Andreas Schwab <schwab@suse.de>
1041
1042 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
1043
50af5100
JD
10442005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1045
1046 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
1047 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
1048
a2d5fca0
JD
10492005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1050
1051 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
e24531b7
KS
1052 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
1053 New flags for readable_events.
043f7f73 1054 (get_filtered_input_pending, readable_filtered_events): Remove.
a2d5fca0
JD
1055 (tracking_off): Call readable_events and get_input_pending with
1056 flag READABLE_EVENTS_DO_TIMERS_NOW.
1057 (readable_events): Move code from old readable_filtered_events here,
1058 but check new READABLE_EVENTS_* in argument flags instead of previous
1059 two boolean arguments do_timers_now and filter_events.
1060 If we are doing mouse tracking and the mouse moved, return only if
1061 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
1062 (swallow_events): Call get_input_pending with flag
1063 READABLE_EVENTS_DO_TIMERS_NOW.
e24531b7 1064 (get_input_pending): Move code from old get_filtered_input_pending
a2d5fca0
JD
1065 here. Replace boolean arguments do_timers_now, filter_events with
1066 flags, and pass flags to readable_events. Document new
1067 READABLE_EVENTS_* flags.
1068 (detect_input_pending_ignore_squeezables): New function.
1069 (detect_input_pending_run_timers): Call get_input_pending with flag
1070 READABLE_EVENTS_DO_TIMERS_NOW.
1071 (Finput_pending_p): Call get_input_pending with flags
1072 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
1073
1074 * dispnew.c (update_window, update_frame_1): Replace calls to
1075 detect_input_pending with detect_input_pending_ignore_squeezables
e24531b7 1076 so that redisplay is not paused if the event queue contains only
a2d5fca0
JD
1077 mouse movements.
1078
1079 * lisp.h: Declare detect_input_pending_ignore_squeezables.
1080
42afbcda
ST
10812005-01-15 Steven Tamm <steventamm@mac.com>
1082
e24531b7
KS
1083 * macterm.c (Vmac_use_core_graphics): Declare variable for
1084 mac-allow-anti-aliasing.
1085 (syms_of_macterm): DEFVAR_LISP and initialize it.
743d0696 1086 (mac_draw_string_common): Use core graphics text rendering if
0530c679 1087 mac-allow-anti-aliasing is enabled.
743d0696 1088
42afbcda
ST
1089 * macfns.c (Fx_file_dialog): Save As dialog includes only the
1090 file name in the text box.
1091
9cdd4884
ST
10922005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1093
043f7f73
SM
1094 * macfns.c (x_set_foreground_color, x_set_background_color):
1095 Sync with xfns.c.
9cdd4884
ST
1096 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
1097 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
1098 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
1099
88948d55
KS
11002005-01-14 Kim F. Storm <storm@cua.dk>
1101
1102 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
1103
20d6de82
RS
11042005-01-13 Richard M. Stallman <rms@gnu.org>
1105
1106 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
1107 if Voverriding_terminal_local_map is non-nil.
1108
1109 * keyboard.c (syms_of_keyboard): Doc fix.
1110
f75a592e
KS
11112005-01-13 Kim F. Storm <storm@cua.dk>
1112
1113 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
1114 (specify 0 for FACE instead). Reorder arg list. Doc fix.
1115
28f94a34
RS
11162005-01-12 Richard M. Stallman <rms@gnu.org>
1117
1118 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
1119 face property for characters that don't specify one.
1120
1121 * fns.c (Frequire): Record in load-history unconditionally.
1122
57a230b1
KS
11232005-01-10 Kim F. Storm <storm@cua.dk>
1124
1125 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
1126
1127 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
1128 Callers changed.
1129 Add support to merge with lisp face id too (if face_name is t).
1130
1131 * xdisp.c (get_next_display_element, next_element_from_display_vector):
1132 Don't lookup lface_id from display table glyphs here; instead use
1133 merge_faces to merge the lisp face id into current face.
1134
8ab2c119
KS
11352005-01-09 Kim F. Storm <storm@cua.dk>
1136
1137 * dispextern.h (struct it): New member dpvec_face_id.
1138 (merge_into_realized_face): Add prototype.
1139
1140 * xfaces.c (merge_into_realized_face): New function. Used to
1141 merge escape-glyph face or face from display table into current face.
1142
1143 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
1144 (syms_of_xdisp): DEFVAR_LISP it.
1145 (escape_glyph_face): Remove var.
1146 (redisplay_window): Don't initialize it.
1147 (setup_for_ellipsis, get_next_display_element):
1148 Set it->dpvec_face_id to -1.
1149 (get_next_display_element): Test Vshow_nonbreak_escape.
1150 Do not setup escape_glyph_face.
1151 Properly merge escape-glyph face or face from display table with
043f7f73
SM
1152 current face for escape and control characters.
1153 Set it->dpvec_face_id to relevant face id instead of adding it to each
8ab2c119
KS
1154 element of display vector.
1155 (next_element_from_display_vector): If it->dpvec_face_id is set,
1156 use that instead of lface_id from glyph itself.
1157
e0910857
JD
11582005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1159
1160 * xterm.h (struct x_output): New member, toolbar_detached.
1161
1162 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
1163 38.
1164 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
1165 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
1166 (xg_create_tool_bar): Initialize toolbar_detached.
1167 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
1168 toolbar_detached is zero.
1169
ff59904a
JD
11702005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1171
9b85e63d
JD
1172 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
1173 gtk_menu_popup if not for_click, so callbacks for the menu are called.
1174
ff59904a
JD
1175 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
1176 (xg_tool_bar_callback, xg_tool_bar_help_callback)
043f7f73 1177 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
ff59904a
JD
1178
1179 * xselect.c (x_get_foreign_selection, x_fill_property_data)
8ab2c119 1180 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
ff59904a
JD
1181 XFLOAT_DATA to get extract number from Lisp object.
1182
f9a23a6f
KS
11832005-01-07 Kim F. Storm <storm@cua.dk>
1184
1185 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
1186 Set stop_charpos to current charpos instead of 0.
1187
28f94a34
RS
11882005-01-06 Nick Roberts <nickrob@snap.net.nz>
1189
1190 * xdisp.c (Fformat_mode_line): First arg now required.
1191
a6fffcdc
ST
11922005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1193
1194 * macterm.c (XLoadQueryFont): Correctly handle 0 size
1195 font widths that are returned from some Japanese fonts.
1196
c35b0c6b
KS
11972005-01-06 Kim F. Storm <storm@cua.dk>
1198
1199 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
1200 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
1201 (destroy_fringe_bitmap): Set fringe_faces element to nil.
1202 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
1203 fringe_faces array and init elements to nil.
1204 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
1205 non-persistent face id.
1206 (mark_fringe_data): New function for GC.
1207
1208 * alloc.c (mark_fringe_data): Declare extern.
1209 (Fgarbage_collect): Call mark_fringe_data.
1210
1211 * alloc.c (overrun_check_free): Invalidate freed memory if
1212 XMALLOC_CLEAR_FREE_MEMORY is defined.
1213
e0e76ab9
ST
12142005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1215
1216 * macfns.c: Include sys/param.h.
1217 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
1218 and function.
1219 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
1220 of filename string. Set event callback function when creating
1221 dialog boxes. Add code conversions for filenames. Don't dispose
1222 apple event descriptor record if failed to create it.
1223
1224 * macterm.c: Include sys/param.h.
1225 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
1226 kEventWindowUpdate.
1227 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
1228 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
1229 of FSSpec from apple event descriptor record.
1230 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
1231 size of filename string.
1232 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
1233 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
1234 file dialog is in action.
043f7f73
SM
1235 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
1236 Reject only when there are no filename items. Set background color
e0e76ab9 1237 before (un)highlighting the window below the dragged items.
2313f861 1238 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
e0e76ab9 1239
043bc640
KH
12402005-01-05 Romain Francoise <romain@orebokech.com>
1241
1242 * term.c (encode_terminal_code): Fix buffer size computation.
1243
dd496df6
RS
12442005-01-04 Richard M. Stallman <rms@gnu.org>
1245
1246 * xdisp.c (Fformat_mode_line): Doc fix.
1247
026cdede
SM
12482005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
1249
1250 * alloc.c (refill_memory_reserve): Move.
1251 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
1252 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
1253
d57c7572
RS
12542005-01-03 Richard M. Stallman <rms@gnu.org>
1255
1256 * window.c (window_scroll_pixel_based): Don't correct preserve_y
1257 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
1258
b14f868c
JR
12592005-01-03 Jason Rumney <jasonr@gnu.org>
1260
1261 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
1262 fontp->space_width to FONT_WIDTH so they are valid.
1263
1264 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
1265 average width. Set fontp->average_width and fontp->space_width to
1266 their appropriate values.
1267
1268 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
1269 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
1270 fontp->space_width.
1271
e169f939
ST
12722005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1273
1274 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
1275 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
1276 metrics for max and min bounds.
1277 (x_load_font): Correctly calculate average font width metrics.
1278
19996af4
RS
12792005-01-02 Richard M. Stallman <rms@gnu.org>
1280
1281 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
1282
42d02da0
JD
12832004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1284
1285 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
1286
1db7dd46
RS
12872004-12-31 Richard M. Stallman <rms@gnu.org>
1288
b437860a
RS
1289 * xdisp.c (setup_for_ellipsis, get_next_display_element):
1290 Set it->ellipsis_p to 1 or 0.
1291 (display_line): Record whether row ends in mid-ellipsis.
1292 (set_cursor_from_row): If ends in ellipsis. find start of it.
1293 (cursor_row_p): If PT's at the end of the ellipsis the row
1294 ends within, don't display cursor on this row.
1295
1296 * dispextern.h (struct it): New element ellipsis_p.
1297 (struct glyph_row): New element ends_in_ellipsis_p.
1298
1299 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
1300 position if we're reading from something other than the buffer.
1301
1db7dd46
RS
1302 * window.c (window_scroll_pixel_based): Only look at
1303 Vscroll_preserve_screen_position if the old PT can't be kept.
1304 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
1305
1225f637
KS
13062004-12-30 Kim F. Storm <storm@cua.dk>
1307
1308 * xdisp.c (get_line_height_property): New function extracted from
1309 original calc_line_height_property.
1310 (calc_line_height_property): Rework. Handle t and (nil . ratio).
1311 (x_produce_glyphs): Use them to handle line-height and
1312 line-spacing according to new height spec.
1313 (Qtotal): Remove.
33b2f4ea 1314 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
1225f637 1315
c243063e
KH
13162004-12-30 Kenichi Handa <handa@m17n.org>
1317
1318 * fileio.c (Finsert_file_contents): Don't use
1319 current_buffer->buffer_file_coding_system even if REPLACE is
043f7f73 1320 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
c243063e
KH
1321
1322 * fontset.h (struct font_info): New members space_width and
1323 average_width.
1324
1325 * frame.h (struct frame): New member space_width.
1326 (FRAME_SPACE_WIDTH): New macro.
1327
1328 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
1329
1330 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
1331 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
b14f868c 1332 fontp->space_width.
043f7f73 1333 (x_load_font): Calculate fontp->space_width and fontp->average_width.
c243063e
KH
1334 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
1335
1336 * xdisp.c (x_produce_glyphs): Calculate tab width by
1337 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
1338
456e761b
ST
13392004-12-29 Sanghyuk Suh <han9kin@mac.com>
1340
1341 * macterm.c (SelectionRange): Add Xcode position apple event struct.
043f7f73 1342 (do_ae_open_documents): Handle Xcode-style file position open events.
456e761b 1343
188577ce
LT
13442004-12-29 Luc Teirlinck <teirllm@auburn.edu>
1345
1346 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
1347
99ec74b9
RS
13482004-12-29 Richard M. Stallman <rms@gnu.org>
1349
1350 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
1351
30c92fab
ST
13522004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1353
1354 * macfns.c (install_window_handler): Modify extern to return OSErr
1355 value.
1356 (mac_window): Handle return value of install_window_handler.
1357
1358 * macterm.c (reflect_byte): Remove function.
1359 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
1360 Lookup table instead.
1361 (mac_do_font_lists): Simplify calculation of the longest
1362 nonspecial string.
1363 (init_mac_drag_n_drop): Remove function and declaration.
1364 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
1365 init_mac_drag_n_drop.
1366 (mac_do_track_drag): New function and declaration.
1367 (install_window_handler): Return OSErr value.
043f7f73
SM
1368 (install_window_handler) [TARGET_API_MAC_CARBON]:
1369 Register handlers for tracking/receiving drag-and-drop items.
30c92fab 1370 (do_ae_open_documents): Generate unibyte strings for filenames.
043f7f73
SM
1371 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
1372 Reject only non-filename items. Set event modifiers, and return value.
30c92fab 1373
4b982924
DN
13742004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
1375
1376 * coding.c (decode_coding): Fix previous change.
1377
93fdf45f
RS
13782004-12-28 Richard M. Stallman <rms@gnu.org>
1379
1380 * xdisp.c (back_to_previous_visible_line_start):
1381 Don't call handle_display_prop.
1382
5bdca8af
DN
13832004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
1384
1385 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
1386 (decode_coding_emacs_mule, encode_coding_emacs_mule)
1387 (decode_coding_iso2022, encode_designation_at_bol)
1388 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
1389 (decode_coding): Constify arguments and local vars.
1390
33385c6f
JD
13912004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1392
1393 * xmenu.c (popup_get_selection): Only pop down dialogs
1394 on C-g and Escape.
95bdef2e 1395 (popup_get_selection): Remove parameter down_on_keypress.
043f7f73
SM
1396 (create_and_show_popup_menu, create_and_show_dialog):
1397 Remove parameter down_on_keypress to popup_get_selection.
33385c6f 1398
b15325b2
ST
13992004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1400
1401 * dispextern.h: Change HAVE_CARBON to MAC_OS.
1402 (struct glyph_string): Likewise.
a2c7e69a 1403
b15325b2
ST
1404 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
1405 mac_initialize.
a2c7e69a 1406
b15325b2
ST
1407 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
1408 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
a2c7e69a 1409
b15325b2 1410 * fns.c (vector): Change MAC_OSX to MAC_OS.
a2c7e69a 1411
b15325b2
ST
1412 * frame.c (x_set_frame_parameters, x_report_frame_params)
1413 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
043f7f73
SM
1414 (x_set_border_width, Vdefault_frame_scroll_bars):
1415 Change HAVE_CARBON to MAC_OS.
a2c7e69a 1416
b15325b2
ST
1417 * image.c [MAC_OS]: Include sys/stat.h.
1418 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
1419 QuickTimeComponents.h.
a2c7e69a 1420
b15325b2
ST
1421 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
1422 [!MAC_OSX] (select): Use mac_wait_next_event.
043f7f73 1423 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
b15325b2
ST
1424 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
1425 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
1426 (mac_clear_font_name_table): Add extern.
1427 (Fmac_clear_font_name_table): New defun.
1428 (syms_of_mac): Defsubr it.
1429 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
1430 [MAC_OSX] (select_and_poll_event): New function.
1431 [MAC_OSX] (sys_select): Use it.
1432 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
1433 [MAC_OSX && SELECT_USE_CFSOCKET]
1434 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
1435 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
1436 RunLoop for simultaneously monitoring two kinds of inputs, window
1437 events and process outputs, without periodically polling.
a2c7e69a 1438
b15325b2
ST
1439 * macfns.c (mac_initialized): Remove extern.
1440 (stricmp): Put in #if 0. All callers changed to use xstricmp in
1441 xfaces.c.
043f7f73
SM
1442 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
1443 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
b15325b2
ST
1444 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
1445 (mac_get_rdb_resource): New function (from w32reg.c).
1446 (x_get_string_resource): Use it.
1447 (install_window_handler): Add extern.
1448 (mac_window): New function.
043f7f73
SM
1449 (Fx_create_frame): Use it instead of make_mac_frame.
1450 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
b15325b2
ST
1451 (Fx_open_connection, Fx_close_connection): New defuns.
1452 (syms_of_macfns): Defsubr them.
043f7f73
SM
1453 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
1454 Add kWindowNoUpdatesAttribute to the window attribute.
b15325b2
ST
1455 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
1456 (x_create_tip_frame): Don't call ShowWindow.
1457 (Fx_show_tip): Call ShowWindow.
1458 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
1459 TARGET_API_MAC_CARBON'.
1460 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
1461 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
a2c7e69a 1462
043f7f73 1463 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
b15325b2
ST
1464 (Window): Typedef to WindowPtr and move outside `#if
1465 TARGET_API_MAC_CARBON'.
1466 (XSizeHints): New struct.
a2c7e69a 1467
b15325b2
ST
1468 * macterm.c (x_update_begin, x_update_end)
1469 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
1470 frame.
1471 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
1472 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
1473 (construct_mouse_click): Put in #if 0.
1474 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
1475 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
1476 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
1477 (activate_scroll_bars, deactivate_scroll_bars)
1478 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
1479 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
1480 if the position is neither user-specified nor program-specified.
1481 (x_free_frame_resources): Free size_hints.
043f7f73 1482 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
b15325b2
ST
1483 (mac_clear_font_name_table): New function.
1484 (mac_do_list_fonts): Initialize font_name_table if needed.
1485 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
1486 around mac_do_list_fonts.
1487 (mac_unload_font): New function.
1488 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
1489 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
1490 and definitions with #if TARGET_API_MAC_CARBON.
1491 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
1492 (install_window_handler): Add decl.
1493 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
1494 window. Use UpdateControls. Get the rectangle that should be
1495 updated and restrict the target of expose_frame to it.
043f7f73 1496 (do_grow_window): Set minimum height/width according to size_hints.
b15325b2
ST
1497 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
1498 (do_zoom_window): Don't use x_set_window_size.
1499 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
1500 (install_window_handler): New function.
1501 [!USE_CARBON_EVENTS] (mouse_region): New variable.
1502 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
1503 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
1504 GetEventDispatcherTarget inside BLOCK_INPUT.
1505 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
1506 Update mouse_region when mouse is moved.
1507 (make_mac_frame): Remove.
043f7f73
SM
1508 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
1509 Initialize mouse pointer shapes. Change values of f->left_pos and
1510 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
1511 Don't call ShowWindow.
b15325b2
ST
1512 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
1513 Vinvocation_name and Vsystem_name.
1514 (mac_make_rdb): New function (from w32term.c).
1515 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
1516 already been opened. Don't pass argument to
1517 mac_initialize_display_info. Don't set dpyinfo->height/width.
1518 Add entries to x_display_list and x_display_name_list.
1519 (x_delete_display): New function.
1520 (mac_initialize): Don't call mac_initialize_display_info.
a2c7e69a
KS
1521 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
1522
b15325b2
ST
1523 * macterm.h (check_mac): Add extern.
1524 (struct mac_output): New member size_hints.
1525 (FRAME_SIZE_HINTS): New macro.
1526 (mac_unload_font): Add extern.
a2c7e69a 1527
b15325b2 1528 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
a2c7e69a 1529
b15325b2
ST
1530 * xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.
1531
92d2947b
RS
15322004-12-27 Richard M. Stallman <rms@gnu.org>
1533
043f7f73 1534 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
ebbd14f1
RS
1535 (syms_of_buffer): Don't defsubr it.
1536
1537 * process.c (list_processes_1): Set undo_list instead
1538 of calling Fbuffer_disable_undo.
1539
043f7f73 1540 * xdisp.c (single_display_spec_string_p): Rename from
92d2947b 1541 single_display_prop_string_p.
043f7f73 1542 (single_display_spec_intangible_p): Rename from
92d2947b 1543 single_display_prop_intangible_p.
043f7f73 1544 (handle_single_display_spec): Rename from handle_single_display_prop.
92d2947b
RS
1545 Rewritten to be easier to understand.
1546
a2c7e69a 1547 Change in load-history format. Functions now get (defun . NAME),
92d2947b
RS
1548 and variables get just NAME.
1549
1550 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
1551
1552 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
1553 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
1554 (Qdefvar): Var deleted.
1555 (syms_of_eval): Don't initialze it.
1556
1557 * lread.c (syms_of_lread) <load-history>: Doc fix.
1558
9f6fcdc5
JD
15592004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1560
1561 * xmenu.c (popup_get_selection): Pop down on C-g.
1562 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
1563 pops down menu on C-g.
1564 (xdialog_show): If dialog popped down and no button in the dialog was
1565 pushed, call Fsignal to quit.
1566 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
1567 Fsignal to quit.
1568
1569 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
1570
1571 * gtkutil.c (xg_initialize): Install bindings for C-g so that
1572 dialogs and menus pop down.
1573
d8ca23a0
KH
15742004-12-27 Kenichi Handa <handa@m17n.org>
1575
1576 * coding.c (code_convert_region): Fix calculation of `ratio'.
1577
857ae68b
JD
15782004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1579
133c0116
JD
1580 * gtkutil.c (update_frame_tool_bar): Make the value of
1581 tool-bar-button-margin control margins of images in tool bar.
1582
857ae68b
JD
1583 * alloc.c (check_depth): New variable.
1584 (overrun_check_malloc, overrun_check_realloc): Only add
1585 overhead and write check pattern if check_depth is 1 (to handle
1586 recursive calls). Increase/decrease check_depth in entry/exit.
1587 (overrun_check_free): Only check for overhead if check_depth is 1.
1588 Increase/decrease check_depth in entry/exit.
1589
bd55c35c
JD
15902004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1591
1592 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
1593 before touching input_available_clear_time, to avoid accessing it
1594 from multiple threads.
1595
66354420
JR
15962004-12-23 Jason Rumney <jasonr@gnu.org>
1597
1598 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
1599 of JPEG library.
1600
55f4edbc
RS
16012004-12-22 Richard M. Stallman <rms@gnu.org>
1602
1603 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
1604
1605 * lisp.h (Vundo_outer_limit): Fix decl.
1606
1607 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
1608 Uses changed.
1609 (syms_of_undo): Initialize appropriately.
1610 (truncate_undo_list): If it's nil, there's no limit.
1611
7a0ea9e3
KH
16122004-12-22 Kenichi Handa <handa@m17n.org>
1613
1614 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
1615
fda2922a
RS
16162004-12-21 Richard M. Stallman <rms@gnu.org>
1617
1618 * eval.c (unwind_to_catch): Clear immediate_quit.
1619
1620 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
1621 specially as `\ ' and `\-'.
1622
1623 * keyboard.c (kbd_buffer_store_event_hold):
1624 In the code for while-no-input, handle immediate_quit.
1625
1626 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
1627 Call that at the very start.
043f7f73 1628 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
fda2922a
RS
1629 (syms_of_alloc): Don't define undo-limit,
1630 undo-strong-limit and undo-outer-limit here.
1631
1632 * undo.c (truncate_undo_list): Return void.
1633 Take just one argument, the buffer.
1634 Make it current, and inhibit recursive GC.
1635 Access and update the undo list directly; return void.
1636 Refer to the undo...limit variables directly.
1637 Test undo_outer_limit only after counting the whole current command.
1638 When it's exceeded, call the function in undo-outer-limit-function.
1639 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
1640 (Vundo_outer_limit_function): New variable.
1641 (syms_of_undo): Define undo-limit, undo-strong-limit
1642 and undo-outer-limit here, and undo-outer-limit-function.
1643 Doc fixes.
1644
1645 * lisp.h (truncate_undo_list): Update decl.
1646
16472004-12-21 Piet van Oostrum <piet@cs.uu.nl>
1648
1649 * fileio.c (Fread_file_name): Delete duplicates in
1650 file-name-history when history_delete_duplicates is true.
1651
68c69027
ST
16522004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1653
1654 * macterm.c (mac_do_list_fonts): Fix memory leak
1655
134579f2
RS
16562004-12-20 Richard M. Stallman <rms@gnu.org>
1657
1658 * regex.c (re_match_2_internal) <symend, wordend>:
1659 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
1660
fbe6152f
ST
16612004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1662
043f7f73
SM
1663 * macterm.c (endif, x_font_name_to_mac_font_name):
1664 Use maccentraleurroman instead of maccentraleuropean
fbe6152f
ST
1665 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
1666 quickly finding a specific font without needing regexps.
1667
fecad3f6
JD
16682004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1669
333f1b6f
JD
1670 * syssignal.h: Declare main_thread.
1671 (SIGNAL_THREAD_CHECK): New macro.
1672
1673 * keyboard.c (input_available_signal): Move thread checking code
1674 to macro SIGNAL_THREAD_CHECK and call that macro.
1675 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
1676
1677 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
1678
1679 * emacs.c: Define main_thread.
1680 (main): Initialize main_thread.
1681 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
1682 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
1683
1684 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
1685
1686 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
1687
1688 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
1689
043f7f73
SM
1690 * process.c (send_process_trap, sigchld_handler):
1691 Call SIGNAL_THREAD_CHECK.
333f1b6f
JD
1692
1693 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
1694
1695 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
1696
fecad3f6
JD
1697 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
1698 returning when xg_ignore_gtk_scrollbar is true.
1699
2a84c6da
KS
17002004-12-14 Kim F. Storm <storm@cua.dk>
1701
1702 * keyboard.c (read_char): Save and restore echo_string when
1703 handling input method.
1704
d9c1ce9d
RS
17052004-12-13 Richard M. Stallman <rms@gnu.org>
1706
1707 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
1708
1709 * keyboard.c (Vthrow_on_input): New variable.
1710 (syms_of_keyboard): Defvar and initialize it.
1711 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
1712
1713 * lisp.h (QUIT): Check for Vthrow_on_input.
1714 (Vthrow_on_input): Declare it.
1715
a6495ed5
KS
17162004-12-13 Kim F. Storm <storm@cua.dk>
1717
1718 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
1719 vector.
1720
24a0e22f
RS
17212004-12-12 Richard M. Stallman <rms@gnu.org>
1722
1723 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
1724
1725 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
1726 (Ftry_completion): Really use outer `zero'; eliminate inner one.
1727
d6d31e57
KH
17282004-12-12 Kenichi Handa <handa@m17n.org>
1729
1730 * term.c (encode_terminal_code): Fix previous change.
1731
6f8ffb88
SM
17322004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
1733
fb6f5cbf
SM
1734 * keyboard.c (handle_async_input): Remove pthread mutex handling.
1735 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
1736
6f8ffb88
SM
1737 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
1738 in macro arguments.
1739
1740 * minibuf.c (Ftry_completion, Fall_completions): Don't use
1741 XFASTINT blindly.
1742
1743 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
1744
c83c9f9d
JD
17452004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1746
2f25767f
JD
1747 * w32term.c (x_calc_absolute_position): Remove calculation of
1748 difference between inner and outer window. Don't subtract difference
1749 for left and top calculations.
1750
c83c9f9d
JD
1751 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
1752 for left and top calculations. Remove call to x_real_positions.
24a0e22f 1753 [Bug report by Drew Adams in November]
c83c9f9d
JD
1754 (x_check_expected_move): Do not set change_gravity to 1 when calling
1755 x_set_offset.
1756
cc1caa4e
RS
17572004-12-08 Richard M. Stallman <rms@gnu.org>
1758
1759 * xdisp.c (get_next_display_element): Use `escape-glyph' for
1760 control chars and escaped octal codes.
1761 (Qescape_glyph): New variable.
1762 (syms_of_xdisp): Initialize it.
1763 (escape_glyph_face): New variable.
1764 (redisplay_window): Initialize it.
1765
e0e30823
RS
17662004-12-07 Paul Eggert <eggert@cs.ucla.edu>
1767
1768 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
1769 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
1770
f415cacd
JD
17712004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1772
cf435f39
JD
1773 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
1774 reset_malloc_hooks.
1775
6f8ffb88
SM
1776 * keyboard.c (handle_async_input, input_available_signal):
1777 Add ! defined (SYSTEM_MALLOC) around thread code.
cf435f39 1778
f415cacd
JD
1779 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
1780
043f7f73 17812004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
19b1f29a
SM
1782
1783 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
1784
1785 * config.in: Regenerate.
1786
ded997c1
JD
17872004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1788
453a4f1b
JD
1789 * xmenu.c (Fx_popup_menu): Correct documentation about position.
1790 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
1791 if not given by a mouse click to correspond with x-popup-menu
1792 documentation.
1793
9a38524c
JD
1794 * config.in: Regenerate.
1795
aa477689
JD
1796 * gtkutil.c: Include signal.h and syssignal.h.
1797 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
1798
1799 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
1800 new variables main_thread and alloc_mutex,
1801 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
1802 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
1803 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
1804 (UN)BLOCK_INPUT.
1805 (emacs_blocked_free, emacs_blocked_malloc)
1806 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
1807 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
1808 (reset_malloc_hooks): New function.
1809
1810 * lisp.h: Declare reset_malloc_hooks.
1811
1812 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
1813
1814 * keyboard.c: Conditionally include pthread.h
6f8ffb88 1815 (handle_async_input, input_available_signalt): If not in the main
aa477689
JD
1816 thread, block signal, send signal to main thread and return.
1817
ded997c1 1818 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
6f8ffb88 1819 Set current folder in file chooser if default_filename is a directory.
ded997c1 1820
c72b0edd
SM
18212004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
1822
1823 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
1824 Remove redundant correctness checks.
1825 (regex_compile): Fix up error codes for \{..\} expressions.
1826
c721eee5
RS
18272004-12-05 Richard M. Stallman <rms@gnu.org>
1828
1829 * regex.c (regex_compile): Fix end-of-pattern case for space.
1830
d8f96db8
ST
18312004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1832
6108209e
KS
1833 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
1834 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
d8f96db8 1835 crashes with invalid characters.
6108209e
KS
1836 * macmenu.c (add_menu_item): Use it.
1837 * image.c (image_load_quartz2d): Likewise.
1838 * macfns.c (x_set_name, x_set_title): Likewise.
1839 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
1840 creating them each time for labels.
d8f96db8 1841
ab67e8b6
RS
18422004-12-02 Richard M. Stallman <rms@gnu.org>
1843
1844 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
1845 don't use it here.
1846
1847 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
1848 (interactive_p): Skip Scalled_interactively_p frames
1849 like Sinteractive_p frames.
b8217ea6 1850 (unwind_to_catch): Clear handling_signal.
ab67e8b6
RS
1851
1852 * data.c (Fmake_variable_buffer_local): Doc fix.
1853 (Fmake_local_variable): Doc fix.
1854
1855 * insdel.c (insert_from_string_before_markers)
1856 (insert_from_string): Don't modify buffer on empty insertion.
1857
1858 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
1859
f86bdc80
ST
18602004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1861
1862 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
1863 menu text as UTF8 fails.
1864
1cae6d39
KS
18652004-12-01 Kim F. Storm <storm@cua.dk>
1866
1867 * alloc.c: Add commentary for last change.
1868 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
1869 sizeof(size_t) != 4.
1870 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
1871 Use them. Also clear header and trailer of freed memory.
1872 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
1873 (string_overrun_cookie): Rename from string_overrun_pattern.
1874 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
1875
77ea0764
AS
18762004-12-01 Andreas Schwab <schwab@suse.de>
1877
1878 * lisp.h: Declare string_to_multibyte.
1879
2d5cd4e6
KH
18802004-12-01 Kenichi Handa <handa@m17n.org>
1881
1882 * w32console.c (w32con_write_glyphs): Decide coding here.
1883 Adjusted for the change of encode_terminal_code.
1884
1885 * term.c (encode_terminal_code): Don't make it "static".
1886
25a0994a
KH
18872004-11-30 Kenichi Handa <handa@m17n.org>
1888
19b1f29a 1889 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
25a0994a 1890 (encode_terminal_code): Argument changed. Encode all
19b1f29a
SM
1891 characters at once, and return a pointer to the result of encoding.
1892 (write_glyphs): Decide coding here. Adjusted for the above change.
25a0994a
KH
1893 (insert_glyphs): Likewise.
1894 (term_init): Initialize encode_terminal_bufsize to 0.
1895
1896 * coding.c (Vcode_conversion_workbuf_name): New variable.
1897 (syms_of_coding): Initialize and staticpro it.
1898 (set_conversion_work_buffer): New function.
1899 (run_pre_post_conversion_on_str): Use it.
1900 (run_pre_write_conversin_on_c_str): New function.
1901
1902 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
1903
fc7a70cc
ST
19042004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1905
1906 * keyboard.c: Don't undef SIGIO
1907 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
1908 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
1909 (macfns.o): Don't depend on ccl.h.
1910 * macfns.c (mac_frame_parm_handlers): Set handlers for
1911 Qleft_fringe and Qright_fringe.
1912 * macterm.c (mac_fill_rectangle_to_pixmap)
1913 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
1914 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
1915 Put in #if 0.
1916 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
1917 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
1918 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
1919 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
1920 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
1921 XDrawImageString. Always draw background and foreground separately.
1922 (x_draw_image_foreground): Use clipping instead of computing the
1923 intersection rectangle.
1924 (x_draw_image_glyph_string): Don't draw an image with mask to a
1925 pixmap.
1926 (x_redisplay_interface): Set flush_display_optional member to 0.
1927 (XTread_socket): Correctly reset the TEConverter
1928 object.
1929
fc368889
KS
19302004-11-30 Kim F. Storm <storm@cua.dk>
1931
1932 * lisp.h: New defines to enable buffer overrun checking.
1933 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
1934 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
1935
1936 * alloc.c: Add more checks for buffer overruns.
1937 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
1938 xmalloc_overrun_check_trailer, overrun_check_malloc)
1939 overrun_check_realloc, overrun_check_free): Add.
1940 (GC_STRING_EXTRA, string_overrun_pattern): Add.
1941 (check_sblock, allocate_string_data, compact_small_strings):
1942 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
1943 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
1944 (check_string_free_list): Add.
1945 (allocate_string, sweep_strings): Call check_string_free_list.
1946
1947 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
1948 XMALLOC_OVERRUN_CHECK to avoid crash during load.
1949
0af8cfe1
KS
19502004-11-29 Kim F. Storm <storm@cua.dk>
1951
1952 * fns.c (concat): Use SAFE_ALLOCA.
1953
77220eeb
SM
19542004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
1955
1956 * sysdep.c (emacs_write): Don't use QUIT.
1957
a778cf63
KH
19582004-11-29 Kenichi Handa <handa@m17n.org>
1959
1960 * buffer.c (init_buffer): Set current_buffer->directory to a
1961 multibyte string made by string_to_multibyte.
1962
77220eeb 1963 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
a778cf63 1964
e3177e43
AS
19652004-11-27 Andreas Schwab <schwab@suse.de>
1966
1967 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
1968
1969 * s/gnu-linux.h: Enable no-op gcpros on ia64.
1970 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
1971
77220eeb
SM
1972 * filelock.c (lock_file_1): Call get_boot_time early.
1973 Increase buffer size.
e3177e43 1974
ca5e6fef
EZ
19752004-11-27 Eli Zaretskii <eliz@gnu.org>
1976
1977 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
1978 is not defined.
1979
e2811828
KS
19802004-11-27 Kim F. Storm <storm@cua.dk>
1981
1982 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
1983 marker out of doc string.
1984
7a262394
SM
19852004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
1986
1987 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
1988 which was not mentioned in the log.
1989
f33cc5a9
KS
19902004-11-26 Kim F. Storm <storm@cua.dk>
1991
048bb03f
KS
1992 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
1993 angle bitmaps at top/bottom line.
1994
f33cc5a9
KS
1995 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
1996 set it when it->method is set to next_element_from_display_vector.
1997 (setup_for_ellipsis): Add LEN argument. Callers changed.
1998 Set it->saved_face_id.
1999 (get_next_display_element): Use loop instead of recursion.
2000 Set it->saved_face_id. Combine duplicate code for ctr chars.
2001 (next_element_from_display_vector): Do not set it->saved_face_id.
2002 (next_element_from_ellipsis): Use setup_for_ellipsis.
2003
670e8906
EZ
20042004-11-26 Eli Zaretskii <eliz@gnu.org>
2005
2006 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
2007 prevent compiler warnings.
2008
275464e7
SM
20092004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
2010
1bf0e604
SM
2011 * keyboard.c (command_loop_1): Print a message describing the key
2012 the user just pressed when this key has no binding.
2013
275464e7
SM
2014 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
2015 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
2016
2017 * lread.c (readchar): Check QUIT when `getc' is interrupted.
2018
261b01c6
RS
20192004-11-24 Richard M. Stallman <rms@gnu.org>
2020
2021 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
2022
2023 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
2024
a5bd504e
KS
20252004-11-24 Kim F. Storm <storm@cua.dk>
2026
2027 * xdisp.c (move_it_in_display_line_to, display_line):
2028 Restore saved_face_id also when truncate-lines or hscrolled.
2029
255e4140
JD
20302004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2031
2032 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
2033 x-use-old-gtk-file-dialog.
2034
2035 * xfns.c: Define x_use_old_gtk_file_dialog.
2036 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
2037 outside ifdef USE_GTK.
2038
cab27d04
SM
20392004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
2040
2041 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
2042 Don't use XFASTINT blindly.
2043
2044 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
2045
2046 * indent.c (skip_invisible): Avoid non-idempotent side-effects
2047 in macro arguments.
2048
2049 * keymap.c (Flookup_key): Check INTEGERP before XINT.
2050
2051 * lread.c (oblookup): Don't use XFASTINT blindly.
2052
2053 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
2054 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
2055
11e0be49
KS
20562004-11-23 Kim F. Storm <storm@cua.dk>
2057
4d721114
KS
2058 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
2059 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
2060
11e0be49
KS
2061 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
2062 signal_p is zero and face name is unknown.
2063 (Fx_list_fonts): Don't signal error in lookup_named_face.
2064 (Fface_font): Signal error in lookup_named_face.
2065 (ascii_face_of_lisp_face): Likewise.
2066
2067 * dispextern.h (lookup_named_face): Fix prototype.
2068
2069 * xdisp.c (handle_single_display_prop): Don't signal error in
2070 lookup_named_face for unknown fringe face name.
2071 (highlight_trailing_whitespace): Don't signal error in
2072 lookup_named_face if trailing-whitespace face unknown.
2073 (calc_line_height_property): Don't signal error in
2074 lookup_named_face if specified face name is unknown.
2075
2076 * fringe.c (update_window_fringes): Show top row indicator if
2077 window has header-line. Don't show arrow at bob and eob
2078 if the boundary indicators are not used.
2079 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
2080
2081 * window.c (set_window_buffer): Clear display_error_modiff.
2082
0960a582
KS
20832004-11-22 Kim F. Storm <storm@cua.dk>
2084
2085 * fringe.c (update_window_fringes): Provide sensible fall-back
2086 value for non-nil indicate-buffer-boundaries setting.
2087
b0e9bb28
MR
20882004-11-22 Markus Rost <rost@ias.edu>
2089
2090 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
2091
d0bce91e
SM
20922004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
2093
2094 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
2095
e1814672
KS
20962004-11-21 Kim F. Storm <storm@cua.dk>
2097
b7fd3518
KS
2098 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
2099
2100 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
2101 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
2102
2103 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
2104 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
2105
2106 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
2107 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
2108
d0bce91e
SM
2109 * xdisp.c (move_it_in_display_line_to, display_line):
2110 Restore saved_face_id if overflow-newline-into-fringe is enabled and
2111 line is continued before or in middle of element from display vector.
f01d4d05 2112
f1a61389
KS
2113 * indent.c (Fvertical_motion): Fix last change. Use another
2114 method to detect if iterator moved too far ahead after reseat.
2115
e1814672
KS
2116 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
2117 expand matrix width for overflow in zero-width area.
2118 (append_glyph, append_composite_glyph, produce_image_glyph)
2119 (append_stretch_glyph): Use it to avoid loop in redisplay.
2120 (note_mode_line_or_margin_highlight): Don't let help-echo from
2121 string override help-echo from image map.
2122
2dafe1c9
LT
21232004-11-20 Luc Teirlinck <teirllm@auburn.edu>
2124
d0bce91e 2125 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
2dafe1c9
LT
2126 * callint.c (Fcall_interactively): Ditto.
2127
fd6866c8 21282004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
9961365e
RS
2129
2130 * minibuf.c (Fminibuffer_complete_and_exit):
2131 Fixup the case of the completed value, for case-indep completion.
2132
dedbac89
RS
21332004-11-20 Richard M. Stallman <rms@gnu.org>
2134
fd6866c8
RS
2135 * lisp.h (Fread_from_minibuffer): Add arg in decl.
2136
9d00469f 2137 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
ce8dd7ca 2138 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
9d00469f 2139
dedbac89 2140 * search.c (Vsearch_spaces_regexp):
d0bce91e 2141 Rename from Vsearch_whitespace_regexp. All uses changed.
dedbac89 2142
2f672bb5
TTN
21432004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
2144
2145 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
2146
f31a9a68
RS
21472004-11-19 Richard M. Stallman <rms@gnu.org>
2148
2149 * search.c (Vsearch_whitespace_regexp): New variable.
2150 (syms_of_search): Defvar it.
2151 (compile_pattern_1): Call re_set_whitespace_regexp with it.
2152 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
2153 is non-nil.
6de891db
RS
2154 (struct regexp_cache): New element whitespace_regexp.
2155 (syms_of_search): Initialize whitespace_regexp elements.
2156 (compile_pattern): Compare whitespace_regexp elements.
2157 (compile_pattern_1): Set whitespace_regexp elements.
f31a9a68
RS
2158
2159 * regex.c (regex_compile): Substitute whitespace_regexp
2160 for spaces, if it is nonzero.
2161 (whitespace_regexp): New variable.
2162 (re_set_whitespace_regexp): New function.
2163
cbc34cb3
KS
21642004-11-19 Kim F. Storm <storm@cua.dk>
2165
2166 * indent.c (Fvertical_motion): Fix last change.
2167
b54a7539
KS
21682004-11-18 Kim F. Storm <storm@cua.dk>
2169
2170 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
2171 Instead, move back again if reseating moves too far ahead.
2172
21732004-11-17 Luc Teirlinck <teirllm@auburn.edu>
802c6e56
LT
2174
2175 * xdisp.c (message3): Call clear_message.
2176
5ff504fe
KS
21772004-11-17 Kim F. Storm <storm@cua.dk>
2178
2179 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
2180
5ae53dcf
JD
21812004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2182
d0bce91e 2183 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
724cde0d 2184
6abf3a27 2185 * xmenu.c (x_menu_in_use): Remove.
5ae53dcf
JD
2186 (x_menu_set_in_use): Also set popup_activated_flag.
2187
5ff504fe 2188 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5ae53dcf
JD
2189 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
2190
6abf3a27 2191 * xterm.h: (x_menu_in_use): Remove.
5ae53dcf 2192
ee31cd78
RS
21932004-11-16 Richard M. Stallman <rms@gnu.org>
2194
6abf3a27
SM
2195 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
2196 Use map-keymap-internal to implement that.
ee31cd78
RS
2197
2198 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
2199
6abf3a27
SM
22002004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
2201
2202 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
2203 a window before using XWINDOW.
2204
2205 * window.c (make_window, Fselect_window, make_dummy_parent)
2206 (save_window_save):
2207 * frame.c (make_frame):
2208 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
2209
2210 * lisp.h (NILP): Use EQ rather than XFASTINT.
2211
b4d61105
KS
22122004-11-16 Kim F. Storm <storm@cua.dk>
2213
6abf3a27 2214 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
dda01a4c 2215
b4d61105
KS
2216 * indent.c (Fvertical_motion): Fix last change. Only reseat when
2217 moving backwards.
2218
22192004-11-16 Luc Teirlinck <teirllm@auburn.edu>
ce2bbf6a
LT
2220
2221 * dispextern.h: Extern reseat_at_previous_visible_line_start.
2222
ab5b02b0
KH
22232004-11-16 Kenichi Handa <handa@m17n.org>
2224
2225 * xdisp.c (display_mode_element): Fix previous change (calculate
2226 end position of substring to display correctly).
2227
c482cf97
KS
22282004-11-16 Kim F. Storm <storm@cua.dk>
2229
2230 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
2231 Reported by Andrew M. Scott.
2232
9f89426b
KS
22332004-11-15 Kim F. Storm <storm@cua.dk>
2234
2235 * fns.c (Fsafe_plist_get): New defun.
2236 (syms_of_fns): Defsubr it.
2237
2238 * lisp.h (Fsafe_plist_get): Add EXFUN.
2239
2240 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
2241 Use Fsafe_plist_get.
2242 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2243 Fix image map element parsing. Use Fsafe_plist_get.
2244
27418463
RS
22452004-11-15 Richard M. Stallman <rms@gnu.org>
2246
2247 * xdisp.c (get_next_display_element): Fix previous change.
2248
a130b901
JD
22492004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2250
ef614e04
JD
2251 * window.c (shrink_windows): Handle special case of one window left
2252 when trying to shrink the final reminder. Grow windows if
2253 total_removed is less than total_shrink.
2254
a130b901
JD
2255 * xmenu.c (pop_down_menu): Remove global variable current_menu,
2256 extract pointer from arg with XSAVE_VALUE.
46303896
KS
2257 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
2258 Construct arg to record_unwind_protect with make_save_value.
a130b901 2259
d9a03ad2
RS
22602004-11-13 Richard M. Stallman <rms@gnu.org>
2261
2262 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
2263 (get_next_display_element): Fix previous change to apply only to \n.
2264
2265 * indent.c (Fvertical_motion): Scan to PT from start of line to
2266 make iterator consistent.
2267
2268 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
2269
b3935289
JD
22702004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2271
2272 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
2273
2274 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
2275 Record unwind with clean_up_file_dialog.
2276
78819ebb
KS
2277 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
2278 Declare.
b3935289
JD
2279
2280 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
2281
af89e871
JD
22822004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2283
457a8155 2284 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6abf3a27 2285 (xg_file_sel_destroy): Remove.
46303896
KS
2286 (xg_file_response_cb, pop_down_file_dialog)
2287 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
457a8155 2288 New functions.
6abf3a27
SM
2289 (xg_get_file_with_chooser, xg_get_file_with_selection):
2290 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
457a8155
JD
2291 Move common code to xg_get_file_name. Return widget created.
2292 (xg_get_file_name): Set name, transient for, modal and destroy
2293 with parent here. Connect response signal to xg_file_response_cb,
2294 connect delete-event to gtk_true. Record pop_down_file_dialog
2295 for unwind. Do event loop and call x_menu_wait_for_event in loop.
2296 (xg_create_widget): Make dialogs modal.
2297
af89e871
JD
2298 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
2299 Lisp_Object.
2300 (popup_get_selection): Move unwind protect ...
2301 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
2302 Move destroy of widget to pop_down_menu.
2303 (popup_widget_loop): Move unwind protect ...
2304 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
2305 Move destroy of widget to pop_down_menu.
2306 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6abf3a27 2307 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
af89e871
JD
2308 x_mouse_leave and grabbed = 0 to pop_down_menu.
2309
5596fbf1
KS
23102004-11-13 Kim F. Storm <storm@cua.dk>
2311
2312 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
2313 (syms_of_xdisp): DEFVAR_BOOL it.
2314 (make_cursor_line_fully_visible, try_cursor_movement)
2315 (try_window_id): Use it.
2316
b9de078a
KS
23172004-11-12 Kim F. Storm <storm@cua.dk>
2318
381f7091
KS
2319 * dispextern.h (struct glyph_row): New member extra_line_spacing.
2320 (struct it): New member max_extra_line_spacing.
2321 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
2322 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
2323 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
2324 part of last line is only extra line spacing (so the text on the
2325 line is fully visible). Use helper macros.
2326 Add W arg (to use them). All callers changed.
2327 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
2328 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
2329
6abf3a27
SM
2330 * window.c (window_scroll_pixel_based, Frecenter):
2331 Use move_it_vertically_backward directly.
381f7091
KS
2332 (Frecenter): Fix calculation of new start pos for negative arg.
2333 Before, the new start pos was sometimes chosen too far back, so
2334 the last line became only partially visible, and thus would be
2335 either only semi-visible or automatically scrolled to the middle
2336 of the window by redisplay.
2337
2338 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
2339 (move_it_vertically_backward): Don't recure to move further back.
2340 (move_it_vertically): Remove superfluous condition.
2341 (move_it_by_lines): Clear last_height when moved 0 lines.
6abf3a27 2342 (resize_mini_window): Use it.max_extra_line_spacing.
381f7091
KS
2343 (display_tool_bar_line): Clear row->extra_line_spacing.
2344 (try_scrolling): Use move_it_vertically_backward directly.
2345 (redisplay_window): Likewise.
2346 (compute_line_metrics): Set row->extra_line_spacing.
2347 (display_line, display_string): Likewise.
2348 (x_produce_glyphs): Update it->max_extra_line_spacing.
2349
b9de078a
KS
2350 * xmenu.c (pop_down_menu): Return nil.
2351
c3438661
JD
23522004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2353
2354 * xmenu.c (x_menu_wait_for_event): New function.
2355 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
2356 to handle timers.
df00f436
JD
2357 (popup_widget_loop): Add argument do_timers.
2358 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
2359 do_timers to popup_widget_loop.
c3438661
JD
2360 (xmenu_show): Call XMenuActivateSetWaitFunction so that
2361 x_menu_wait_for_event is called by XMenuActivate.
b9de078a 2362 (create_and_show_popup_menu): Pass 1 for do_timers to
df00f436 2363 popup_get_selection.
f1d1cd24
JD
2364 (pop_down_menu): New function.
2365 (popup_get_selection, popup_widget_loop): Unwind protect to
2366 pop_down_menu.
2367 (popup_widget_loop): Add argument widget.
2368 (create_and_show_popup_menu, create_and_show_dialog): Pass new
2369 argument widget to popup_widget_loop.
c3438661 2370
32e2fb04
SM
23712004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2372
2373 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
2374
0faf6806
KS
23752004-11-09 Kim F. Storm <storm@cua.dk>
2376
2377 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
2378 Fix various comments referring to XEvents instead of input events.
2379 (x_queue_event): Fix format strings.
2380 (x_stop_queuing_selection_requests): Likewise.
2381
2382 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
2383 (pint2hrstr): Add extra braces to silence compiler.
2384
2385 * print.c (print_object): Fix format string.
2386
2387 * lread.c (read1): Fix next_char matching.
2388
2389 * lisp.h (Fdelete): Add EXFUN.
2390 (replace_range_2): Add prototype.
2391
2392 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
2393
2394 * intervals.h (NULL_INTERVAL_P): Add separate version when
2395 ENABLE_CHECKING is not defined to silence compiler.
2396 (compare_string_intervals): Add prototype.
2397
2398 * fringe.c (destroy_fringe_bitmap): Fix return type.
2399 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
2400
2401 * emacs.c (Fdump_emacs): Fix format string.
2402
2403 * doc.c: Include <ctype.h>.
2404 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
2405
2406 * data.c (store_symval_forwarding): Remove unused variables.
2407
2408 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
2409
16bf4e32
JD
24102004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2411
2412 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
2413 to ${OLDXMENU}.
2414
cdb805a9
KS
24152004-11-09 Kim F. Storm <storm@cua.dk>
2416
2417 * process.c (Fmake_network_process): Remove kludge for interrupted
2418 connects on BSD. If connect is interrupted, just close socket and
2419 start over rather than sleeping and retry with same socket.
2420
d87a9ab8 24212004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
0faf6806 2422
a8b16c80
JD
2423 * .cvsignore: Add buildobj.lst.
2424
d87a9ab8
JD
2425 * doc.c: New variable Vbuild_files.
2426 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
2427 file names from buildobh.lst. Only attach docstrings from files
2428 that are in Vbuild_files.
2429 (syms_of_doc): Defvar Vbuild_files.
2430
2431 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
2432 and w32*.o.
2433 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6abf3a27 2434 (mostlyclean): Rm buildobj.lst
d87a9ab8
JD
2435
2436 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
2437 is linked.
2438
b6709e77
KS
24392004-11-09 Kim F. Storm <storm@cua.dk>
2440
2441 * fringe.c (update_window_fringes): Update fringe bitmaps if
2442 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
2443 also update previous row to get rid of misc. artifacts.
2444
bae9677d
KS
24452004-11-08 Kim F. Storm <storm@cua.dk>
2446
2447 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 2448 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 2449
3f8ea68c
EZ
24502004-11-08 Eli Zaretskii <eliz@gnu.org>
2451
2452 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
2453 Don't include <sys/time.h> explicitly.
2454 Include <stdio.h> unconditionally, not just on MacOS.
2455
a653f812
KH
24562004-11-08 Kenichi Handa <handa@m17n.org>
2457
2458 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
2459 don't pay attention to '\' before '*'.
2460 (fontset_pattern_regexp): Change the meaning of the second arg.
2461 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
2462 (check_fontset_name): Try NAME as literal at first, and if it
2463 failes, try NAME as pattern.
2464
c37caf9d
JD
24652004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2466
2467 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
2468
b72915a7
AS
24692004-11-07 Andreas Schwab <schwab@suse.de>
2470
78819ebb
KS
2471 * lisp.h (Fmsdos_downcase_filename): Declare.
2472 * dired.c (Fmsdos_downcase_filename): Don't declare here.
b72915a7
AS
2473 * fileio.c: Likewise.
2474
238a44a8
JD
24752004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2476
2477 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
2478 comparisons with integers instead of Lisp_Object address.
2479 (Fmsdos_set_keyboard): Declare argument allkeys.
2480
2481 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
2482
78819ebb 2483 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
238a44a8
JD
2484 int/Lisp_Object mixup.
2485
2486 * fileio.c: Ditto.
2487
31141c13
ST
24882004-11-06 Steven Tamm <steventamm@mac.com>
2489
2490 * editfns.c: Need to include sys/time.h before resource.h on darwin.
2491
f28c1bd9
RS
24922004-11-06 Richard M. Stallman <rms@gnu.org>
2493
2494 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
2495
2496 * xfaces.c (merge_named_face): GCPRO the face_name in the
2497 named_merge_point struct that we make.
2498 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
2499
2500 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
2501 before deciding whether to inactivate mark.
2502
59dede22
EZ
25032004-11-06 Lars Brinkhoff <lars@nocrew.org>
2504
2505 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
2506 * editfns.c (Fget_internal_run_time): New function.
2507 (syms_of_data): Defsubr it.
2508 * fns.c (sxhash): As far as possible, merge calculation of
2509 hash code for symbols and strings.
59dede22 2510
27540e81
EZ
25112004-11-06 Eli Zaretskii <eliz@gnu.org>
2512
2513 * frame.c (syms_of_frame): Fix the example in the doc string.
2514
df470e3b
JD
25152004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2516
2517 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
2518
2519 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
2520 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 2521
4cc8522c
LT
25222004-11-05 Luc Teirlinck <teirllm@auburn.edu>
2523
2524 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
2525
d4a42098
KS
25262004-11-05 Kim F. Storm <storm@cua.dk>
2527
a8490886
KS
2528 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
2529
d4a42098
KS
2530 * fileio.c (Ffile_modes): Doc fix.
2531 (auto_save_1): Check for Ffile_modes nil value.
2532
36a2b04c
KS
25332004-11-05 Kim F. Storm <storm@cua.dk>
2534
2535 * xselect.c (struct selection_event_queue, selection_queue)
2536 (x_queue_selection_requests, x_queue_event)
2537 (x_start_queuing_selection_requests)
2538 (x_stop_queuing_selection_requests): Add new queue for selection
2539 input events to replace previous XEvent queue in xterm.c.
2540 (queue_selection_requests_unwind): Adapt to new queue.
32e2fb04
SM
2541 (x_reply_selection_request): Adapt to new queue.
2542 Unexpect wait_object in case of x errors (memory leak).
36a2b04c
KS
2543 (x_handle_selection_request, x_handle_selection_clear): Make static.
2544 (x_handle_selection_event): New function. May queue selection events.
2545 (wait_for_property_change_unwind): Use save_value instead of cons.
2546 Clear property_change_reply_object.
2547 (wait_for_property_change): Abort if already waiting.
2548 Use save_value instead of cons for unwind data.
2549 (x_handle_property_notify): Skip events already arrived, but don't
2550 free them, as "arrived" field is checked by wait_for_property_change,
2551 and it will be freed by unwind or explicit unexpect_property_change.
2552 (x_get_foreign_selection): Add to new queue.
2553 (receive_incremental_selection): Don't unexpect wait_object when done
2554 as it has already been freed by previous wait_for_property_change.
2555
2556 * xterm.h (x_start_queuing_selection_requests)
2557 (x_stop_queuing_selection_requests, x_handle_selection_request)
2558 (x_handle_selection_clear): Remove prototypes.
2559 (x_handle_selection_event): Add prototype.
2560
2561 * xterm.c (handle_one_xevent): Don't queue X selection events
2562 here, it may be too late if we start queuing after we have already
2563 stored some selection events into the kbd buffer.
2564 (struct selection_event_queue, queue, x_queue_selection_requests)
2565 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
2566 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
2567 (x_catch_errors_unwind): Block input around final XSync.
2568
2569 * keyboard.h (kbd_buffer_unget_event): Add prototype.
2570
2571 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
2572 (kbd_buffer_unget_event): New function.
2573 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
2574 and use x_handle_selection_event.
2575 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
2576
9c3ad9e1
JD
25772004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2578
2579 * xselect.c (TRACE3): New debug macro.
2580 (x_reply_selection_request): Use it.
2581 (receive_incremental_selection): In call to TRACE0, the name of
2582 a symbol is in xname.
2583
a33b89de
KS
25842004-11-05 Kim F. Storm <storm@cua.dk>
2585
2586 * fontset.c (fontset_pattern_regexp): Use unsigned char.
2587
a872928c
JD
25882004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2589
88208bb8
JD
2590 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
2591
78819ebb 2592 * gtkutil.h (use_old_gtk_file_dialog): Declare.
0a4f23f3
JD
2593
2594 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
32e2fb04 2595 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
0a4f23f3
JD
2596 * xfns.c (syms_of_xfns): ... to here.
2597
a872928c
JD
2598 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
2599 it doesn't start with /.
2600
b912921c
KH
26012004-11-04 Kenichi Handa <handa@m17n.org>
2602
2603 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
2604 treat it as a literal character.
2605
c524d9a6
KS
26062004-11-03 Kim F. Storm <storm@cua.dk>
2607
2608 * .gdbinit (ppt): New function.
2609
8cfd0f36
JD
26102004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2611
a11e1dce
JD
2612 * xterm.c (x_window_to_scroll_bar): Only call
2613 xg_get_scroll_id_for_window if toolkit scroll bars are used.
2614
8cfd0f36
JD
2615 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
2616 of save.
2617
a93563fd
AS
26182004-11-02 Andreas Schwab <schwab@suse.de>
2619
2620 * window.c (Fscroll_right): Fix last change.
2621
2b2d59d8
KS
26222004-11-02 Kim F. Storm <storm@cua.dk>
2623
2624 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
2625
26262004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2627
2628 * callproc.c (Fcall_process): Block input around vfork.
2629
ca28104d
KS
26302004-11-02 Kim F. Storm <storm@cua.dk>
2631
2632 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
2633 (syms_of_eval): Defsubr it.
2634
29bb7127
RS
26352004-11-02 Richard M. Stallman <rms@gnu.org>
2636
2637 * insdel.c (replace_range_2): New function.
2638
2639 * casefiddle.c (casify_region): Handle changes in byte-length
2640 using replace_range_2.
2641
2642 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
2643
b6189c3b 2644 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
2645 Subtract 1 from pos when checking previous newline for invisibility.
2646
2647 * window.c (window_scroll_pixel_based): Update preserve_y
2648 for header line if any.
2649 (Fscroll_left, Fscroll_right): Don't call interactive_p;
2650 use a new second argument instead.
2651
2652 * eval.c (Fcall_interactive_p): New function.
2653 (interactive_p): Don't test INTERACTIVE here.
2654 (Finteractive_p): Doc fix.
2655
2656 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
2657
b6189c3b 26582004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
2659
2660 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 2661 comparing font names.
a3fe4aaf 2662
2a00cdb4
JD
26632004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2664
f9d64bb3
JD
2665 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
2666 Fx_file_dialog if only directories should be read.
2667
2668 * lisp.h: Fx_file_dialog takes 5 parameters.
2669
32e2fb04
SM
2670 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
2671 Add parameter only_dir_p.
f9d64bb3
JD
2672 In Motif version, don't put DEFAULT_FILENAME in filter part of the
2673 dialog, just text field part. Do not add DEFAULT_FILENAME
2674 to list of files if it isn't there.
2675 In GTK version, pass only_dir_p parameter to xg_get_file_name.
2676
32e2fb04
SM
2677 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
2678 Check only_dir_p instead of comparing prompt to "Dired". When using
f9d64bb3
JD
2679 a save dialog, add option kNavDontConfirmReplacement, change title
2680 to "Enter name", change text for save button to "Ok".
2681
32e2fb04
SM
2682 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
2683 Check only_dir_p instead of comparing prompt to "Dired".
f9d64bb3
JD
2684
2685 * gtkutil.c (xg_get_file_with_chooser)
2686 (xg_get_file_with_selection): New functions, only defined ifdef
2687 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
2688 respectively.
2689 (xg_get_file_name): Add parameter only_dir_p.
2690 Call xg_get_file_with_chooser or xg_get_file_with_selection
2691 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
2692 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
2693
2694 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
2695
2a00cdb4
JD
2696 * config.in: Rebuild (added HAVE_GTK_FILE_*).
2697
f6749d5d
KS
26982004-11-01 Kim F. Storm <storm@cua.dk>
2699
32e2fb04
SM
2700 * process.c (connect_wait_mask, num_pending_connects):
2701 Only declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 2702 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
2703 (IF_NON_BLOCKING_CONNECT): New helper macro.
2704 (wait_reading_process_output): Only declare and use local vars
2705 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 2706
1a99fe1a
JR
27072004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
2708
2709 * w32term.c (x_scroll_run): Delete region objects after use.
2710
fcdb28b4
JD
27112004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2712
495ef86b
JD
2713 * xmenu.c: Add prototypes for forward function declarations.
2714 (popup_get_selection): Remove parameter do_timers, remove call to
2715 timer_check.
32e2fb04
SM
2716 (create_and_show_popup_menu, create_and_show_dialog):
2717 Remove parameter do_timers from call to popup_get_selection.
495ef86b 2718
12e6566a
JD
2719 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
2720 tool_bar_items and assign the result to f->tool_bar_items if
2721 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
2722 tool_bar_items to assignment of result.
2723
fcdb28b4
JD
2724 * atimer.c (alarm_signal_handler): Do not call set_alarm if
2725 pending_atmers is non-zero.
2726
1a1a0c4c
KS
27272004-10-31 Kim F. Storm <storm@cua.dk>
2728
2729 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
2730
a36f1680
JW
27312004-10-28 Will <will@glozer.net>
2732
2733 * macterm.c: allow user to assign key modifiers to the Mac Option
2734 key via a 'mac-option-modifier' variable.
2735
32e2fb04 27362004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2d586478
SM
2737
2738 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
2739 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
2740 (x_handle_selection_request, x_handle_selection_clear)
2741 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
2742
4f71c13f
RS
27432004-10-28 Richard M. Stallman <rms@gnu.org>
2744
2745 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
2746
2747 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
2748
068f3848
SM
27492004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
2750
2751 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
2752 comment-starter over a 1-char one.
2753
4660a9e3
RS
27542004-10-27 Richard M. Stallman <rms@gnu.org>
2755
2756 * xdisp.c (get_next_display_element): In mode lines,
2757 treat newline and tab like other control characters.
2758
2759 * editfns.c (Fmessage): Doc fix.
2760
2761 * indent.c (vmotion): When moving up, check the newline before.
2762 Make prevline an int, not a Lisp_Object.
2763
233f3db6
KS
27642004-10-27 Kim F. Storm <storm@cua.dk>
2765
2766 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
2767 Only allocate info and discarded tables once.
2768
2769 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
2770 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
2771 (SAFE_FREE): Test it to determine if we need to unwind to free.
2772 Remove size arg. All users changed.
2773 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
2774
1442465d
JD
27752004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2776
2777 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
2778 (xg_destroy_widgets): Rename from remove_from_container.
2779 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
2780 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
2781 instead of remove_from_container.
2782 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
2783 (free_frame_tool_bar): Add comment.
2784
2785 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
2786 is not NULL before strcmp.
2787
c8636435
KS
27882004-10-26 Kim F. Storm <storm@cua.dk>
2789
2790 * callint.c (Fcall_interactively): Add 'U' code to get the
2791 up-event discarded by a previous 'k' or 'K' argument.
2792
5629f29b
DK
27932004-10-26 David Kastrup <dak@gnu.org>
2794
2795 * buffer.c (syms_of_buffer): Fix a few typos.
2796
4f2f546e
JD
27972004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2798
2799 * xsmfns.c: Put empty line between comment and function body.
2800 Use two spaces before comment end.
2801
fc1062f5
KH
28022004-10-25 Kenichi Handa <handa@m17n.org>
2803
2804 * fontset.c (fontset_pattern_regexp): Optimize for the case that
2805 PATTERN is full XLFD.
2806
be13f5e5
KH
28072004-10-24 Kenichi Handa <handa@m17n.org>
2808
2809 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
2810
2811 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
2812 (regex_compile): Return REG_ERANGEX if appropriate.
2813
d0ee2ed3
KH
28142004-10-22 Kenichi Handa <handa@m17n.org>
2815
2816 * editfns.c (Ftranslate_region_internal): New function.
2817 (syms_of_editfns): Defsubr it.
2818
63ea8ea5
JD
28192004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2820
2821 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
2822
c27ed90a
JD
28232004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
2824
068f3848
SM
2825 * xterm.h (x_output): New member `xic_base_fontname'.
2826 (FRAME_XIC_BASE_FONTNAME): New macro.
2827 (xic_free_xfontset): Declare.
c27ed90a 2828
068f3848
SM
2829 * xfns.c (xic_create_xfontset): Share fontsets between frames
2830 based on base_fontname.
2831 (xic_free_xfontset): New function.
2832 (free_frame_xic): Use it.
2833 (xic_set_xfontset): Ditto.
c27ed90a 2834
068f3848 2835 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
2836
2837
59508699
JR
28382004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
2839
2840 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
2841
dede2792
JD
28422004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2843
3aca2078
JD
2844 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
2845 XSync.
2846
dede2792
JD
2847 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
2848 New variables and constant.
2849 (main): Calculate heap_bss_diff. If we are dumping and the
2850 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
2851 and exec ourself again.
2852 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
2853 print a warning.
2854
2855 * lastfile.c: Make my_endbss and my_endbss_static available on all
2856 platforms.
2857
2858 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
2859 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
2860
1dc5ba01
LT
28612004-10-19 Luc Teirlinck <teirllm@auburn.edu>
2862
2863 * data.c (Flocal_variable_if_set_p): Doc fix.
2864
950090be
JR
28652004-10-19 Jason Rumney <jasonr@gnu.org>
2866
2867 * w32.c (init_environment): Set emacs_dir correctly when running
2868 emacs from the build directory.
2869
8550b998
RS
28702004-10-19 Richard M. Stallman <rms@gnu.org>
2871
2872 * editfns.c (Fdelete_and_extract_region):
2873 If region is empty, return null string.
2874
08dedea6
JD
28752004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2876
1dc5ba01 2877 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 2878 and canon_width.
068f3848 2879 (xg_frame_cleared): Remove.
08dedea6 2880
068f3848
SM
2881 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
2882 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
2883 (xg_create_scroll_bar): Put an event box widget between
2884 the scroll bar widget and the edit widget.
2885 (xg_show_scroll_bar): Show the parent widget (the event box).
2886 (xg_remove_scroll_bar): Destroy parent (the event box) also.
2887 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
2888 Move the parent (the event box) widget inside the fixed widget.
2889 Move window clear to xterm.c.
2890
068f3848 2891 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 2892
08dedea6 2893 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
2894 (x_scroll_bar_create, XTset_vertical_scroll_bar):
2895 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
2896 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
2897
8550b998 28982004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
2899
2900 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 2901
84338890
JD
29022004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2903
2904 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
2905 gdk_window_clear and move gdk_window_process_all_updates after
2906 clear so events are sent to the X server in correct order.
2907
6e1b0d8c
KH
29082004-10-18 Kenichi Handa <handa@m17n.org>
2909
2910 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
2911 comparing font names.
8550b998 2912 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
2913 (list_fontsets): Likewise.
2914
2915 * search.c (fast_string_match_ignore_case): New function.
2916
2917 * lisp.h (fast_string_match_ignore_case): Extern it.
2918
345e75a8
KS
29192004-10-17 Kim F. Storm <storm@cua.dk>
2920
2921 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
2922 than bitmap if there is not left fringe.
2923 (get_overlay_arrow_glyph_row): Also used on windows system.
2924 (display_line): Display overlay string if no left fringe.
2925
be13cbb7
JR
29262004-10-16 Jason Rumney <jasonr@gnu.org>
2927
2928 * w32fns.c (w32_font_match): Encode font name being matched.
2929
c2e2ede7
RS
29302004-10-16 Richard M. Stallman <rms@gnu.org>
2931
2932 * window.c (Fspecial_display_p): Doc fix.
2933
043f7f73 29342004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
3584d95d
SM
2935
2936 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
2937 Don't ignore menus, because where-is-internal already does it for us.
2938
699a0392
KS
29392004-10-15 Kim F. Storm <storm@cua.dk>
2940
b3c7a89b
KS
2941 * xdisp.c (redisplay_window): Only update fringes and vertical
2942 border on window frames.
699a0392 2943
4e382b0f
AS
29442004-10-14 Andreas Schwab <schwab@suse.de>
2945
2946 * m/ia64.h (DATA_SEG_BITS): Don't define.
2947
329a7be2
KS
29482004-10-14 Kim F. Storm <storm@cua.dk>
2949
2950 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 2951 in some X versions.
329a7be2 2952
982241b1
SM
29532004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
2954
2955 * fns.c (map_char_table): Add missing gcpros.
2956
9238467d
SM
29572004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
2958
2959 * keymap.c (get_keymap): An autoload form is not a keymap.
2960
2961 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
2962
4440e3ca
KS
29632004-10-13 Kim F. Storm <storm@cua.dk>
2964
7cfdabde
KS
2965 * callproc.c (Fcall_process): Simplify handling of display arg.
2966 Resume `display_on_the_fly' once a coding system is determined.
2967
4440e3ca
KS
2968 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
2969
1c8dec6a
KS
29702004-10-12 Kim F. Storm <storm@cua.dk>
2971
2972 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
2973 caller, such as call-process, is not going to poll for input.
2974 (calc_line_height_property): Handle case where it->object is nil.
2975
2976 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
2977
170b174c
KH
29782004-10-12 Kenichi Handa <handa@m17n.org>
2979
9238467d
SM
2980 * xdisp.c (get_next_display_element):
2981 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
2982 chars in octal in unibyte buffer.
2983
b583964c
KS
29842004-10-12 Kim F. Storm <storm@cua.dk>
2985
2986 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
2987 are no ordinary bindings.
2988
29fabd8c
JD
29892004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2990
9238467d 2991 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 2992
c3f4c690
ST
29932004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2994
9238467d
SM
2995 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
2996 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 2997 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
2998 terminal frame.
2999 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
3000 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
3001 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
3002 Make a cancel file-open dialog be like C-g.
9238467d
SM
3003 * mac.c (mktime): Use emacs_mktime.
3004 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
3005 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 3006
9688f9eb
KS
30072004-10-10 Kim F. Storm <storm@cua.dk>
3008
3009 * keyboard.c (timer_resume_idle): New function to resume idle
3010 timer without resetting timers on the idle list.
3011 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
3012 (timer_start_idle, timer_stop_idle): Declare static.
3013 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
3014
3015 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
3016
f7f3a65f
ST
30172004-10-08 Steven Tamm <steventamm@mac.com>
3018
9238467d 3019 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 3020 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 3021 NULL where 0 should be used.
f7f3a65f
ST
3022 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
3023 objc/malloc.h
9238467d 3024 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 3025
3c7d999a
KS
30262004-10-07 Kim F. Storm <storm@cua.dk>
3027
3028 * xdisp.c (redisplay_window): Fix flicker on vertical line between
3029 windows. Update vertical line after drawing window fringes, but
3030 only if actually drawing any bitmaps--or there is no fringe.
3031
3032 * xterm.c (x_update_window_end): Likewise.
3033 * macterm.c (x_update_window_end): Likewise.
3034 * w32term.c (x_update_window_end): Likewise.
3035
3036 * fringe.c (draw_window_fringes): Return value now indicates if
3037 any fringe bitmaps were redrawn (or there are no fringes).
3038
3039 * dispextern.h (draw_window_fringes): Update prototype.
3040
bf06c82f
ST
30412004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3042
3043 * macfns.c (mac_get_window_bounds): Add extern.
3044 (x_real_positions): Use mac_get_window_bounds.
3045
3046 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
3047 xmenu.c (YAILOM).
3c7d999a 3048
bf06c82f
ST
3049 * macterm.c [!MAC_OSX]: Include Windows.h.
3050 (front_emacs_window): Rename from mac_front_window. All uses
3051 changed. Return the frontmost non-tooltip emacs window.
3052 (mac_get_window_bounds): New function.
3053 (x_calc_absolute_position): Use the difference of width and height
3054 between the inner and outer window.
3055 (x_set_offset): Specify window position by the coordinae of the
3056 outer window. Adjust the position if the title bar is completely
3057 outside the screen.
3058 (app_is_suspended, app_sleep_time): Remove unused variables.
3059 (do_app_resume, do_app_suspend): Remove their contents because
3060 window-activate/deactivate events will do the job.
3061 (do_zoom_window): Remove unused variables. Make compliant to the
3062 standard way of zooming. Set f->left_pos and f->top_pos.
3063 (XTread_socket): Don't use argument `expected'. Don't use
3064 FrontWindow to determine the clicked window. Exclude unprocessed
3065 mouseUp cases in the early stage. Add parentheses to fix operator
3066 precedence.
3067 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
3068
4cbbf6b7 30692004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
3070
3071 * config.in: Regenerate.
3072
3073 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
3074 HAVE_EXECSHIELD.
3075
b90ee8b5
JD
30762004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3077
3078 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
3079 a row if Alt or Meta has been found for that row. Also stop scanning
3080 for Keysyms for that row.
3081
904db1a2
KS
30822004-10-04 Kim F. Storm <storm@cua.dk>
3083
0207b8ad
KS
3084 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
3085 to list. Include overlay arrow bitmap in return value.
3086
25f7220c
KS
3087 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
3088 bars with fractional column width. If scroll bar separates two
3089 windows, move it towards the window it belongs to. Only update
3090 the padding area below the scroll bar widget when necessary,
3091 i.e. when scroll bar widget is created, moved, or resized.
3092
562020fe
KS
3093 * xdisp.c (define_frame_cursor1): Do not change frame cursor
3094 while tracking/dragging mouse.
3095 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
3096
37e34af7
KS
3097 * window.c (coordinates_in_window): Relax check for cursor
3098 on vertial border between mode lines.
3099 (Fset_window_fringes): Do not allow negative widths.
3100 (Fset_window_scroll_bars): Likewise.
3101
904db1a2
KS
3102 * .gdbinit (pp): Shorthand for p ARG + pr.
3103 (ff): New command: flush frame updates (X only).
3104
38fe4f64
MA
31052004-10-03 Michael Albinus <michael.albinus@gmx.de>
3106
3107 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
3108
9de36315
KH
31092004-09-30 Kenichi Handa <handa@m17n.org>
3110
07c381ad 3111 * process.c (send_process): Free composition data.
9de36315 3112
07c381ad 3113 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
3114
3115 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
3116 compositions to encode.
3117 (encode_coding_string): Likewise. Free composition data.
3118
b6189c3b 31192004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
3120
3121 * coding.c (code_convert_region): Free composition data.
9de36315 3122
f2a54fbc
KS
31232004-09-29 Kim F. Storm <storm@cua.dk>
3124
dc5d6435
KS
3125 * fringe.c: Remove limit on number of bitmaps.
3126 (fringe_bitmaps, fringe_faces): Change to pointers.
3127 (max_fringe_bitmaps): New var.
3128 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
3129 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
3130
3131 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
3132 (struct glyph_row): Reorder fringe_bitmap related fields.
3133 (struct it): Likewise.
3134
3135 * w32term.c (fringe_bmp): Change to pointer.
3136 (max_fringe_bmp): New var.
3137 (w32_define_fringe_bitmap): Expand fringe_bmp.
3138 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
3139 (w32_destroy_fringe_bitmap): Likewise.
3140
31412004-09-29 Kim F. Storm <storm@cua.dk>
3142
3143 * fringe.c: Simplify last change.
f2a54fbc
KS
3144 (lookup_fringe_bitmap): New function.
3145 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
3146 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
3147 Keep standard bitmaps in Vfringe_bitmaps.
3148 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
3149 (Fset_fringe_bitmap_face): Likewise.
3150
3151 * dispextern.h (lookup_fringe_bitmap): Add prototype.
3152 (valid_fringe_bitmap_p): Remove prototype.
3153
3154 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
3155
841a8bca
KS
31562004-09-29 Kim F. Storm <storm@cua.dk>
3157
1f2da365
KS
3158 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
3159 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
3160
841a8bca
KS
3161 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
3162
3163 * fringe.c (Vfringe_bitmaps): New variable.
3164 (syms_of_fringe): DEFVAR_LISP it.
3165 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
3166 Change arg to Lisp_Object and fail if not an integer.
3167 (get_fringe_bitmap_name, resolve_fringe_bitmap)
3168 (destroy_fringe_bitmap): New functions.
9238467d
SM
3169 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
3170 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
3171 clear its fringe property.
3172 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
3173 Fdestroy_fringe_bitmap.
3174 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
3175 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
3176 and set fringe property. Signal error if no free slots.
3177 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
3178 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
3179
3180 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
3181 symbols with a fringe property.
3182
4d965590
KS
31832004-09-27 Kim F. Storm <storm@cua.dk>
3184
3185 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
3186 Doc fix. Format may now be a symbol or alist, not a cons.
3187
3188 * fringe.c (update_window_fringes): Handle new formats of
3189 indicate-buffer-boundaries (symbol or alist). No longer
3190 allow a simple cons.
3191 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
3192
e888c2b3
JD
31932004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3194
9238467d 3195 * config.in: Rebuild.
e888c2b3 3196
83f1cb94
JD
31972004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3198
3199 * config.in: Rebuild.
3200
dd3b1d60 3201 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 3202
2c51754c
SM
32032004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
3204
3205 * xterm.c (x_term_init): Work around a bug in some X servers.
3206
3df5f8aa
RS
32072004-09-18 Richard M. Stallman <rms@gnu.org>
3208
557ca2c1
RS
3209 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
3210
3df5f8aa
RS
3211 * xdisp.c (try_window_reusing_current_matrix):
3212 Handle the case where we reach the old displayed text,
3213 out of sync with the old line boundary.
3214
9238467d 32152004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
3216
3217 * fileio.c (Finsert_file_contents): Fix case of replacement in a
3218 narrowed buffer.
3219
bfa02563
KS
32202004-09-14 Kim F. Storm <storm@cua.dk>
3221
a25fe164
KS
3222 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
3223
bfa02563
KS
3224 * xfaces.c (Qface_no_inherit): New var.
3225 (syms_of_xfaces): Intern and staticpro it.
3226 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
3227 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
3228 Don't increment face_change_count when face has non-nil
3229 face-no-inherit property.
3230
126f9c02
SM
32312004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
3232
892a8eb5
SM
3233 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
3234 (Fbyte_code): Remove dead code after `wrong_type_argument'.
3235
126f9c02 3236 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 3237 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 3238
c0ad3b38
KS
32392004-09-12 Kim F. Storm <storm@cua.dk>
3240
3241 * editfns.c (Fformat): Handle format strings with multiple text
3242 properties. Reverse text property list from the format string,
3243 so the positions are in increasing order.
3244
844fc085
JD
32452004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3246
3247 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
3248 x_uncatch_errors so that possible protocol errors are delivered.
3249
b106731c
EZ
32502004-09-10 Eli Zaretskii <eliz@gnu.org>
3251
21065c92
EZ
3252 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
3253 blockinput.h.
3254 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
3255 charset.h, and coding.h
9238467d 3256 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
3257 (term.o): Depend on window.h and keymap.h.
3258 (abbrev.o): Depend on syntax.h.
3259 (callint.o): Depend on keymap.h.
3260 (casefiddle.o): Depend on charset.h and keymap.h.
3261 (category.o): Depend on keymap.h.
3262 (coding.o): Depend on dispextern.h.
3263 (cmds.o): Depend on keyboard.h and keymap.h.
3264 (dispnew.o): Depend on indent.h and intervals.h.
3265 (doc.o): Depend on keymap.h.
3266 (editfns.o): Depend on frame.h.
3267 (emacs.o): Depend on dispextern.h.
3268 (fileio.o): Don't depend on ccl.h.
3269 (filelock.o): Depend on charset.h and coding.h.
3270 (frame.o): Depend on w32term.h and macterm.h.
3271 (insdel.o): Depend on region-cache.h.
3272 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
3273 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
3274 (search.o): Depend on $(INTERVALS_SRC).
3275 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
3276 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
3277 xterm.h, w32term.h, and macterm.h.
3278 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
3279 w32term.h, and macterm.h.
3280 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
3281 region-cache.h, xterm.h, w32term.h, and macterm.h.
3282 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
3283 (data.o): Depend on frame.h.
3284 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
3285 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
3286 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
3287 (intervals.o): Depend on keymap.h.
3288
9238467d
SM
3289 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
3290 Add debugging print-out to termscript.
b106731c 3291
64b7122d
RS
32922004-09-09 Richard M. Stallman <rms@gnu.org>
3293
3294 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
3295
5670531e
RS
32962004-09-08 Richard M. Stallman <rms@gnu.org>
3297
6cb4a892
RS
3298 * window.c (Fset_window_buffer): Doc fix.
3299
5670531e
RS
3300 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
3301
7e388eb7
JL
33022004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
3303
3304 * minibuf.c (history_delete_duplicates): New variable.
3305 (read_minibuf): Use it.
3306 (syms_of_minibuf): Create the corresponding lisp variable.
3307
370e3587
KS
33082004-09-08 Kim F. Storm <storm@cua.dk>
3309
3310 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
3311 overlay just before point.
3312
f844ba4e
LT
33132004-09-07 Luc Teirlinck <teirllm@auburn.edu>
3314
3315 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
3316 * buffer.c (reset_buffer, init_buffer_once):
3317 Handle auto_save_file_format field.
f844ba4e
LT
3318 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
3319 `buffer-auto-save-file-format'.
f844ba4e
LT
3320 * fileio.c: Delete declaration for removed Vauto_save_file_format.
3321 (build_annotations): Adapt to replacement of
3322 `auto-save-file-format' with the new buffer-local variable
3323 `buffer-auto-save-file-format'.
3324 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
3325
f0f90717
JR
33262004-09-07 Jason Rumney <jasonr@gnu.org>
3327
3328 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
3329
9238467d
SM
3330 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
3331 Handle Unicode menu titles.
f0f90717 3332
4e14f66c
KS
33332004-09-07 Kim F. Storm <storm@cua.dk>
3334
3335 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
3336 property from text property or overlay strings at point.
3337
9238467d 33382004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
3339
3340 * xmenu.c (update_submenu_strings): YAILOM.
3341 (set_frame_menubar): Make sure last_i is initialized.
3342
1f06d367
JR
33432004-09-03 Jason Rumney <jasonr@gnu.org>
3344
1806714a 3345 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
3346 (digest_single_submenu): Set lname and lkey in widget_value
3347 instead of name and key.
3348 (update_submenu_strings): New function.
3349 (set_frame_menubar): Remove call to inhibit_garbage_collection,
3350 call update_submenu_strings.
3351
3352 * w32menu.c (globals_of_w32menu): Check for Unicode API.
3353 (digest_single_submenu, w32_menu_show): Encode menu strings as
3354 UTF-8 if Unicode API is available.
3355 (utf8to16): New function.
3356 (add_menu_item): Use it when calling Unicode API.
1806714a 3357
46540080
KS
33582004-09-03 Kim F. Storm <storm@cua.dk>
3359
3360 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
3361 in overlay or text-property strings; set cursor on corresponding
3362 glyph rather than at end of the string.
3363
9277ba61 33642004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 3365
9277ba61 3366 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
3367 set a new one before obtaining the global coordinate.
3368 Use FRAME_MAC_WINDOW.
3369 (x_set_name, x_set_title): Encode title to UTF8.
3370 Use SetWindowTitleWithCFString.
9277ba61
ST
3371 (Fx_server_version): Get correct OS version.
3372
1806714a
SM
3373 * macmenu.c (add_menu_item): Remove unused variable `i'.
3374 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
3375
3376 * macterm.c (x_update_end): Move SetPortWindowPort to inside
3377 BLOCK_INPUT.
3378 (x_set_offset): Use FRAME_MAC_WINDOW.
3379
3380 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
3381 nontext_cursor if it is on a scroll bar.
3382
3383 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
3384 Carbon support.
1806714a
SM
3385 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
3386 Use LIBS_CARBON.
9277ba61 3387
b10daec7
JD
33882004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3389
3390 * xfns.c (x_set_name_internal): New function. Check if we shall call
3391 xfree before ENCODE_UTF_8.
3392 (x_set_name, x_set_title): Call x_set_name_internal.
3393
f7e22385
JR
33942004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
3395
3396 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
3397 reload it.
3398
2bf436c3
JD
33992004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3400
1806714a 3401 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
3402 (single_submenu): Set lname and lkey in widget_value
3403 instead of name and key.
3404 (update_submenu_strings): New function.
3405 (set_frame_menubar): Remove call to inhibit_garbage_collection,
3406 call update_submenu_strings.
3407
2bf436c3
JD
3408 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
3409 instead of name and key.
3410 (update_submenu_strings): New function.
3411 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 3412 call update_submenu_strings.
2bf436c3
JD
3413
3414 * gtkutil.h (_widget_value): Added lname and lkey.
3415
11715f92
ST
34162004-08-30 Steven Tamm <steventamm@mac.com>
3417
3418 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
3419 by using different names for inner loop variables.
3420
5500be54
JD
34212004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3422
059cd329
JD
3423 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
3424 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
3425
5500be54
JD
3426 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
3427 tool bar items is 0.
3428
383418e5
ST
34292004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3430
3431 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
3432 strings in menu items.
3433 (single_submenu): Use ENCODE_MENU_STRING
3434 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
3435 button release isn't passed to event loop
3436 (add_menu_item): Use SetMenuItemWithCFString
3437
6eb3ee72
ST
34382004-08-26 Steven Tamm <steventamm@mac.com>
3439
3440 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
3441 tool-bar/menu click
3442 * macfns.c (Fx_file_dialog): Implemented using NavServices
3443
10b43ac3
JD
34442004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3445
2728b5d0
JD
3446 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
3447
10b43ac3
JD
3448 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3449 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3450 (x_top_window_to_frame): Return 0 if wdesc is None.
3451
2ee3b79e
RS
34522004-08-22 Richard M. Stallman <rms@gnu.org>
3453
3454 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
3455 HAVE_TERMIOS]: If there's no char for this signal, drop through
3456 and use system calls.
3457
3458 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
3459
9a1ba2ea
KS
34602004-08-20 Kim F. Storm <storm@cua.dk>
3461
3462 * process.c (wait_reading_process_output): Rename from
3463 wait_reading_process_input. All uses changed.
3464 (wait_reading_process_output_1): Rename from
3465 wait_reading_process_input_1. All uses changed.
3466
3467 * dispnew.c (Fsleep_for): Remove obsolete code.
3468
295f3b30
KH
34692004-08-20 Kenichi Handa <handa@m17n.org>
3470
3471 * syntax.c (skip_chars): Fix for unibyte case.
3472
27615979
SM
34732004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
3474
3475 * syntax.c (char_quoted): Mixup byte/char pos.
3476 (back_comment): Fixup globals in all cases.
3477
00267f94
JD
34782004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3479
3480 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
3481 passing it to gtk_window_set_title.
3482
2439909e
KS
34832004-08-19 Kim F. Storm <storm@cua.dk>
3484
6ba0f14c
KS
3485 * process.c (wait_reading_process_input): Clean up.
3486 Add wait_for_cell, wait_proc, and just_wait_proc args
3487 to avoid overloading `read_kbd' and `do_display' args.
3488 Change read_kbd arg to int. All callers changed.
3489
2439909e
KS
3490 * process.c (process_send_signal): Use CDISABLE.
3491
3492 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
3493
101c421e
KS
34942004-08-18 Kim F. Storm <storm@cua.dk>
3495
3496 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
3497 forward to wait_reading_process_input via DO_DISPLAY arg.
3498 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
3499 object, only process output from that process; also inhibit
3500 running timers if DO_DISPLAY==-2.
3501
c438dc33
KS
35022004-08-17 Kim F. Storm <storm@cua.dk>
3503
3504 * process.c (process_send_signal): Fix last change--use
3505 _POSIX_VDISABLE instead of CVDISABLE when available.
3506
8afc13c6
RS
35072004-08-16 Richard M. Stallman <rms@gnu.org>
3508
3509 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
3510 Set VQUIT and VINTR chars to the standard ones if they are unset.
3511 [AIX]: Don't do that here. And don't force VINTR to standard
3512 when SIGNALS_VIA_CHARACTERS.
3513
c438dc33 3514 * process.c (process_send_signal)
8afc13c6
RS
3515 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
3516 Do nothing if the character is CVDISABLE.
3517
3518 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
3519
c438dc33 3520 * intervals.c (move_if_not_intangible):
8afc13c6
RS
3521 Force POSITION to be between BEGV and ZV.
3522
6dad1714
JPW
35232004-08-14 John Paul Wallington <jpw@gnu.org>
3524
3525 * buffer.c (Frestore_buffer_modified_p): Doc fix.
3526
3527 * fileio.c (Fread_file_name): Doc fix.
3528
3529 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
3530
2bd77330
LT
35312004-08-09 Luc Teirlinck <teirllm@auburn.edu>
3532
3533 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
3534
c90e7e43
LT
35352004-08-08 Luc Teirlinck <teirllm@auburn.edu>
3536
3537 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 3538 Qdisabled_command_hook.
c90e7e43 3539 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 3540 Qdisabled_command_hook.
c90e7e43
LT
3541 (syms_of_keyboard): Ditto.
3542
81909a1a
LT
35432004-08-07 Luc Teirlinck <teirllm@auburn.edu>
3544
3545 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
3546 (syms_of_keymap) <key-translation-map>: Doc fixes.
3547
0cedd530
SM
35482004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
3549
1725a7c9
SM
3550 * window.c (window_list_1): YAILOM.
3551
0cedd530
SM
3552 * fileio.c (make_temp_name): Handle multibyte prefixes.
3553
2515a131
LT
35542004-08-06 Luc Teirlinck <teirllm@auburn.edu>
3555
3556 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
3557 Doc fix.
3558
c8b20fb7
KH
35592004-08-03 Kenichi Handa <handa@m17n.org>
3560
3561 * coding.c (decode_coding_string): Adjust coding->consumed, and
3562 etc. with shrinked_bytes.
3563
fb8b092b
KS
35642004-08-03 Kim F. Storm <storm@cua.dk>
3565
3566 * indent.c (compute_motion): Fix check for full width window
3567 in non-window case. Do not count left truncation glyph on
3568 window systems.
3569
df133612
LT
35702004-08-02 Luc Teirlinck <teirllm@auburn.edu>
3571
3572 * data.c (Finteractive_form): Doc fix.
3573
0f7a93c1
KS
35742004-08-02 Kim F. Storm <storm@cua.dk>
3575
3576 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
3577 properly accounting for continuation glyph on non-window systems.
3578 (Fcompute_motion): Use actual window width if WIDTH is nil, and
3579 actual window width/height if TOPOS is nil, properly accounting for
3580 continuation glyphs on non-window systems, and optional header lines.
3581 (vmotion): Let compute_motion calculate actual window width.
3582
3583 * window.c (window_scroll_line_based): Let compute_motion
3584 calculate actual window width.
3585
f491e1ed
KS
35862004-08-02 Kim F. Storm <storm@cua.dk>
3587
3588 * process.c (read_process_output): Use whole read buffer.
3589 Don't trigger adaptive read buffering on errors.
3590
83f64226
LT
35912004-07-31 Luc Teirlinck <teirllm@auburn.edu>
3592
3593 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
3594
3595 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
3596
3597 * callint.c (Fcall_interactively): Doc fix.
3598
8afc13c6
RS
35992004-07-30 Richard M. Stallman <rms@gnu.org>
3600
3601 * abbrev.c (Fexpand_abbrev): Undo previous change.
3602
7c111482
KS
36032004-07-30 Kim F. Storm <storm@cua.dk>
3604
3605 * editfns.c (Fformat): Allocate extra (dummy) element in info.
3606
ee945d08
LT
36072004-07-28 Luc Teirlinck <teirllm@auburn.edu>
3608
3609 * eval.c (Fdefvar, Fdefconst): Doc fixes.
3610
3f911c94
KS
36112004-07-27 Kim F. Storm <storm@cua.dk>
3612
3613 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
3614 we have ensured that the glyph fits on the current line (or returned
3615 MOVE_LINE_CONTINUED otherwise).
3616
f29ff8c7
KS
36172004-07-26 Kim F. Storm <storm@cua.dk>
3618
3619 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
3620 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
3621 if target position is at end of display line but char is not a newline.
3622
81159bb9
RS
36232004-07-25 Richard M. Stallman <rms@gnu.org>
3624
ab431b61
RS
3625 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
3626 instead of ON_VERTICAL_BORDER, when on scroll bar.
3627 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
3628
3629 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
3630
f29ff8c7 3631 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
3632 Take account of FRAME_INTERNAL_BORDER_WIDTH.
3633
3634 * alloc.c (check_cons_list): New function (contents commented out).
3635
fc820cc5
LT
36362004-07-24 Luc Teirlinck <teirllm@auburn.edu>
3637
3638 * xfaces.c (Fcolor_supported_p): Doc fix.
3639
3640 * frame.c (Fselect_frame, Fset_frame_selected_window)
3641 (Fframe_visible_p, Fraise_frame): Doc fixes.
3642
289978b5
LT
36432004-07-24 Richard M. Stallman <rms@gnu.org>
3644
78819ebb 3645 * keyboard.h (not_single_kboard_state): Declare.
7630911d
RS
3646
3647 * fileio.c (Fwrite_region): Doc fix.
3648
3649 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
3650
3651 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
3652 only when a real abbrev is present.
3653
289978b5
LT
3654 * xfns.c (x_icon_verify): New function.
3655 (Fx_create_frame): Use it.
3656
63cc10ae
KS
36572004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
3658
3659 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
3660
36f826d4
KS
36612004-07-21 Kim F. Storm <storm@cua.dk>
3662
3663 * window.h (struct glyph_matrix): New members nrows_scale_factor
3664 and ncols_scale_factor.
3665
3666 * window.c (make_window): Initialize nrows_scale_factor and
3667 ncols_scale_factor members.
3668
3669 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
3670 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
3671 (required_matrix_height): Apply nrows_scale_factor.
3672 (required_matrix_width): Apply ncols_scale_factor.
3673
3674 * xdisp.c (display_line): Increment nrows_scale_factor and set
3675 fonts_changed_p if past last allocated row.
3676 (append_glyph, append_composite_glyph, produce_image_glyph)
3677 (append_stretch_glyph): Increment ncols_scale_factor and set
3678 fonts_changed_p if current area is full.
3679
5fc1c546
JD
36802004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3681
3682 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
3683
cb7516e5
LT
36842004-07-19 Luc Teirlinck <teirllm@auburn.edu>
3685
3686 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
3687 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
3688 (Fset_window_start, Fscroll_up, Fscroll_down)
3689 (Fother_window_for_scrolling, Fscroll_other_window)
3690 (Fsave_window_excursion, Fset_window_vscroll)
3691 (syms_of_window) <window-size-fixed>: Doc fixes.
3692
b6189c3b 36932004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
3694
3695 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
3696 ENCODE_SYSTEM for filenames.
3697
bfcf6608
ST
36982004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3699
3700 * mac.c (sys_select): Block input around call to
3701 ReceiveNextEvent to prevent breakage. Correctly handle
3702 blocking on event queue only by calling ReceiveNextEvent
3703 instead of select (since GUI events aren't on an fd).
3704 (sys_read): Remove function
3705 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
3706
e082ac9d
ST
37072004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3708
3709 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 3710 polling instead of 1 sec timeouts (like solaris).
e082ac9d 3711
cb7516e5 3712 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
3713 frame creation.
3714
3715 * keyboard.c: Undef SIGIO on Carbon
3716
3717 * atimer.c (alarm_signal_handler): Call alarm handlers after
3718 scheduling.
3719
3720 * eval.c (Feval): Remove quit_char test
3721
3722 * process.c (wait_reading_process_input): Remove clearing
3723 stdin for select call on process input.
3724
4b9da0fb
LT
37252004-07-18 Luc Teirlinck <teirllm@auburn.edu>
3726
1204e81c
LT
3727 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
3728 capitalization error in docstring.
4b9da0fb 3729
26503ad2
JB
37302004-07-17 Juanma Barranquero <lektu@terra.es>
3731
3732 * keyboard.c (not_single_kboard_state): Do nothing unless
3733 MULTI_KBOARD is defined.
3734
3751eb00
RS
37352004-07-17 Richard M. Stallman <rms@gnu.org>
3736
3737 * window.c (coordinates_in_window): Inside the window but outside
3738 its box to the L or R, return ON_VERTICAL_BORDER.
3739 (window_list_1): Rotate the list to start with WINDOW.
3740
3741 * print.c (print_preprocess): Test for print_depth at limit
3742 before entering in being_printed.
3743
3744 * keyboard.c (not_single_kboard_state): New function.
3745 (stuff_buffered_input): Now no-op only if no SIGTSTP.
3746
3747 * frame.c (Fdelete_frame): If we're in single_bboard_state on
3748 this kboard, and we delete its last frame, go to any_kboard_state.
3749
3750 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
3751
b6189c3b 37522004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
3753
3754 * w32fns.c (Fx_file_dialog): Encode strings in system coding
3755 system before passing them to OS functions for display.
3756
0f6af254
DK
37572004-07-15 David Kastrup <dak@gnu.org>
3758
f9253326
KS
3759 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
3760 Apparently fixes an abort condition.
0f6af254 3761
386c8f42
LT
37622004-07-14 Luc Teirlinck <teirllm@auburn.edu>
3763
3764 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
3765 instead of a cons.
3766
366511da
MB
37672004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
3768
3769 * keyboard.c (echo_dash): Do nothing if there already is a dash
3770 at the end of the echo string.
3771
f85409d3
KS
37722004-07-12 Kim F. Storm <storm@cua.dk>
3773
3774 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
3775 if GC_MARK_STACK.
3776
0ba2e87b
LT
37772004-07-10 Luc Teirlinck <teirllm@auburn.edu>
3778
da38045d
LT
3779 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
3780
0ba2e87b
LT
3781 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
3782 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
3783 (Freplace_buffer_in_windows, Fset_window_buffer)
3784 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
3785 (syms_of_window): Expand docstring of `display-buffer-function'.
3786
5668fbb8
LT
37872004-07-09 Luc Teirlinck <teirllm@auburn.edu>
3788
3789 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
3790 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
3791 that time values of the type (HIGH . LOW) are considered obsolete.
3792
a085bf9d
LT
37932004-07-06 Luc Teirlinck <teirllm@auburn.edu>
3794
669de2fb
LT
3795 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
3796 docstring.
3797
bac66325 3798 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 3799
8e975df9
JPW
38002004-07-06 John Paul Wallington <jpw@gnu.org>
3801
3802 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
3803
fa164e6a
JPW
3804 * fns.c (Fclear_string): Signal an error if STRING is not a string.
3805
2bac9bb1
JD
38062004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3807
3808 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
3809 instead of CGMainDisplayID (only in OSX 10.2 and later).
3810
316ef0dc
JPW
38112004-07-04 John Paul Wallington <jpw@gnu.org>
3812
3813 * fileio.c (read_file_name_completion_ignore_case): New variable.
3814 (syms_of_fileio): Declare and initialise it.
3815 (Fread_file_name): Bind `completion-ignore-case' to respect it.
3816
2a1a35c6
EZ
38172004-07-03 Eli Zaretskii <eliz@gnu.org>
3818
3819 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
3820 for event.x and event.y.
3821
33a72331
KH
38222004-07-01 Kenichi Handa <handa@m17n.org>
3823
3824 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
3825 after getting a new string by pre-write-conversion.
3826
9238467d 38272004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
3828
3829 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
3830 (x_calc_absolute_position): Remove unused var `child'.
3831
3832 * xfaces.c (x_supports_face_attributes_p)
3833 (Fdisplay_supports_face_attributes_p): YAILOM.
3834 (tty_supports_face_attributes_p): Remove unused var `i'.
3835
3836 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
3837 back_unibyte_ok.
3838
3839 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
3840
3841 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
3842
3843 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
3844
f96ec754
AS
38452004-06-30 Andreas Schwab <schwab@suse.de>
3846
3847 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
3848 (Finit_image_library): Pass LIBRARIES through to
3849 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
3850 (lookup_image_type): Pass Qnil as second argument to
3851 Finit_image_library.
3852
78819ebb 3853 * lisp.h (Finit_image_library): Declare.
f96ec754 3854
59feca74 38552004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 3856
31983645
AS
3857 * macterm.c (do_window_activate, do_window_deactivate): Remove.
3858 (XTread_socket): Send mouse button events to the toolbox
3859 dispatcher even when the mouse is grabbed. Don't process window
3860 activate events for non-Emacs windows. Replace function calls to
3861 do_window_activate and do_window_deactivate with their contents.
3862 Reset mouse grabbing status when a window is deactivated.
59feca74 3863
c61278bb
ST
38642004-06-29 Steven Tamm <steventamm@mac.com>
3865
3866 * macterm.c (mac_get_emulated_btn)
3867 (mac_event_to_emacs_modifiers): Fix emulated mouse button
3868 support to correctly mask out modifiers.
3869
c3762cbd
DK
38702004-06-29 David Kastrup <dak@gnu.org>
3871
3872 * search.c (Fset_match_data): Allow buffer before end of list
3873 which can happen if set-match-data is using a pre-consed list.
3874
c61278bb 38752004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
3876
3877 * macterm.c (XTread_socket): Correctly set the frame position
3878 after the window is moved.
3879
74cdfe05
JD
38802004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3881
3882 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
3883 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
3884 (xg_get_image_for_pixmap): Add workaround for monochrome displays
3885 so insensitive and activated icons look ok.
74cdfe05 3886
ef544dc8
JR
38872004-06-27 Jason Rumney <jasonr@gnu.org>
3888
3889 * w32fns.c (file_dialog_callback): Disable edit control if set
3890 to directories only on CDN_INITDONE message.
3891 (Fx_file_dialog): Default to directories only when prompt starts
3892 with "Dired".
3893
7b7990cc
KS
38942004-06-25 Kim F. Storm <storm@cua.dk>
3895
3896 * alloc.c (allocate_misc): Update total_free_markers.
3897 (free_misc): New function.
3898 (safe_alloca_unwind, free_marker): Use it.
3899
3900 * lisp.h (free_misc): Add prototype.
3901
3902 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
3903
d8c379f8
RS
39042004-06-24 Richard M. Stallman <rms@gnu.org>
3905
3906 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
3907 (syms_of_emacs): Lisp variables deleted.
3908
559cdd07
DK
39092004-06-23 David Kastrup <dak@gnu.org>
3910
94939b84
DK
3911 * search.c (Freplace_match): Adjust the match-data more thoroughly
3912 when replacing strings in the buffer.
3913 (Fmatch_data): When INTEGERS is non-nil and the last match was in
3914 a buffer, add the buffer as last element to the match data.
3915 (Fset_match_data): If an additional element of the match-data is a
3916 buffer, restore it to last_thing_searched.
c8d09ad8 3917 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
3918 (restore_match_data): Restore it again.
3919
dce417e7
LT
39202004-06-23 Luc Teirlinck <teirllm@auburn.edu>
3921
3922 * keymap.c (Ftext_char_description): Doc fix.
3923 * doc.c (Fsnarf_documentation): Doc fix.
3924
ef54b2d0
KS
39252004-06-22 Kim F. Storm <storm@cua.dk>
3926
b5bc4d05
KS
3927 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
3928
ef54b2d0
KS
3929 * lisp.h (struct Lisp_Save_Value): New member dogc.
3930 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
3931 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
3932 (SAFE_FREE_LISP): New macro.
3933
3934 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
3935 (make_save_value): Init new dogc member.
3936 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
3937
3938 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
3939 SAFE_FREE_LISP macros.
3940
3d33d993
KS
39412004-06-22 Kim F. Storm <storm@cua.dk>
3942
3943 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
3944 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
3945 in that memory area are unknown to GC. Add comments.
3946
3947 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
3948
5c917f98
KS
39492004-06-21 Kim F. Storm <storm@cua.dk>
3950
3951 * lisp.h (MAX_ALLOCA): Define here.
3952 (safe_alloca_unwind): Add prototype.
3953 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
3954
3955 * alloc.c (safe_alloca_unwind): New function.
3956
3957 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
3958
3959 * charset.c (Fstring): Use SAFE_ALLOCA.
3960
3961 * coding.c (MAX_ALLOCA): Remove define.
3962
3963 * data.c (MAX_ALLOCA): Remove define.
3964 (Faset): Use SAFE_ALLOCA.
3965
3966 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
3967
3968 * fns.c (string_make_multibyte, string_to_multibyte)
3969 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
3970 (MAX_ALLOCA): Remove define.
3971 (Fbase64_encode_region, Fbase64_encode_string)
3972 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
3973 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
3974 memory leak if encoding fails.
3975
3976 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
3977
9a09408e
EZ
39782004-06-21 Eli Zaretskii <eliz@gnu.org>
3979
3980 * print.c (Fwith_output_to_temp_buffer): Doc fix.
3981
376de739
RS
39822004-06-20 Richard M. Stallman <rms@gnu.org>
3983
3984 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
3985
3986 * search.c (match_limit): Cleaner err msg when no match data available.
3987
3988 * window.c (syms_of_window): Doc fix.
3989
3990 * keyboard.c (command_loop_1): Handle values `only' and `identity'
3991 for Vtransient_mark_mode.
3992
3993 * buffer.c (syms_of_buffer): Doc fix.
3994
acd81db9
DK
39952004-06-21 David Kastrup <dak@gnu.org>
3996
3997 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
3998 and unbinding of `case-fold-search' according to
3999 `completion-ignore-case' around calls of string-match and
4000 predicates, respectively. Should give satisfactory performance
4001 in all relevant cases.
4002
f303762d
JD
40032004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4004
95911c74
JD
4005 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
4006 clip_x/y_origin.
4007
a6cb6b78
JD
4008 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
4009
f303762d
JD
4010 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
4011
4012 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
4013 on Mac OSX.
4014
bbdb2684
LT
40152004-06-16 Luc Teirlinck <teirllm@auburn.edu>
4016
4017 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
4018
5ea48b1c
KS
40192004-06-16 Kim F. Storm <storm@cua.dk>
4020
4021 * dispextern.h (Vimage_types): Remove extern.
4022
803aac3e
MB
40232004-06-16 Miles Bader <miles@gnu.org>
4024
4025 * image.c (lookup_image_type): Initialize image type if necessary.
4026
cdc97764
KS
40272004-06-15 Kim F. Storm <storm@cua.dk>
4028
c4a5739c
KS
4029 * xdisp.c (try_cursor_movement): Exclude header line from scroll
4030 margin at top of window.
4031 (try_window_reusing_current_matrix): Calculate proper cursor position
4032 after scrolling up with non-zero scroll margin, as the old cursor
4033 position corresponds to value of PT before executing this command.
4034 (try_window_id): Consider scroll margin at bottom of window too;
4035 otherwise we fail to scroll when hl-line-mode is enabled.
4036
cdc97764
KS
4037 * syntax.c (skip_chars): Only recognize [:class:] when it has the
4038 proper format and class is a lower-case word.
4039
5b166323
JD
40402004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4041
4042 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 4043 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
4044 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
4045 xg_get_gdk_pixmap_and_mask.
cdc97764 4046
5b166323
JD
4047 * xterm.h (struct x_display_info): Typo in comment fixed.
4048
1ebd4f78
JB
40492004-06-14 Juanma Barranquero <lektu@terra.es>
4050
4051 * dispextern.h (Vimage_types): Make it conditional on
4052 HAVE_WINDOW_SYSTEM.
4053
4054 * image.c (Vimage_types): Move from xdisp.c.
4055 (Vimage_type_cache): New variable.
4056 (define_image_type): New argument indicating whether an image
4057 library was loaded; cache loaded status and return t on success,
4058 nil otherwise.
4059 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
4060 (w32_delayed_load): New function to load an image library from a
4061 list of possible filenames.
4062 (init_xpm_functions, init_png_functions, init_jpeg_functions)
4063 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 4064 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
4065 (Finit_image_library): New function, extracted from `init_image'.
4066 Try to initialize an image library on demand and cache whether we
4067 were successful or not.
4068 (syms_of_image): Initialize `Vimage_types' and
4069 `Vimage_type_cache'. Add recognized image types to Vimage_types.
4070 Export `init-image-library'.
4071 (init_image): Remove initialization of all image types, except xbm
4072 and pbm.
4073
4074 * xdisp.c (Vimage_types): Delete (moved to image.c).
4075
904ee128
AS
40762004-06-14 Andreas Schwab <schwab@suse.de>
4077
4078 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
4079 Avoid calling specbind when completion-regexp-list is empty.
4080
092de21d
RS
40812004-06-13 Richard M. Stallman <rms@gnu.org>
4082
4083 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
4084 (re_wctype, re_iswctype, re_wctype_to_bit):
4085 Non-function definitions moved here from regex.c.
1ebd4f78 4086
092de21d
RS
4087 * regex.c (re_wctype, re_iswctype): Function defs longer static.
4088 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
4089 (re_wctype, re_iswctype, re_wctype_to_bit):
4090 Non-function definitions moved to regex.h.
4091
4092 * window.c (Fselect_window): Doc fix.
4093
4094 * syntax.c: Include regex.h.
4095 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
4096 If requested, make a list of classes, then check the scanned
4097 chars for membership in them.
4098 (in_classes): New function.
4099 Doc fix.
4100
4101 * keyboard.c (cmd_error): Don't call any_kboard_state
4102 if inside a recursive edit level.
4103
41042004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
4105
4106 * keyboard.c (command_loop): Call any_kboard_state before
4107 command_loop_2 when at top level.
4108
3ebc0939
AS
41092004-06-13 Andreas Schwab <schwab@suse.de>
4110
cea5d0d4
AS
4111 * print.c (print_object): Always use %ld for printing EMACS_INT.
4112
4113 * keyboard.c (cancel_hourglass_unwind): Return a value.
4114 (modify_event_symbol): Always use %ld for printing EMACS_INT.
4115 (Fexecute_extended_command): Likewise.
4116
4117 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
4118 avoid clashes.
4119 (SYNTAX): Likewise.
4120 (SYNTAX_WITH_FLAGS): Likewise.
4121 (SYNTAX_MATCH): Likewise.
4122
4123 * syntax.c (char_quoted): Avoid warning about undefined operation.
4124 (find_defun_start): Likewise.
4125 (scan_lists): Likewise.
4126 (INC_FROM): Likewise.
4127 (scan_sexps_forward): Likewise.
4128
be8c4ce4
AS
4129 * image.c: Include <ctype.h>.
4130
3ebc0939
AS
4131 * xfaces.c (face_attr_equal_p): Declare parameters.
4132
6fb41b5b
KH
41332004-06-13 Kenichi Handa <handa@m17n.org>
4134
4135 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
4136
fc3095ce
EZ
41372004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
4138
4139 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
4140
66189a40
KH
41412004-06-12 Kenichi Handa <handa@m17n.org>
4142
4143 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
4144 ccl_prog_stack_struct and update it.
4145 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
4146 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
4147 ccl->eof_ic on EOF.
4148 (ccl_debug_hook): New function.
4149 (struct ccl_prog_stack): New member eof_ic.
4150 (ccl_driver): Handle EOF in subrountine call correctly.
4151
41522004-06-11 Kenichi Handa <handa@m17n.org>
4153
4154 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
4155
1da71023
KS
41562004-06-11 Kim F. Storm <storm@cua.dk>
4157
4158 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
4159
e9efcef4
JB
41602004-06-11 Juanma Barranquero <lektu@terra.es>
4161
4162 * keyboard.c (Fposn_at_point): Doc fix.
4163
9b9ceb61
DK
41642004-06-11 David Kastrup <dak@gnu.org>
4165
4166 * search.c (match_limit): Don't flag an error if match-data
4167 exceeding the allocated search_regs.num_regs gets requested, just
4168 return Qnil.
4169
6e87ac8f
MB
41702004-06-08 Miles Bader <miles@gnu.org>
4171
4172 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
4173
0b0dea7b
JB
41742004-06-07 Juanma Barranquero <lektu@terra.es>
4175
4176 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
4177 (Fcurrent_time_string, Fcurrent_time_zone)
4178 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
4179
a0a23346
MB
41802004-06-07 Miles Bader <miles@gnu.org>
4181
08384afd 4182 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
4183 (push_named_merge_point): New function.
4184 (merge_named_face): New function.
4185 (merge_face_ref, face_at_buffer_position, face_at_string_position):
4186 Use `merge_named_face'.
4187 (merge_face_inheritance): Function removed.
c8d09ad8 4188 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
4189 Add new `err_msgs' and `named_merge_points' args. Return error
4190 status. Only print error messages if ERR_MSGS is true. Don't try to
4191 do :inherit attribute validation.
4192 (merge_face_heights): Handle `unspecified' in both directions.
4193 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
4194 Call `merge_face_ref' instead of `merge_face_inheritance'.
4195 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
4196 (compute_char_face, face_at_buffer_position)
4197 (face_at_string_position): Call `merge_face_ref' instead of
4198 `merge_face_vector_with_property'.
4199
12d5b185
KH
42002004-06-07 Kenichi Handa <handa@m17n.org>
4201
4202 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
4203 the necessary places.
4204
2e2d7ee6
KS
42052004-06-07 Kim F. Storm <storm@cua.dk>
4206
4207 * process.c (Fdelete_process): Undo 2004-05-28 change.
4208 Instead, call status_notify also for network process.
4209 (status_message): Use process instead of status as arg.
4210 Give messages "deleted" or "connection broken by remote peer" for
4211 an exited network process.
4212 (status_notify): Change call to status_message.
4213 (read_process_output): Increase readmax to 4096. Do not increase
4214 buffer size for datagram channels (default is now large enough).
4215
fcf0d299
ST
42162004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
4217
4218 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
4219 problem due to newly defined variable.
4220
0722292b
MB
42212004-06-06 Miles Bader <miles@gnu.org>
4222
4223 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
4224 immediately if non-interactive or not initialized.
4225
ddfb8369
RS
42262004-06-05 Richard M. Stallman <rms@gnu.org>
4227
4228 * minibuf.c (Fcompleting_read): Doc fix.
4229
57015754
AS
42302004-06-05 Andreas Schwab <schwab@suse.de>
4231
4232 * macfns.c (x_create_tip_frame): Fix declaration after statement.
4233
23715ea6
JB
42342004-06-05 Juanma Barranquero <lektu@terra.es>
4235
4236 * keymap.c (Fdescribe_vector): Fix docstring.
4237 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
4238
8e330b22
MB
42392004-06-05 Miles Bader <miles@gnu.org>
4240
4241 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
4242 attributes have different values than the default face.
4243
9742a3a6
EZ
42442004-06-04 Eli Zaretskii <eliz@gnu.org>
4245
4246 * xfaces.c (x_supports_face_attributes_p): Make this function
4247 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
4248 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
4249 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 4250
9717e36c
MB
42512004-06-04 Miles Bader <miles@gnu.org>
4252
4253 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
4254 from Ftty_supports_face_attributes_p.
4255 (x_supports_face_attributes_p): New function.
4256 (Ftty_supports_face_attributes_p): Function deleted.
4257 (Fdisplay_supports_face_attributes_p): New function.
4258 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 4259 (face_attr_equal_p): New function.
9717e36c
MB
4260 (lface_equal_p): Use it.
4261
52deb19f
JB
42622004-06-03 Juanma Barranquero <lektu@terra.es>
4263
4264 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
4265 (Vw32_color_map): Fix typo in docstring.
4266 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
4267 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
4268 Make argument names match their use in docstring.
4269
86d373e6
JB
42702004-06-02 Juanma Barranquero <lektu@terra.es>
4271
4272 Work around bugs/problems with MinGW builds of graphics libraries
4273 called from MSVC builds of Emacs.
4274
4275 * image.c (lookup_image): Make pointer to img static.
4276 (png_read_from_memory): Disable "global" optimization.
4277
2fb0ce67
SM
42782004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
4279
c8d09ad8
SM
4280 * eval.c (Fcondition_case): Fix usage. Simplify.
4281
2fb0ce67
SM
4282 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
4283
50bf7673
ST
42842004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4285
4286 * macfns.c: Don't include ccl.h.
4287 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
4288 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
4289 TextUtils.h.
c8d09ad8 4290 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
4291 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
4292 display height/width.
4293 (compute_tip_xy, Vx_max_tooltip_size): Declare.
4294 (unwind_create_tip_frame, compute_tip_xy): New functions.
4295 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
4296 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
4297 and last_show_tip_args.
2fb0ce67 4298
50bf7673
ST
4299 * macgui.h [!MAC_OSX]: Include Gestalt.h.
4300 (Cursor, No_Cursor): New defines.
c8d09ad8 4301 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
4302 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
4303
4304 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
4305
4306 * macterm.c: Don't include Gestalt.h.
4307 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
4308 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
4309 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
4310 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
4311 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
4312 (construct_mouse_click, XTmouse_position)
4313 (x_scroll_bar_report_motion, x_calc_absolute_position)
4314 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
4315 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
4316 (note_mouse_movement): Clear the mouse face and reset the pointer
4317 shape when the pointer goes outside the frame without grabbing.
4318 (mac_front_window): New function.
4319 (mac_window_to_frame): New macro.
4320 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
4321 (do_window_activate, do_window_deactivate, do_app_resume)
4322 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
4323 (do_zoom_window, mac_do_receive_drag, XTread_socket)
4324 (mac_check_for_quit_char): Use mac_front_window and/or
4325 mac_window_to_frame.
4326 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
4327 scroll-bar click event.
4328 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 4329 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 4330 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 4331 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
4332 (do_window_update): Don't do anything if the updated window is the
4333 tooltip window.
4334 (do_mouse_moved): Handle mouse movement events here (previously in
4335 XTread_socket). Clear the mouse face if
4336 dpyinfo->mouse_face_hidden is set.
4337 (do_os_event, do_events): Remove (now in XTread_socket).
4338 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
4339 Loop until all the events in the queue are processed.
4340 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
4341 contents of do_os_event and do_events. Remove mouse movement
4342 handling (now in do_mouse_moved). Add the case where
4343 Vmouse_highlight has an integer value.
4344 (NewMacWindow): Remove.
4345 (make_mac_frame): Do what NewMacWindow previously did. Don't do
4346 excess initializations.
4347 (make_mac_terminal_frame): Previous initializations in
4348 make_mac_frame are moved here.
c8d09ad8
SM
4349 (mac_initialize_display_info):
4350 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
4351
4352 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
4353 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
4354
08fd1251
RS
43552004-05-29 Richard M. Stallman <rms@gnu.org>
4356
4357 * lisp.h (truncate_undo_list): Update decl.
4358
4359 * alloc.c (undo_outer_limit): New variable.
4360 (syms_of_alloc): Defvar it.
4361 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
4362
4363 * undo.c (truncate_undo_list): New arg LIMITSIZE.
4364
4365 * alloc.c (lisp_align_malloc): Check for base == 0
4366 regardless of HAVE_POSIX_MEMALIGN.
4367 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
4368
227ef0ff
SM
43692004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
4370
4371 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
4372 (marker_blocks_pending_free): Remove.
4373 (Fgarbage_collect): Sweep after cleaning up undo-lists.
4374 Mark the undo lists after claning them up.
4375 Don't free block in marker_blocks_pending_free.
4376 (mark_buffer): Don't mark undo_list.
4377 (gc_sweep): Sweep hash-tables and strings first.
4378 Do free marker blocks that are empty.
4379
034a6113
SM
43802004-05-28 Jim Blandy <jimb@redhat.com>
4381
4382 * regex.c (print_partial_compiled_pattern): Add missing 'break'
4383 after 'case wordend'. For symbeg and symend, print to stderr,
4384 like the other cases.
4385
33594a8d
NF
43862004-05-28 Noah Friedman <friedman@splode.com>
4387
4388 * process.c (Fdelete_process): Do not call remove_process.
4389
ce50a847
SM
43902004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
4391
4392 * alloc.c (struct backtrace): Remove.
4393 (Fgarbage_collect): Use the new mark_backtrace.
4394
4395 * eval.c (mark_backtrace): New function.
4396
4397 * minibuf.c (run_exit_minibuf_hook): New function.
4398 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
4399 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
4400
1e8dae36
KS
44012004-05-27 Kim F. Storm <storm@cua.dk>
4402
4403 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
4404 over display properties, e.g. images, that replace buffer text.
4405
846faa3b
KS
44062004-05-25 Kim F. Storm <storm@cua.dk>
4407
4408 * alloc.c (marker_blocks_pending_free): New var.
4409 (gc_sweep): Store free marker blocks on that list.
4410 (Fgarbage_collect): Free them after undo-list cleanup.
4411
4412 * process.c (wait_reading_process_input): Check connect_wait_mask
4413 before actually accepting connection in case it has already been
4414 accepted due to recursion.
4415
b6189c3b 44162004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 4417
ce50a847
SM
4418 * coding.c (Fset_safe_terminal_coding_system_internal):
4419 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 4420
71d5a208
RS
44212004-05-22 Richard M. Stallman <rms@gnu.org>
4422
4423 * alloc.c (Fmake_string): Doc fix.
4424
4425 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
4426 and the alist pairs too.
4427
4428 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
4429
4430 * emacs.c (main): Update copyright year.
4431
4432 * fileio.c (Fread_file_name): Expand DIR if not absolute.
4433
4434 * insdel.c (del_range_2, replace_range): Don't write an anchor
4435 if the gap is empty.
4436
4437 * xdisp.c (try_scrolling): If scroll-up-aggressively or
4438 scroll-down-aggressively is small but positive, put point
4439 near the screen edge.
4440
f63fd14e
JB
44412004-05-22 Juanma Barranquero <lektu@terra.es>
4442
4443 * keymap.c (Fdefine_key): Doc fix.
4444
4d12067c
KS
44452004-05-22 Kim F. Storm <storm@cua.dk>
4446
4447 * alloc.c (struct backtrace): Add debug_on_exit member.
4448 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
4449 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
4450 the removed cons cells.
4451 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
4452 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
4453 any cons cells pointing to unallocated stings.
4454 Do not lisp_free any marker blocks, as there may still be pointers
4455 to them from buffer undo lists at this stage of GC.
4456
4457 * keyboard.c (struct backtrace): Add debug_on_exit member.
4458 (Fcommand_execute): Clear it.
4459
931285e2
LT
44602004-05-20 Luc Teirlinck <teirllm@auburn.edu>
4461
4462 * intervals.c (lookup_char_property): Do not prematurely return nil.
4463
669fa600
SM
44642004-05-19 Jim Blandy <jimb@redhat.com>
4465
4466 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 4467 beginning and end of symbols.
4d12067c 4468
669fa600
SM
4469 * regex.c (enum syntaxcode): Add Ssymbol.
4470 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
4471 (re_opcode_t): New opcodes `symbeg' and `symend'.
4472 (print_partial_compiled_pattern): Print the new opcodes properly.
4473 (regex_compile): Parse the new operators.
ce50a847 4474 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
4475 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
4476 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
4477 (re_match_2_internal): Match symbeg and symend.
4478
4479 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
4480
0d8c2e5c
KS
44812004-05-19 Kim F. Storm <storm@cua.dk>
4482
4483 * .gdbinit (xsymbol): Fix last change.
4484
669fa600
SM
44852004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
4486
4487 * .gdbinit (xprintstr): New fun.
4488 (xstring, xprintsym): Use it.
4489
4490 * w32proc.c (create_child): Use INTMASK.
4491
4492 * alloc.c (Fgarbage_collect): Do all the marking before flushing
4493 unmarked elements of the undo list.
4494
9a6a4c40
DP
44952004-05-18 David Ponce <david@dponce.com>
4496
4497 * print.c (print): Reset print_depth before to call print_object.
4498
f3c4ec74
JR
44992004-05-18 Jason Rumney <jasonr@gnu.org>
4500
4501 * w32console.c: Prefix RIF functions with w32con_ to avoid
4502 namespace clash with functions in term.c and w32term.c.
4503
4504 * w32menu.c (add_menu_item, w32_menu_display_help)
4505 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
4506
0d8c2e5c 4507 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 4508
6be49c3a
EZ
45092004-05-18 Eli Zaretskii <eliz@gnu.org>
4510
4d0b9a0a
EZ
4511 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
4512
6be49c3a
EZ
4513 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
4514 with make_number.
4515 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
4516 with XINT.
4517
0bc90bba
KS
45182004-05-18 Kim F. Storm <storm@cua.dk>
4519
89d19988
KS
4520 * blockinput.h (INPUT_BLOCKED_P): New macros.
4521
4522 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
4523 (Ftop_level): Unblock input if blocked.
4524
0bc90bba
KS
4525 * buffer.h (GET_OVERLAYS_AT): New macro.
4526 * msdos.c (IT_note_mouse_highlight): Use it.
4527 * textprop.c (get_char_property_and_overlay): Use it.
4528 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
4529 * xfaces.c (face_at_buffer_position): Use it.
4530
4531 * print.c (print_object): Increase buf size.
4532
653bd0f6
JR
45332004-05-17 Jason Rumney <jasonr@gnu.org>
4534
4535 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
4536 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
4537 Lisp_Object using i member.
4538 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
4539 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
4540 consistently.
4541
4542 * w32proc.c (create_child): Use make_number instead of masking pid.
4543
4544 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
4545 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
4546 Use EQ to compare Lisp_Objects.
4547 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
4548
4549 * w32term.c (w32_num_mouse_buttons): Rename from
4550 Vw32_num_mouse_buttons and make it an int.
4551
4552 * w32.c (init_environment): Use it.
4553
4554 * w32fns.c (w32_wnd_proc): Likewise.
4555
4556 * w32proc.c (w32_pipe_read_delay): Rename from
4557 Vw32_pipe_read_delay and make it an int.
4558
4559 * w32.c (_sys_read_ahead): Use it.
4560
4561 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
4562
4563 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
4564
4565 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
4566 (key_event): Don't mix Lisp_Object and int.
4567
4568 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
4569
4570 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
4571 modifiers in language change event.
4572
54b53ba7
KS
45732004-05-17 Kim F. Storm <storm@cua.dk>
4574
4575 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
4576 Such objects may be freed markers which still exist on an undo list.
4577
6e86a75d
JB
45782004-05-16 Juanma Barranquero <lektu@terra.es>
4579
4580 * data.c (Fset_default): Make argument names match their use in
4581 docstring.
4582
fc80da24
AS
45832004-05-15 Andreas Schwab <schwab@suse.de>
4584
4585 * emacs.c (gdb_array_mark_flag): Define.
4586 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
4587
c1380aa6
EZ
45882004-05-15 Eli Zaretskii <eliz@gnu.org>
4589
4590 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
4591 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
4592 defined for the MS-DOS build.
4593
89458937
SM
45942004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
4595
4596 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
4597
08020f9a
KH
45982004-05-14 Kenichi Handa <handa@m17n.org>
4599
4600 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
4601
a433994a
ST
46022004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4603
4604 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
4605 section to frame.c section.
4606 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 4607 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 4608
a433994a 4609 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 4610
a433994a 4611 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 4612
a433994a
ST
4613 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
4614 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
4615 (XTread_socket): Fix int/Lisp_Object mixup.
4616 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 4617
a433994a
ST
4618 * macterm.h (struct frame, struct face, struct image)
4619 (display_x_get_resource, Fx_display_color_p)
89458937
SM
4620 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
4621 Add prototypes.
a433994a 4622
b51a51b9
KS
46232004-05-14 Kim F. Storm <storm@cua.dk>
4624
4625 * process.c (wait_reading_process_input): Make reentrant.
4626 Make Available and Connecting non-static. Save and restore value
4627 of waiting_for_user_input_p.
4628
2bde1dd8
KS
46292004-05-13 Kim F. Storm <storm@cua.dk>
4630
4631 * keyboard.c (mark_kboards): Don't mark x and y members
4632 that are overloaded in selection request events.
4633
a267ab4d
SM
46342004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
4635
4636 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
4637
eb15ce9e
GM
46382004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
4639
4640 * window.c (Fdisplay_buffer, Fsplit_window)
4641 (split-height-threshold): Doc fix.
4642
7fc92635
JB
46432004-05-13 Juanma Barranquero <lektu@terra.es>
4644
4645 * xfaces.c (Ftty_supports_face_attributes_p)
4646 (Finternal_copy_lisp_face): Fix typo in docstring.
4647 (Finternal_get_lisp_face_attribute): Fix docstring.
4648
1ec2a572
JD
46492004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4650
4651 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
4652
ae9292e0
ST
46532004-05-11 Steven Tamm <steventamm@mac.com>
4654
4655 * macfns.c (Fx_create_frame): Default to using tool-bar by
4656 setting tool-bar-lines to 1 in default-frame-alist.
4657
46582004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
4659
4660 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
4661 (xpm_get_color_table_v, xpm_make_color_table_h)
4662 (xpm_put_color_table_h, xpm_get_color_table_h)
4663 (xpm_str_to_color_key, xpm_load_image, xpm_load)
4664 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 4665 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 4666
fe97e8df
ST
46672004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4668
a267ab4d 4669 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
4670 instead of FRAME_X_P
4671
b47e779e
KS
46722004-05-11 Kim F. Storm <storm@cua.dk>
4673
4674 * process.c (read_process_output): Grow decoding_buf when needed;
4675 this could cause a crash in allocate_string and compact_small_strings.
4676
cdc9b845
EZ
46772004-04-29 Jim Blandy <jimb@redhat.com>
4678
4679 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
4680 against proper opcode.
4681
aa7094ba
JB
46822004-05-10 Juanma Barranquero <lektu@terra.es>
4683
4684 * process.c (Fstart_process): Fix docstring.
4685
4686 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
4687 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
4688 (Fsplit_char, Fchar_charset): Make argument names match their use
4689 in docstring.
4690
e109331a
RS
46912004-05-10 Richard M. Stallman <rms@gnu.org>
4692
4693 * print.c (print_preprocess): Use being_printed, loop_count and
4694 halftail to detect overdeep nesting and cyclic cdr chains.
4695
9a28b921
AS
46962004-05-10 Andreas Schwab <schwab@suse.de>
4697
78819ebb 4698 * lisp.h (Fmake_symbolic_link): Declare.
9a28b921
AS
4699
4700 * fileio.c (Frename_file): Remove extra argument in call to
4701 Fmake_symbolic_link.
4702
e2c02c1a
KS
47032004-05-10 Kim F. Storm <storm@cua.dk>
4704
4705 * xdisp.c (calc_line_height_property): Use string position when
4706 object is a string.
4707
cfe9d13e
KH
47082004-05-10 Kenichi Handa <handa@m17n.org>
4709
a57e8159
KH
4710 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
4711 inhibit-modification-hooks to t temporarily before calling
4712 Ferase_buffer.
4713
4714 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
4715 inhibit-modification-hooks to t temporarily before calling
4716 Ferase_buffer.
4717
4718 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
4719 inhibit-modification-hooks to t temporarily before calling
4720 Ferase_buffer.
4721
cfe9d13e
KH
4722 * fns.c (count_combining): Delete it.
4723 (concat): Don't check combining bytes.
4724
ceb96489
JR
47252004-05-09 Jason Rumney <jasonr@gnu.org>
4726
4727 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
4728 (globals_of_w32fns): Set it.
4729
b6189c3b 47302004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
4731
4732 * data.c (Fquo): Simplify.
4733
28712a21
JB
47342004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
4735
4736 * data.c (Fquo): If any argument is float, do the computation in
4737 floating point.
4738
0f0af7a8
JB
47392004-05-08 Juanma Barranquero <lektu@terra.es>
4740
88214ef6
JB
4741 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
4742 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
4743 Fix spelling of Emacs on docstring.
4744 (Fset_process_coding_system, Fprocess_coding_system)
4745 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
4746 Make argument names match their use in docstring.
4747 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
4748 Fix docstring.
4749
0f0af7a8
JB
4750 * editfns.c (Finsert_buffer_substring): Make argument names match their
4751 use in docstring.
4752
4753 * syntax.c (Fmodify_syntax_entry): Fix docstring.
4754
2a316a84
ST
47552004-05-07 Steven Tamm <steventamm@mac.com>
4756
4757 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
4758 around call to ReceiveEvent to avoid certain crashes.
4759
47602004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 4761
2a316a84
ST
4762 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
4763 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
4764 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
4765 Save/restore the current graphics port and device handle when
4766 drawing into an offscreen graphics world.
4767
4768 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
4769 (gif_load): Likewise.
4770
ab80314b
JB
47712004-05-07 Juanma Barranquero <lektu@terra.es>
4772
4773 * window.c (Fset_window_buffer): Fix docstring.
4774
70646bb5
TTN
47752004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
4776
4777 * emacs.c (main) [VMS]: Fix var ref.
4778
b6189c3b 47792004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
4780
4781 * data.c (Fsetq_default): Fix docstring.
4782
279d3293
JR
47832004-05-06 Jason Rumney <jasonr@gnu.org>
4784
4785 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
4786 to avoid name clash.
4787
f72b5416
JD
47882004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4789
4790 * fileio.c (barf_or_query_if_file_exists): Use lstat.
4791 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 4792 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 4793
6ab66799
KS
47942004-05-04 Kim F. Storm <storm@cua.dk>
4795
4796 * xdisp.c (Qtotal): New var.
4797 (syms_of_xdisp): Intern and staticpro it.
4798 (calc_line_height_property): New arg total. Set it if
4799 line-spacing property has format (total . VALUE).
4800 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
4801 Handle total line-spacing property.
4802
ab2d724b
JD
48032004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4804
4805 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
4806 "under" scroll bar when size/position changes.
4807
238add5e
JR
48082004-05-03 Jason Rumney <jasonr@gnu.org>
4809
4810 * makefile.nt: Remove.
4811
1644f4e4
EZ
48122004-05-02 Eli Zaretskii <eliz@gnu.org>
4813
a267ab4d
SM
4814 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
4815 Avoid compiler warnings.
05fdbeb8 4816
1644f4e4
EZ
4817 * Makefile.in (region-cache.o): Depend on config.h.
4818
b6189c3b 48192004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
4820
4821 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
4822 with continuation lines, too.
4823
2b98b088
TTN
48242004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
4825
4826 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
4827
d9bf7950
SM
48282004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
4829
4830 * xdisp.c (calc_line_height_property): YAILOM (yet another
4831 int/Lisp_Object mixup).
4832
affa509c
EZ
48332004-05-01 Eli Zaretskii <eliz@gnu.org>
4834
4835 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
4836 undo bad effect of pack(4) in some versions of system headers.
4837
07c07cfe
JR
48382004-05-01 Jason Rumney <jasonr@gnu.org>
4839
4840 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
4841
e71caa4e
KS
48422004-04-30 Kim F. Storm <storm@cua.dk>
4843
4844 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 4845 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
4846
4847 * dispextern.h (struct it): Remove member use_default_face.
4848 Add members override_ascent, override_descent, override_boff.
4849
4850 * xdisp.c (init_iterator): Handle line-spacing float value.
4851 Initialize override_ascent member.
4852 (append_space_for_newline): Reset override_ascent.
4853 Remove use_default_face.
4854 (calc_line_height_property): New function to calculate value of
4855 line-height and line-spacing properties. Look at overlays, too.
4856 Set override_ascent, override_descent, override_boff members when
4857 using another face than the current face. Float values are now
4858 relative to the frame default font, by default; accept a cons
4859 of ratio and face name to specify value relative to a specific face.
4860 (x_produce_glyphs): Use calc_line_height_property.
4861 Use override_ascent etc. when set to handle different face heights.
4862 A negative line-spacing property value is interpreted as a total
4863 line height, rather than inter-line spacing.
4864 (note_mouse_highlight): Allocate room for 40 overlays initially.
4865
0fddae66
SM
48662004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
4867
4868 * data.c (Fsubr_name): New fun.
4869 (syms_of_data): Defsubr it.
4870
712d23dc
KS
48712004-04-29 Kim F. Storm <storm@cua.dk>
4872
4873 * xdisp.c (null_glyph_slice): New var.
4874 (append_glyph, append_composite_glyph, append_stretch_glyph):
4875 Use it to initialize glyph slice.
4876
033ad8c6
SM
48772004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
4878
4879 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
4880 (on_hot_spot_p): Make sure we always return a value.
4881 (Flookup_image_map): Remove unused var ix and iy.
4882 (note_mode_line_or_margin_highlight): Remove unused var `image'.
4883
93397360
EZ
48842004-04-27 Eli Zaretskii <eliz@gnu.org>
4885
4886 * msdos.c (init_environment): If one of the TMP... environment
4887 variables is set to a drive letter without a trailing slash,
4888 append a slash.
4889
0c54865e
EZ
48902004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
4891
4892 * editfns.c (lisp_time_argument): Provide externally.
4893
4894 * fileio.c (Fset_file_times): New function.
4895 (syms_of_fileio): Intern and staticpro it.
4896
d3b111bd
KS
48972004-04-27 Kim F. Storm <storm@cua.dk>
4898
07dc1231
KS
4899 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
4900 header line strings.
4901
360fe9d2
KS
4902 * dispextern.h (struct it): New member use_default_face.
4903
d3b111bd
KS
4904 * xdisp.c (Qline_height): New variable.
4905 (syms_of_xdisp): Intern and staticpro it.
4906 (append_space_for_newline): Partially undo 2004-04-25 change;
4907 add default_face_p arg, and restore callers.
4908 Clear it->use_default_face after use.
4909 (x_produce_glyphs): Set default font for ascii char if
4910 it->use_default_font is set. Change line-spacing property to set
4911 just extra line spacing. Handle new line-height property.
4912
0448588b
AS
49132004-04-26 Andreas Schwab <schwab@suse.de>
4914
4915 * print.c (print_object): Print non-ascii characters in bool
4916 vector representation as octal escapes.
4917
4918 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
4919 * print.c (print_object): Use it instead of BITS_PER_CHAR for
4920 bool vectors.
4921 * lread.c (read1): Likewise.
4922 * alloc.c (Fmake_bool_vector): Likewise.
4923 * data.c (Faref, Faset): Likewise.
4924 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
4925 (mapcar1): Likewise.
d3b111bd 4926
536d6baa
ST
49272004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
4928
4929 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
4930
ae11577a
MB
49312004-04-26 Miles Bader <miles@gnu.org>
4932
4933 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
4934
e198ba87
JB
49352004-04-26 Juanma Barranquero <lektu@terra.es>
4936
4937 * buffer.c (Fpop_to_buffer): Fix docstring.
4938
f3d5f92d 49392004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 4940
f3d5f92d
ST
4941 * lread.c (init_lread): Don't display missing lisp directory
4942 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 4943 may be built without correct installation path.
f3d5f92d 4944
03e35edc
KS
49452004-04-25 Kim F. Storm <storm@cua.dk>
4946
9ff3aa31
KS
4947 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
4948
4949 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
4950
03e35edc
KS
4951 * xdisp.c (append_space_for_newline): Rename from append_space.
4952 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
4953 (x_produce_glyphs): Handle line-spacing property on newline char.
4954 If value is t, adjust ascent and descent to fit current row height.
4955 If value is an integer or float, set extra_line_spacing to integer
4956 value, or to float value x current line height.
4957
f24814e0
KH
49582004-04-23 Kenichi Handa <handa@m17n.org>
4959
4960 * fontset.c (Finternal_char_font): If POSITION is nil, return
4961 font for displaying CH with the default face.
4962
d814862a
JB
49632004-04-23 Juanma Barranquero <lektu@terra.es>
4964
4965 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
4966
063a45c5
SM
49672004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
4968
4969 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
4970 Don't make assumptions about the relative place of i and val.
4971 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
4972
ae7ab2d3
KS
49732004-04-21 Kim F. Storm <storm@cua.dk>
4974
4975 * dispextern.h (struct glyph_slice): New struct.
4976 (struct glyph): New member slice.
4977 (GLYPH_SLICE_EQUAL_P): New macro.
4978 (GLYPH_EQUAL_P): Use it.
4979 (struct glyph_string): New member slice.
4980 (struct it_slice): New struct.
4981 (struct it): New member slice, add member to stack too.
4982 New member constrain_row_ascent_descent_p.
4983 (image_ascent): Add prototype.
4984
4985 * dispnew.c (buffer_posn_from_coords): Return full image width
4986 and height even for image slices (posn is relative to full image).
4987 (marginal_area_string): Adjust x0,y0 for image slice.
4988
4989 * image.c (image_ascent): Add slice arg; calculate ascent for
4990 image slice (or full image).
4991
4992 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
4993 (syms_of_keyboard): Defsubr them.
4994
4995 * lisp.h (pos_visible_p): Fix prototype.
4996
c62aec78 4997 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
4998 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
4999 (x_draw_image_foreground, x_draw_image_relief)
5000 (x_draw_image_foreground_1, x_draw_image_glyph_string):
5001 Draw sliced images.
5002
5003 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
5004 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5005 (x_draw_image_foreground, x_draw_image_relief)
5006 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
5007 Draw sliced images.
5008
5009 * w32term.h (image_ascent): Remove prototype.
5010
5011 * window.c (Fpos_visible_in_window_p): Return pixel position if
5012 PARTIALLY arg is non-nil. Simplify. Doc fix.
5013 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
5014 to return/set vscroll in pixels.
5015
5016 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
5017
5018 * xdisp.c (Qslice): New variable.
5019 (syms_of_xdisp): Intern and staticpro it.
5020 (pos_visible_p): Return pixel position in new x and y args.
5021 (init_iterator): Reset it->slice info.
5022 (handle_display_prop): Parse (slice ...) property.
5023 (push_it, pop_it): Save/restore slice info.
5024 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
5025 force repositioning of tall row if window is vscrolled, as that
5026 would reset vscroll.
5027 (append_space): Set it->constrain_row_ascent_descent_p to avoid
5028 increasing row height if row is non-empty.
5029 (fill_image_glyph_string): Copy slice info.
5030 (take_vertical_position_into_account): Simplify.
5031 (produce_image_glyph): Handle iterator slice info, setup glyph
5032 slice info. Do not force minimum line height.
5033 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
5034 do not increase height (ascent/descent) of non-empty row when
5035 adding normal character glyph; instead reduce glyph ascent/descent
5036 appropriately; if row is higher than current glyph, adjust glyph
5037 descent/ascent to reposition glyph within the existing row.
5038 Likewise, when char is newline, only set ascent/descent if row is
5039 currently empty.
5040 (note_mouse_highlight): Handle hotspots with sliced image.
5041
5042 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
5043 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5044 (x_draw_image_foreground, x_draw_image_relief)
5045 (x_draw_image_foreground_1, x_draw_image_glyph_string):
5046 Draw sliced images.
5047
5048 * xterm.h (image_ascent): Remove prototype.
5049
d58f8753
SM
50502004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
5051
5052 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
5053
4ce2719d
JPW
50542004-04-20 John Paul Wallington <jpw@gnu.org>
5055
5056 * fns.c (Fassoc, Feql): Fix indentation.
5057
d58f8753 5058 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 5059
95f8c3b9
JPW
50602004-04-19 John Paul Wallington <jpw@gnu.org>
5061
5062 * fns.c (Feql): New function.
d58f8753 5063 (syms_of_fns): Defsubr it.
95f8c3b9 5064
b7e85537
JR
50652004-04-18 Jason Rumney <jasonr@gnu.org>
5066
5067 * w32select.c (Fw32_set_clipboard_data): Get sequence number
5068 after closing the clipboard.
5069
5a72efd4
LT
50702004-04-16 Luc Teirlinck <teirllm@auburn.edu>
5071
5072 * buffer.c (Fbuffer_base_buffer): Doc fix.
5073
20dc8583
KS
50742004-04-17 Kim F. Storm <storm@cua.dk>
5075
60962ec4
KS
5076 * keymap.c (Fkey_description): Add optional PREFIX arg.
5077 Combine prefix with KEYS to make up the full key sequence to describe.
5078 Correlate meta_prefix_char and following (simple) key to describe
5079 as meta modifier. All callers changed.
5080 (describe_map): Rename arg `keys' to `prefix'. Remove local
5081 `elt_prefix' var. Use Fkey_description with prefix instead of
5082 elt_prefix combined with Fsingle_key_description.
5083 (describe_vector): Declare static. Replace arg `elt_prefix' with
5084 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
5085 if !KEYMAP_P. Use Fkey_description with prefix instead of
5086 Fsingle_key_description.
5087
5088 * keymap.h (Fkey_description): Fix prototype.
5089 (describe_vector): Remove prototype.
5090
409368b9
KS
5091 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
5092
20dc8583
KS
5093 * image.c (PNG_BG_COLOR_SHIFT): Remove.
5094 (png_load): Fix calculation of transparent background color on X
5095 and W32 platforms.
5096
75c5501b
JB
50972004-04-16 Juanma Barranquero <lektu@terra.es>
5098
5099 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
5100 not too large before computing how much to scroll.
5101
da879ae8
SM
51022004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
5103
5104 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
5105
d01ca4a8
LT
51062004-04-14 Luc Teirlinck <teirllm@auburn.edu>
5107
5108 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
5109 Add hyperlink to Elisp manual to the docstring.
5110
572943b3
SM
51112004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
5112
5113 * callint.c (fix_command): Use XDCR.
5114
5e30a0fb
NR
51152004-04-14 Nick Roberts <nick@nick.uklinux.net>
5116
5117 * window.c (Fget_lru_window): Doc fix.
5118
a27ddfaf
KS
51192004-04-14 Kim F. Storm <storm@cua.dk>
5120
5121 * editfns.c (Fformat): Fix allocation size of precision array.
5122
5123 * dispnew.c (update_window): Only set changed_p if
5124 scrolling_window actually did scroll.
5125 (scrolling_window): Only return 1 if we actually did scroll.
5126
5127 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
5128 height to glyph height when cursor row is not fully visible.
5129 (make_cursor_line_fully_visible): Add FORCE_P arg to return
5130 failure in case row is higher than window. Callers changed.
5131 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
5132 Try to scroll partially visible, higher-than-window cursor row.
5133 (redisplay_window): Always try to scroll partially visible,
5134 higher-than-window cursor row - both initially and again with
5135 centering_position = 0.
5136 Clear desired matrix before retrying with centering_position = 0.
5137
da879ae8
SM
51382004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5139
5140 * syntax.c (scan_lists): Simplify backward string scan.
5141 Fix off-by-one boundary check for string and comment fences.
5142
5fc16e8e
SM
51432004-04-13 Joe Buehler <jbuehler@hekimian.com>
5144
5145 * sheap.c, unexcw.c: New files.
5146
c9aac8e6
LT
51472004-04-12 Luc Teirlinck <teirllm@auburn.edu>
5148
5149 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
5150 base buffer has been killed. Correct the error message if the
5151 base buffer does not exist.
5152
1e88a355
SM
51532004-04-12 Joe Buehler <jbuehler@hekimian.com>
5154
5155 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
5156 Cygwin itself. Add support for Xaw3d scrollbars.
5157
5158 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
5159
5160 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
5161
5162 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
5163 before Cygwin unexec.
5164
5165 * Makefile.in: Link changes for Cygwin unexec() support.
5166
8dbff9a0
AS
51672004-04-12 Andreas Schwab <schwab@suse.de>
5168
5169 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
5170
54dffe35
LT
51712004-04-11 Luc Teirlinck <teirllm@auburn.edu>
5172
5173 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
5174 IGNORE argument equals NAME. Doc fix.
5175
99a72bdf
MY
51762004-04-11 Masatake YAMATO <jet@gyve.org>
5177
1e88a355 5178 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
5179 empty if they are backwards.
5180
40899d7b
SM
51812004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
5182
5183 * xfaces.c (face_color_supported_p): Fix compilation without X11.
5184
f8f853de
SM
51852004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
5186
5187 * doc.c (Fsnarf_documentation): Ignore new file name entries.
5188
c953fe1b
KS
51892004-04-06 Kim F. Storm <storm@cua.dk>
5190
661e85c1
KS
5191 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
5192 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
5193
5194 * w32term.c (w32_read_socket): Set mouse_face_hidden after
5195 clearing highlight.
5196
5197 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
5198
5199 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
5200 clearing highlight.
5201
c953fe1b
KS
5202 * indent.c (vmotion): Do not reserve one column for continuation
5203 marks on window frames.
5204
c1994268
EZ
52052004-04-04 Eli Zaretskii <eliz@gnu.org>
5206
5207 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
5208 from GCC.
5209
9f691b0d
SM
52102004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
5211
5212 * .gdbinit-union: Remove.
5213
5214 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
5215 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
5216 ($nonvalbits): Remove.
5217 ($valmask): Set it by calling xreload to avoid redundancy.
5218
5219 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
5220 (gdb_emacs_intbits): Remove.
5221
7a8560d7
JD
52222004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5223
9f691b0d 5224 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 5225
3c8111fc
KH
52262004-03-30 Kenichi Handa <handa@m17n.org>
5227
5228 * editfns.c (Fformat): Fix initialization of the array info.
5229
48a0bce4
KS
52302004-03-30 Kim F. Storm <storm@cua.dk>
5231
5232 * xterm.c (x_mouse_click_focus_ignore_position): New var.
5233 (syms_of_xterm): DEFVAR_BOOL it.
5234 (ignore_next_mouse_click_timeout): New var.
5235 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
5236 Use it to filter mouse clicks following focus event.
5237
1cd0066c
KS
52382004-03-29 David Ponce <david@dponce.com>
5239
5240 * callint.c (Fcall_interactively): Fix last change.
5241
adb3b353
SM
52422004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5243
5244 * eval.c (Fcommandp): Simplify.
5245
5246 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
5247 Extend to handle all kinds of functions.
5248
5249 * lisp.h (Finteractive_form): Declare.
5250
5251 * callint.c (Fcall_interactively): Use it.
5252
6fc4c9c9
KS
52532004-03-26 Kim F. Storm <storm@cua.dk>
5254
5255 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
5256 to catch errors in calc_pixel_width_or_height during redisplay.
5257
abdb9b83
MY
52582004-03-26 Masatake YAMATO <jet@gyve.org>
5259
b17856dd 5260 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 5261
b17856dd 5262 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 5263
b17856dd 5264 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 5265
b17856dd 5266 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 5267
e8a84b6c
JD
52682004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5269
b17856dd 5270 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 5271
36a3fd05
RS
52722004-03-19 Richard M. Stallman <rms@gnu.org>
5273
5274 * s/sol2-6.h: Delete previous change.
5275
ab24c127
KS
52762004-03-19 Kim F. Storm <storm@cua.dk>
5277
5278 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
5279 to_charpos corresponds to newline in right fringe. Use local
5280 BUFFER_POS_REACHED_P macro.
5281
992126de
JD
52822004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5283
5284 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
5285 to compile on non-window system.
5286
45dbfc84
KS
52872004-03-19 Kim F. Storm <storm@cua.dk>
5288
5289 * dispextern.h (calc_pixel_width_or_height): Add prototype.
5290
5291 * image.c (Qcenter): Move to xdisp.c.
5292
5293 * xdisp.c (Qcenter): Declare here.
adb3b353 5294 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
5295 (handle_single_display_prop): Allow space display property on all
5296 platforms.
5297 (display_mode_line): Set mode_line_p before displaying line.
5298 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
5299 handling. Remove complex cases for fringes and scroll-bars.
5300 Add left, right, and center alignment positions. Add text (area)
5301 width/height. Return width or height for image specs.
5302 (produce_stretch_glyph): Improve handling of :align-to. Is now
5303 relative to left of text area by default, but other base offsets
5304 can be specified -- also for text lines.
5305
5306 * term.c (produce_glyphs): Handle IT_STRETCH.
5307 (produce_stretch_glyph): New function to handle space width and
5308 align-to display properties on non-window systems.
5309
37264101
SM
53102004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5311
5312 * fileio.c (Fread_file_name): Set completion-ignore-case for
5313 case-insensitive systems.
5314
73bc43da
MY
53152004-03-14 Masatake YAMATO <jet@gyve.org>
5316
5317 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
5318 when keymap and cursor are setup.
5319
9062aa89
ST
53202004-03-14 Steven Tamm <steventamm@mac.com>
5321
b17856dd 5322 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 5323
e4b1b5ab
KS
53242004-03-14 Kim F. Storm <storm@cua.dk>
5325
5326 * dispextern.h (x_find_image_file): Add prototype.
5327
5328 * image.c (x_find_image_file): Make extern.
5329
5330 * xfns.c (x_find_image_file): Remove prototype.
5331
a6eeaa81 53322004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 5333
37264101 5334 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 5335
37264101 5336 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 5337
e69cfac2
RS
53382004-03-12 Richard M. Stallman <rms@gnu.org>
5339
5340 * fns.c (internal_equal): New arg PROPS controls comparing
5341 text properties. All callers changed.
5342 (Fequal_including_properties): New function.
5343 (syms_of_fns): defsubr it.
5344
45034953
KS
53452004-03-12 Kim F. Storm <storm@cua.dk>
5346
5347 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 5348
45034953
KS
5349 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
5350 (image_background, image_background_transparent): Fix prototypes.
5351
37264101 5352 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
5353
5354 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
5355 (x_query_font, x_find_ccl_program, x_set_window_size)
5356 (x_make_frame_visible, mac_initialize, XCreatePixmap)
5357 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
5358 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
5359
5360 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
5361 (x_query_font, x_find_ccl_program, x_set_window_size)
5362 (x_make_frame_visible, mac_initialize, XCreatePixmap)
5363 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
5364 (mac_draw_line_to_pixmap): Add prototypes.
5365
53662004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5367
5368 * macterm.c (XTread_socket): Fix mouse click on tool bar.
5369
a12d3d87
KS
53702004-03-11 Kim F. Storm <storm@cua.dk>
5371
d3ab1cf1
KS
5372 * dispextern.h: Move image related prototypes from xfns.c section
5373 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
5374 HAVE_X_WINDOWS.
37264101 5375
37de9f51 5376 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 5377 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
5378 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
5379 (GTK_OBJ) [USE_GTK]: New declaration.
5380 (obj): Add $(GTK_OBJ) to list.
5381
5243c06a 53822004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 5383
5243c06a
ST
5384 * image.c [MAC_OSX]: Include sys/stat.h
5385
5386 * macfns.c (syms_of_macfns): Remove definitions of things now
5387 defined in image.c
5388
c0f97789
KS
53892004-03-11 Kim F. Storm <storm@cua.dk>
5390
5391 The following changes consolidates the identical/similar image
5392 support code previously found in xfns.c, w32fns.c, and macfns.c
5393 into a new file image.c.
5394
5395 * makefile.w32-in (OBJ1): Add image.o.
5396 ($(BLD)/image.$(O)): Add dependencies.
5397
5398 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
5399 (image.o): Add dependencies.
37264101 5400
c0f97789
KS
5401 * image.c: New file with consolidated image support code.
5402 (COLOR_TABLE_SUPPORT): New define to control whether
5403 color table support is available (X only).
5404 (Bitmap_Record): Common name for x_bitmap_record,
5405 w32_bitmap_record, and mac_bitmap_record.
5406 (XImagePtr): Common name for pointer to XImage or equivalent.
5407 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
5408 to XImagePtr on X+MAC, and to HDC on W32.
5409 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
5410 (NO_PIXMAP): Common name for "None" or equivalent.
5411 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
5412 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
5413 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
5414 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
5415 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
5416 (XDrawLine): Define on MAC for code sharing.
5417 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
5418 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
5419 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5420 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5421 (x_reference_bitmap, x_create_bitmap_from_data)
5422 (x_create_bitmap_from_file, x_destroy_bitmap)
5423 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5424 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
5425 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5426 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5427 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5428 (define_image_type, lookup_image_type, valid_image_p)
5429 (image_error, enum image_value_type, struct image_keyword)
5430 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5431 (make_image, free_image, prepare_image_for_display, image_ascent)
5432 (four_corners_best, image_background, image_background_transparent)
5433 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5434 (make_image_cache, free_image_cache, clear_image_cache)
5435 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5436 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5437 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5438 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
5439 (init_image_func_pointer, image_load_quartz2d)
5440 (struct ct_color, init_color_table, free_color_table)
5441 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5442 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5443 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5444 (x_disable_image, x_build_heuristic_mask)
5445 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5446 (TIFF support, GIF support, Ghostscript support): Consolidate image
5447 code from xfns.c, w32fns.c, and macfns.c.
5448 (syms_of_image): Consolidate image related symbol setup here.
5449 (init_image): Consolidate image related initializations here.
37264101 5450
c0f97789
KS
5451 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
5452 and init_image. Remove call to init_xfns.
5453
37264101
SM
5454 * macterm.h (struct mac_bitmap_record): Add file member.
5455 Not currently used, but simplifies code sharing.
c0f97789
KS
5456
5457 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5458 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5459 (x_reference_bitmap, x_create_bitmap_from_data)
5460 (x_create_bitmap_from_file, x_destroy_bitmap)
5461 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5462 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
5463 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5464 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5465 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5466 (define_image_type, lookup_image_type, valid_image_p)
5467 (image_error, enum image_value_type, struct image_keyword)
5468 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5469 (make_image, free_image, prepare_image_for_display, image_ascent)
5470 (four_corners_best, image_background, image_background_transparent)
5471 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5472 (make_image_cache, free_image_cache, clear_image_cache)
5473 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5474 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5475 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5476 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
5477 (init_image_func_pointer, image_load_quartz2d)
5478 (struct ct_color, init_color_table, free_color_table)
5479 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5480 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5481 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5482 (x_disable_image, x_build_heuristic_mask)
5483 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5484 (TIFF support, GIF support, Ghostscript support): Merge with image
5485 code from xfns.c and macfns.c into image.c.
5486 (syms_of_xfns): Move image related symbols to image.c.
5487 (init_external_image_libraries, init_xfns): Remove; initialization
5488 moved to init_image in image.c.
5489
5490 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5491 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5492 (x_reference_bitmap, x_create_bitmap_from_data)
5493 (x_create_bitmap_from_file, x_destroy_bitmap)
5494 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5495 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5496 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5497 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5498 (define_image_type, lookup_image_type, valid_image_p)
5499 (image_error, enum image_value_type, struct image_keyword)
5500 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5501 (make_image, free_image, prepare_image_for_display, image_ascent)
5502 (four_corners_best, image_background, image_background_transparent)
5503 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5504 (make_image_cache, free_image_cache, clear_image_cache)
5505 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5506 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5507 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5508 (struct ct_color, init_color_table, free_color_table)
5509 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5510 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5511 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5512 (x_disable_image, x_build_heuristic_mask)
5513 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5514 (TIFF support, GIF support, Ghostscript support): Merge with image
5515 code from xfns.c and macfns.c into image.c.
5516 (syms_of_xfns): Move image related symbols to image.c.
5517 (init_external_image_libraries, init_xfns): Remove; initialization
5518 moved to init_image in image.c.
5519
5520 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5521 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5522 (x_reference_bitmap, x_create_bitmap_from_data)
5523 (x_create_bitmap_from_file, x_destroy_bitmap)
5524 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5525 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5526 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5527 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5528 (define_image_type, lookup_image_type, valid_image_p)
5529 (image_error, enum image_value_type, struct image_keyword)
5530 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5531 (make_image, free_image, prepare_image_for_display, image_ascent)
5532 (four_corners_best, image_background, image_background_transparent)
5533 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5534 (make_image_cache, free_image_cache, clear_image_cache)
5535 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5536 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5537 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5538 (struct ct_color, init_color_table, free_color_table)
5539 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5540 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5541 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5542 (x_disable_image, x_build_heuristic_mask)
5543 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5544 (TIFF support, GIF support, Ghostscript support): Merge with
5545 w32fns.c and macfns.c image code into image.c.
5546 (syms_of_xfns): Move image related symbols to image.c.
5547 (init_xfns): Remove; initialization moved to init_image in image.c.
5548
5549 * lisp.h (syms_of_image, init_image): Add protoypes.
5550 (init_xfns): Remove prototype.
5551
5552 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5553 (x_reference_bitmap, x_create_bitmap_from_data)
5554 (x_create_bitmap_from_file, x_destroy_bitmap)
5555 (x_create_bitmap_mask): Move prototypes from dispextern.h.
5556 (gamma_correct) [MAC_OS]: Add prototype.
5557
5558 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5559 (x_reference_bitmap, x_create_bitmap_from_data)
5560 (x_create_bitmap_from_file, x_destroy_bitmap)
5561 (x_create_bitmap_mask): Move prototypes to dispextern.h.
5562
6eced09c
KH
55632004-03-09 Kenichi Handa <handa@etlken2>
5564
5565 * coding.c (decode_coding_emacs_mule): Handle insufficent source
5566 correctly.
5567
9a7e95f3
RS
55682004-03-04 Richard M. Stallman <rms@gnu.org>
5569
04a6e76b
RS
5570 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
5571
9a7e95f3
RS
5572 * window.c (Fdisplay_buffer): Doc fix.
5573
5574 * buffer.c (Fpop_to_buffer): Doc fix.
5575
6c2488df
KS
55762004-03-03 Kim F. Storm <storm@cua.dk>
5577
5578 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
5579
d8d95bc7
SM
55802004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
5581
5582 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
5583
357589bf
RS
55842004-03-02 Richard M. Stallman <rms@gnu.org>
5585
5586 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
5587
409949b5
KH
55882004-03-02 Kenichi Handa <handa@m17n.org>
5589
5590 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
5591
d24bc50f
KS
55922004-03-02 Kim F. Storm <storm@cua.dk>
5593
5594 * window.h (struct window): New member overlay_arrow_bitmap.
5595
5596 * window.c (make_window): Initialize overlay_arrow_bitmap.
5597
5598 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
5599 implement and integrate multiple overlay arrows with redisplay.
5600 (syms_of_xdisp): DEFVAR_LISP and initialize it.
5601 (last_arrow_position, last_arrow_string): Replace by properties.
5602 (Qlast_arrow_position, Qlast_arrow_string)
5603 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
5604 (syms_of_xdisp): Intern and staticpro them.
5605 (overlay_arrow_string_or_property, update_overlay_arrows)
5606 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
5607 (overlay_arrow_at_row): New functions for multiple overlay arrows.
5608 (redisplay_internal): Use them instead of directly accessing
5609 Voverlay_arrow_position etc. for multiple overlay arrows.
5610 (mark_window_display_accurate): Use update_overlay_arrows.
5611 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
5612 (try_window_id): Use overlay_arrows_changed_p.
5613 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
5614 (display_line): Use overlay_arrow_at_row to check multiple
5615 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 5616 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
5617 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
5618 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
5619
5620 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
5621 (update_window_fringes): Remove unused code.
5622
c1464661
JR
56232004-03-01 Jason Rumney <jasonr@gnu.org>
5624
5625 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
5626
a64387ee
JB
56272004-03-01 Juanma Barranquero <lektu@terra.es>
5628
5629 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
5630
5631 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
5632
334faa08
JD
56332004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5634
5635 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
5636 how many colors can be displayed.
5637
bb62616f
KH
56382004-03-01 Kenichi Handa <handa@m17n.org>
5639
5640 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
5641 correctly.
5642
0fd16104
KS
56432004-02-28 Kim F. Storm <storm@cua.dk>
5644
5645 * dispnew.c (update_window): Update header line also if there are
5646 no other changes in window (move code after set_cursor label).
5647
5648 * lisp.h (mark_window_display_accurate): Remove prototype.
5649
5650 * window.c (window_loop, Fforce_window_update): Force mode line
5651 updates by setting prevent_redisplay_optimizations_p and
5652 update_mode_lines.
5653
b59dd9c8
JD
56542004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5655
d8d95bc7 5656 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
5657
5658 * xterm.c (x_calc_absolute_position): Call x_real_positions
5659 to get WM window sizes and use those to calculate position.
d8d95bc7 5660 (x_set_offset): Remove code commented out.
b59dd9c8 5661
a874691c
MB
56622004-02-28 Miles Bader <miles@gnu.org>
5663
5664 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
5665
3e0c6482
KS
56662004-02-28 Kim F. Storm <storm@cua.dk>
5667
5668 * keyboard.c (kbd_buffer_store_event_hold): New function to store
5669 an event into kbd fifo, but with special handling of quit event;
5670 a quit event is saved for later, and further events are discarded
5671 until the saved quit event has been processed.
5672 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
5673 (gen_help_event): Store help event in kbd fifo.
5674 (NREAD_INPUT_EVENTS): Remove.
5675 (read_avail_input): Adapt to new read_socket_hook interface.
5676 Remove allocation and initialization of local input_event buffer,
5677 as read_socket_hook stores events directly in fifo. Allocate and
5678 initialize local hold_quit event to handle postponed quit event
5679 (and store it if set by kbd_buffer_store_event_hold).
5680
5681 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
5682 (gen_help_event): Fix prototype.
5683
a64387ee 5684 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 5685 numcharsp args. Add hold_quit arg.
f63fd14e 5686 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
5687 directly in fifo using kbd_buffer_store_event_hold.
5688
5689 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
5690 (read_input_waiting): Adapt to new read_socket_hook interface.
5691 Remove allocation and initialization of local input_event buffer,
5692 as read_socket_hook stores events directly in fifo. Allocate and
5693 initialize local hold_quit event to handle postponed quit event
5694 (and store it if set by kbd_buffer_store_event_hold).
5695
a64387ee 5696 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
5697
5698 * termhooks.h (read_socket_hook): Fix prototype.
5699
5700 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
5701 numcharsp args. Add hold_quit arg.
f63fd14e 5702 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
5703 directly in fifo using kbd_buffer_store_event_hold.
5704
5705 * w32inevt.h (w32_console_mouse_position): Fix prototype.
5706
5707 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
5708 Add hold_quit arg. Rework to use just one, local, inev
5709 input_event. Store inev directly in fifo using
3e0c6482
KS
5710 kbd_buffer_store_event_hold. Update count in one place.
5711 Postpone call to gen_help_event until inev is stored; use new
5712 local do_help for this.
5713 Remove local emacs_event in handing of ButtonPress event; just use
5714 inev instead (so no reason to copy it later).
5715
5716 * xsmfns.c (x_session_check_input): Remove numchars arg.
5717
d8d95bc7
SM
5718 * xterm.c (x_focus_changed, x_detect_focus_change):
5719 Remove numchars arg. Always store event into bufp arg.
5720 Return nothing. Callers changed accordingly.
3e0c6482
KS
5721 (glyph_rect): Simplify.
5722 (STORE_KEYSYM_FOR_DEBUG): New macro.
5723 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
5724 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
5725 (current_hold_quit) [USE_GTK]: Add.
5726 (event_handler_gdk): Adapt to new handle_one_xevent.
5727 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
5728 Add hold_quit arg. Rework to use just one, local, inev
5729 input_event. Store inev directly in fifo using
3e0c6482
KS
5730 kbd_buffer_store_event_hold. Update count in one place.
5731 Postpone call to gen_help_event until inev is stored; use new
5732 local do_help for this.
5733 Simplify handling of keysyms (consolidate common code). Fix bug
5734 where count was updated with nchars instead of nbytes.
5735 Remove local emacs_event in handing of ButtonPress event; just use
5736 inev instead (so no reason to copy it later).
5737 Remove `out' label. Rename label `ret' to `done'; add various
5738 `goto done' to clarify code flow in deeply nested blocks.
5739 (x_dispatch_event): Simplify as handle_one_xevent now calls
5740 kbd_buffer_store_event itself.
f63fd14e 5741 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
5742 arg. Call handle_one_xevent with new arglist. Store event from
5743 x_session_check_input in fifo.
5744 [USE_GTK]: Setup current_hold_quit.
5745 Decrement handling_signal before unblocking input.
5746 (x_initialize) [USE_GTK]: Initialize current_count.
5747
5748 * xterm.h (x_session_check_input): Fix prototype.
5749
e3564461 57502004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 5751
d8d95bc7 5752 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 5753
e3564461
ST
5754 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
5755 macgui.h).
a64387ee 5756
e3564461 5757 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 5758
e3564461
ST
5759 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
5760 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
5761 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
5762 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
5763 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
5764 (Bitmap): Remove typedef.
5765 (Pixmap): Change int to GWorldPtr.
5766
d8d95bc7 5767 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 5768
d8d95bc7
SM
5769 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
5770 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
5771 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
5772 long representation.
5773 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
5774 colors used for masks.
5775 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 5776
e3564461
ST
5777 * macfns.c: Include sys/types.h and sys/stat.h.
5778 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
5779 Include QuickTime/QuickTime.h.
5780 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
5781 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
5782 functions defined in macterm.c.
5783 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
5784 (ZPixmap): New #define for compatibility with xfns.c.
5785 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
5786 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
5787 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
5788 New functions.
e3564461 5789 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
5790 (x_destroy_x_image, unwind_create_frame, x_disable_image)
5791 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
5792 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
5793 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
5794 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
5795 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
5796 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
5797 long mixup.
5798 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
5799 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
5800 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
5801 (x_set_cursor_type, Fxw_color_values, valid_image_p)
5802 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
5803 (x_alloc_image_color, clear_image_cache, lookup_image)
5804 (x_find_image_file, xbm_read_bitmap_file_data)
5805 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
5806 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
5807 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
5808 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
5809 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 5810 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
5811 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
5812 #if 0.
5813 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
5814 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
5815 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
5816 New functions (from xfns.c).
e3564461
ST
5817 (Fx_create_frame): Record unwind_create_frame.
5818 (Fxw_display_color_p): Use dpyinfo->color_p.
5819 (Fx_display_grayscale_p, Fx_display_planes): Don't use
5820 dpyinfo->n_cbits.
5821 (Fx_display_color_cells): Use dpyinfo->n_planes;
5822 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
5823 (Qheuristic, cross_disabled_images, emboss_matrix)
5824 (laplace_matrix): New variables (from xfns.c).
5825 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
5826 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
5827 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
5828 (image_background_transparent): New function (from xfns.c).
5829 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
5830 (image_load_quicktime): Add declaration.
5831 [MAC_OSX] (image_load_quartz2d): Likewise.
5832 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
5833 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 5834 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
5835 (xbm_load_image_from_file, x_laplace_read_row)
5836 (x_laplace_write_row, pbm_read_file): Remove functions.
5837 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
5838 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
5839 (colors_in_color_table): Sync with xfns.c (although not used).
5840 (lookup_rgb_color): Don't lookup color table. Just do gamma
5841 correction.
5842 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
5843 (x_disable_image): New function (from xfns.c).
5844 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
5845 (x_build_heuristic_mask): Sync with xfns.c.
5846 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
5847 (HAVE_PBM): Remove #ifdef.
5848 (pbm_load): Sync with xfns.c. Set img->width and img->height
5849 before IMAGE_BACKGROUND.
d8d95bc7 5850 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
5851 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
5852 Don't enclose with #if HAVE_PNG.
5853 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
5854 symbol _CGImageCreateWithPNGDataProvider is defined.
5855 Otherwise use image_load_quicktime.
e3564461 5856 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
5857 [HAVE_PNG] (png_load): Sync with xfns.c.
5858 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
5859 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
5860 HAVE_JPEG.
5861 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
5862 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
5863 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
5864 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
5865 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
5866 (tiff_image_p, tiff_load): Don't enclose declarations with #if
5867 HAVE_TIFF.
5868 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
5869 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
5870 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
5871 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
5872 New functions (from xfns.c).
e3564461 5873 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 5874 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
5875 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
5876 Don't enclose with #if HAVE_GIF.
5877 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
5878 animated gif. Otherwise use image_load_quicktime.
5879 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
5880 gif_DrawText to avoid conflict with QuickdrawText.h.
5881 [HAVE_GIF] (gif_load): Sync with xfns.c.
5882 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
5883 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
5884 Ghostscript is not supported yet).
5885 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
5886 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
5887 cross_disabled_images (from xfns.c). Remove #if 0 for supported
5888 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
5889 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
5890 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
5891 HAVE_PNG. Call EnterMovies to support animated gifs.
5892 Call init_image_func_pointer to bind a symbol
e3564461 5893 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 5894
d8d95bc7 5895 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
5896 (x_draw_bar_cursor): Sync declaration with xterm.c.
5897 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
5898 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
5899 graphics).
5900 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
5901 (mac_draw_line_to_pixmap, XCreatePixmap)
5902 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
5903 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
5904 New functions.
5905 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
5906 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
5907 Cast bits to char *.
e3564461
ST
5908 (reflect_byte): New function (from w32fns.c).
5909 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
5910 due to byte alignment.
d8d95bc7
SM
5911 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
5912 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
5913 (XSetForeground): Remove static (now used in macfns.c).
5914 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
5915 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
5916 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
5917 (x_draw_glyph_string_box, x_draw_image_foreground)
5918 (x_draw_image_foreground_1, x_draw_image_glyph_string)
5919 (x_draw_stretch_glyph_string, x_draw_glyph_string)
5920 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
5921 Sync with xterm.c.
5922 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
5923 than the xterm.c version when a strictly horizontal or vertical
5924 line is drawn.
5925 (XTset_terminal_window): Add static.
5926 (x_make_frame_visible): Add UNBLOCK_INPUT.
5927 (x_free_frame_resources): New funcion (from xterm.c).
5928 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
5929 occurs in tool bar area.
d8d95bc7
SM
5930 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
5931 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
5932 Initialize image cache.
5933 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
5934 Enclose unused functions with #if 0.
5935 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
5936 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 5937 from a mac font name to an XLFD font name according to its script code.
e3564461 5938 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 5939 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
5940 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
5941 whose name starts with `.'.
5942 (init_font_name_table): Use decode_mac_font_name. Add both
5943 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
5944 of a font is smJapanese.
5945 (mac_do_list_fonts): New function to list fonts that match a given
5946 pattern.
5947 (x_list_fonts, XLoadQueryFont): Use it.
5948 (XLoadQueryFont): Set rbearing field for each variable width
5949 character to avoid needless redraw.
5950 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
5951
446f5f3d
KS
59522004-02-26 Kim F. Storm <storm@cua.dk>
5953
af617d0f
KS
5954 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
5955 as read_socket_hook handler on X aborts if buffer is too small
5956 and W32 handler doesn't always check buffer limit.
5957
446f5f3d
KS
5958 * xdisp.c (handle_single_display_prop): Handle left-fringe and
5959 right-fringe similar to a display margin image. Specifically,
5960 the characters having the fringe prop are no longer shown, and
5961 we use IT_IMAGE/next_element_from_image with image_id = -1 to
5962 do this. Set fringe bitmap face_id in it->face_id.
5963 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
5964 still realize it->face (i.e. the fringe bitmap face).
5965
7d8a0b55
MB
59662004-02-25 Miles Bader <miles@gnu.org>
5967
5968 * xdisp.c (check_it): Check string/string_pos consistency.
5969 (init_iterator): Initialize string-related fields properly.
5970
59712004-02-11 Miles Bader <miles@gnu.org>
5972
5973 * xdisp.c (produce_image_glyph): Force negative descents to zero.
5974
59752004-02-10 Miles Bader <miles@gnu.org>
5976
5977 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
5978 BLOCK_INPUT can be nested, so it doesn't make much sense.
5979
a64387ee 59802004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
5981
5982 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
5983 (xbm_read_bitmap_data): Use unsigned char for image data.
5984
92f5fba2
LT
59852004-02-23 Luc Teirlinck <teirllm@auburn.edu>
5986
5987 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
5988
8565fb3d
JR
59892004-02-22 Jason Rumney <jasonr@gnu.org>
5990
5991 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
5992 correctly over other bitmaps.
5993
a6eeaa81 59942004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
5995
5996 * emacs.c (USAGE1): Split into two halves.
5997 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
5998 (USAGE3): Rename from USAGE2.
5999 (USAGE4): Rename from USAGE3.
f8125c39 6000
4effffca
EZ
60012004-02-21 Juri Linkov <juri@jurta.org>
6002
6003 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
6004 Fix --multibyte. Move --help, --version to USAGE2. Add alias
6005 --file. Fix -f, -l. Sort options. Untabify.
6006 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
6007
923c1e6f
LT
60082004-02-19 Luc Teirlinck <teirllm@auburn.edu>
6009
6010 * category.c (Fdefine_category, Fcategory_docstring)
6011 (Fget_unused_category, Fset_category_table)
6012 (Fcategory_set_mnemonics): Doc fixes.
6013
b0e225fd
KS
60142004-02-20 Kim F. Storm <storm@cua.dk>
6015
6016 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
6017 The following changes are relative to the 2004-01-21 revision.
6018 (NREAD_INPUT_EVENTS): Define as max number of input events to read
6019 in one call to read_socket_hook. Value is 8.
6020 (read_avail_input): Separate and rework handling of read_socket_hook
6021 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
6022 in read_socket_hook case, and repeat if full buffer is read.
6023 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
6024 In non-read_socket_hook case, just use a single input_event, and
6025 call kbd_buffer_store_event on the fly for each character.
6026
b15aa9f9
SM
60272004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
6028
6029 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
6030 Remove unused `gu' alternative.
6031
83c9aa95
AS
60322004-02-19 Andreas Schwab <schwab@suse.de>
6033
6034 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
6035 warning.
6036
cc808173
KS
60372004-02-18 Kim F. Storm <storm@cua.dk>
6038
6039 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
6040 Fix last change.
6041
ab90a54d
KS
60422004-02-17 Kim F. Storm <storm@cua.dk>
6043
b26f249f
KS
6044 * xdisp.c (fast_find_position): Fix return value of new version;
6045 it was inverted compared to the 21.1 version.
6046 (get_window_cursor_type): Don't look at glyph if NULL.
6047 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 6048
ab90a54d
KS
6049 * keyboard.c: Rework previous change; it didn't consider that the
6050 buf array was allocated on the stack.
6051 (prev_read): Remove variable.
6052 (read_avail_input_buf): New static event buffer array.
b9568dfc 6053 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 6054 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
6055 Use in_read_avail_input to handle re-entrance; when re-entered,
6056 fully initialize and use tmp_buf array instead of read_avail_input_buf.
6057 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
6058 is always cleared on entry. To ensure that, we clear (just) the
6059 entries that were used before we return.
6060 (init_keyboard): Initialize read_avail_input_buf here.
6061
b6189c3b 60622004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
6063
6064 * cmds.c (Fend_of_line): Doc fix.
6065
7b5368c1
EZ
60662004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
6067
6068 * keyboard.c (prev_read): New static variable.
6069 (read_avail_input): Use it to zero out only those slots in buf[]
6070 that were used last time we were called.
6071
a6eeaa81 60722004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
6073
6074 * Makefile.in (obj): Move fringe.o from here...
6075 (XOBJ, MAC_OBJ): ...to here.
6076
159c348e
SE
60772004-02-16 Stephen Eglen <stephen@gnu.org>
6078
6079 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
6080
d2f14999
SM
60812004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
6082
b15aa9f9
SM
6083 * data.c (Fbyteorder):
6084 * fringe.c (Fdefine_fringe_bitmap):
6085 * xdisp.c (handle_single_display_prop):
d2f14999
SM
6086 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
6087
8d50508a
JR
60882004-02-16 Jason Rumney <jasonr@gnu.org>
6089
6090 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
6091
dd4497dc
ST
60922004-02-15 Steven Tamm <steventamm@mac.com>
6093
6094 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
6095 controlling emulation of a three button mouse with option and
6096 command keys.
6097 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 6098 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 6099
c9159cb3
KS
61002004-02-15 Kim F. Storm <storm@cua.dk>
6101
2cc52658
KS
6102 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
6103
c9159cb3
KS
6104 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
6105 Perform byte-swapping.
6106
12fde2dc
KS
61072004-02-14 Kim F. Storm <storm@cua.dk>
6108
6109 * dispextern.h (struct draw_fringe_bitmap_params): Change member
6110 bits from char to short to facilitate wider bitmaps.
6111 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
6112 member.
6113
6114 * fringe.c (struct fringe_bitmap): Change member bits from char to
6115 short to facilitate 16 bits wide bitmaps. Modify all standard
6116 bitmaps accordingly.
6117 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
6118 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
6119 (draw_fringe_bitmap): Ditto.
6120 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
6121 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
6122 handle up to 16 bits wide bitmaps.
6123 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 6124 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
6125
6126 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
6127 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
6128 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
6129
6130 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
6131 so it is no longer necessary to expand them here.
6132
6133 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
6134
9d7271e8
KS
61352004-02-12 Kim F. Storm <storm@cua.dk>
6136
6137 * window.c (Fwindow_fringes): Doc fix.
6138
706c1e4f
JD
61392004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6140
6141 * xselect.c (x_get_foreign_selection): Add new optional parameter
6142 time_stamp.
6143 (Fx_get_selection_internal): Ditto, pass time_stamp to
6144 x_get_foreign_selection.
6145
6146 * data.c (Fbyteorder): New function.
6147
c2d12b5d
JD
61482004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6149
6150 * atimer.c: Move include stdio.h to same place as in other files.
6151
6152 * region-cache.c: Ditto.
6153
6154 * sysdep.c: Ditto.
6155
6156 * xfaces.c: Ditto.
6157
4c1947b9
SS
61582004-02-09 Sam Steingold <sds@gnu.org>
6159
89458937 6160 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 6161
82722af3
KS
61622004-02-09 Kim F. Storm <storm@cua.dk>
6163
6164 * fringe.c: New file. Move original fringe related declarations
6165 and code from dispextern.h and xdisp.c here.
6166 Rework code to support user defined fringe bitmaps, redefining
6167 standard bitmaps, ability to overlay user defined bitmap with
6168 overlay arrow bitmap, and add faces to bitmaps.
6169 (Voverflow_newline_into_fringe): Declare here.
6170 (enum fringe_bitmap_align): New enum.
6171 (..._bits): All bitmaps are now defined without bitswapping; that
6172 is now done in init_fringe_once (if necessary).
6173 (standard_bitmaps): New array with specifications for the
6174 standard fringe bitmaps.
6175 (fringe_faces): New array.
6176 (valid_fringe_bitmap_id_p): New function.
6177 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
6178 (draw_fringe_bitmap): New function which draws fringe bitmap,
6179 possibly overlaying bitmap with cursor in right fringe or the
6180 overlay arrow in the left fringe.
6181 (update_window_fringes): Do not handle overlay arrow here.
6182 Compare and copy fringe bitmap faces.
6183 (init_fringe_bitmap): New function.
6184 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
6185 define and destroy user defined fringe bitmaps.
6186 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
6187 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
6188 (syms_of_fringe): New function. Defsubr new DEFUNs.
6189 DEFVAR_LISP Voverflow_newline_into_fringe.
6190 (init_fringe_once, init_fringe): New functions.
6191 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 6192
82722af3
KS
6193 * Makefile.in (obj): Add fringe.o.
6194 (fringe.o): New dependencies.
6195
6196 * dispextern.h (FRINGE_ID_BITS): New definition for number of
6197 bits allocated to hold a fringe number. Increase number of bits
6198 from 4 to 8 to allow user defined fringe bitmaps.
6199 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
6200 left_user_fringe_face_id, right_user_fringe_bitmap,
6201 right_user_fringe_face_id.
6202 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
6203 Move to new file fringe.c.
6204 (MAX_FRINGE_BITMAPS): Define here.
6205 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
6206 and overlay_p. Change member which to int.
6207 (struct redisplay_interface): New members define_fringe_bitmap
6208 and destroy_fringe_bitmap.
6209 (valid_fringe_bitmap_id_p): Add prototype.
6210 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
6211
6212 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
6213 arrows.
6214 (update_frame): Do flush_display if force_flush_display_p to
6215 ensure display (specifically fringes) are updated in a timely
6216 manner when resizing the frame by dragging the mouse.
6217 (update_window_line): Update row if overlay arrow changed.
6218 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
6219 or overlay arrow changed.
6220
6221 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
6222 syms_of_fringe, and init_fringe.
6223
6224 * frame.h (struct frame): New member force_flush_display_p.
6225
6226 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
6227 Add prototypes.
6228
a3993cc8 6229 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 6230 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
6231 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
6232 Use cursor color for displaying cursor in fringe.
82722af3
KS
6233 (x_redisplay_interface): Add null handlers for
6234 define_fringe_bitmap and destroy_fringe_bitmap functions.
6235
6236 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
6237 xterm.c to handle overlayed fringe bitmaps and to use cursor color
6238 for displaying cursor in fringe.
6239 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
6240 specific functions to define and destroy fringe bitmaps in fringe_bmp.
6241 (w32_redisplay_interface): Add them to redisplay_interface.
6242 (w32_term_init): Call w32_init_fringe instead of explicitly
6243 defining fringe bitmaps in fringe_bmp array.
6244 (x_delete_display): Call w32_reset_fringes instead of explicitly
6245 destroying fringe bitmaps in fringe_bmp array.
6246
6247 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
6248 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
6249 (continued_bits, continuation_bits, ov_bits, first_line_bits)
6250 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
6251 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
6252 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
6253 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
6254 Move fringe handling vars and code to new file fringe.c.
6255 (handle_display_prop): Handle left-fringe and right-fringe
6256 display properties; store user fringe bitmaps in iterator.
6257 (move_it_in_display_line_to): Handle cursor in fringe at eob.
6258 (clear_garbaged_frames): Set force_flush_display_p if resized.
6259 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
6260 (display_line): Handle cursor in fringe at eob.
6261 (display_line): Set row user fringe bitmaps from iterator.
6262
6263 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
6264 Use cursor color for displaying cursor in fringe.
6265 (x_redisplay_interface): Add null handlers for
6266 define_fringe_bitmap and destroy_fringe_bitmap functions.
6267
030400eb
JD
62682004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6269
6270 * macfns.c (Fx_change_window_property): Make doc string and
6271 parameters same as for X version.
6272
6273 * w32fns.c (Fx_change_window_property): Ditto.
6274
3af55251
KS
62752004-02-07 Kim F. Storm <storm@cua.dk>
6276
ec110e9e
KS
6277 * xdisp.c (hscroll_window_tree): Position cursor near to right
6278 margin in hscrolled window when jumping to end of line (rather
6279 than centering cursor).
6280
3af55251
KS
6281 * process.c (wait_reading_process_input): Don't do adaptive read
6282 buffering if waiting for a specific process.
6283
b0c138ce
LT
62842004-02-05 Luc Teirlinck <teirllm@auburn.edu>
6285
6286 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
6287 (Fread_minibuffer, Feval_minibuffer)
6288 (Fread_string, Fread_no_blanks_input)
6289 (Fcompleting_read): Doc fixes.
6290 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
6291 completion-regexp-list. Define Qcase_fold_search and staticpro it.
6292 (read_minibuf): Fix initial comment.
6293 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 6294 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
6295 checking completion-regexp-list.
6296 (Fdisplay_completion_list): Make it handle arguments that are
6297 symbols. Doc fix.
6298
9676f5ad 62992004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 6300
9676f5ad 6301 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 6302
9676f5ad
JD
6303 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
6304 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 6305 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 6306 format. Remove unused variable cons.
5b698285
JD
6307
6308 * xselect.c: Include stdio,h.
6309
fc1d15f6
KH
63102004-02-05 Kenichi Handa <handa@m17n.org>
6311
ebaff4af
KH
6312 * fns.c (Fset_char_table_range): Fix previous change.
6313
fc1d15f6
KH
6314 * buffer.c (Fset_buffer_multibyte): Fix docstring.
6315
9676f5ad
JD
63162004-02-04 Luc Teirlinck <teirllm@auburn.edu>
6317
6318 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
6319
da75761f
SM
63202004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
6321
6322 * keymap.c (Vmouse_events): Rename from Vmenu_events.
6323 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
6324
13c5d120
KH
63252004-02-04 Kenichi Handa <handa@m17n.org>
6326
6327 * fns.c (Fset_char_table_range): Handle charsets ascii,
6328 eight-bit-control, and eight-bit-graphic correctly.
6329
2883d842
JR
63302004-02-03 Jason Rumney <jasonr@gnu.org>
6331
6332 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
6333
6334 * w32fns.c (x_to_w32_font): Likewise.
6335
69eff41f
JD
63362004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6337
6338 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
6339 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
6340
6341 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
6342 ClientMessages.
6343
6344 * xselect.c: Include termhooks.h and X11/Xproto.h
6345 (x_check_property_data, x_fill_property_data)
6346 (x_property_data_to_lisp, mouse_position_for_drop)
6347 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 6348 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
6349 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
6350
da75761f 6351 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
6352 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
6353 OUTER_P.
6354 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
6355 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
6356 if vector_ret_p is true.
6357 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 6358
a6eeaa81 63592004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
6360
6361 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
6362 basename of FILE relative to it, not FILE itself.
6363
09721b31
KH
63642004-02-02 Kenichi Handa <handa@m17n.org>
6365
6366 * coding.c (coding_restore_composition): Check invalid
6367 composition data more rigidly.
6368
eb996101
LT
63692004-01-30 Luc Teirlinck <teirllm@auburn.edu>
6370
6371 * fileio.c (Fread_file_name_internal): Correctly handle the case
6372 where insert-default-directory is nil.
6373 (Fread_file_name): Always return an empty string if the user exits
6374 with an empty minibuffer. Adapt the docstring accordingly.
6375 (syms_of_fileio): Adapt the docstring of insert-default-directory
6376 to the change in Fread_file_name.
6377
a6eeaa81 63782004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
6379
6380 * alloca.c [!alloca]: Fix the prototype for xfree.
6381
13f52ed8
KH
63822004-01-29 Kenichi Handa <handa@m17n.org>
6383
6384 * fns.c (string_char_to_byte): Optimize for ASCII only string.
6385 (string_byte_to_char): Likewise.
6386
d57625a0
JR
63872004-01-28 Peter Runestig <peter@runestig.com>
6388
6389 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
6390
a64387ee 63912004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
6392
6393 * unexmacosx.c (unexec_copy): Do not copy more than was
6394 requested to prevent overwriting during unexec.
6395
eb37b8fd
JD
63962004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6397
ce38070a
JD
6398 * process.c (sigchld_handler): Add comment about not calling malloc.
6399
eb37b8fd
JD
6400 * process.h: Add extern to synch_process_termsig.
6401
a64387ee 64022004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 6403
da75761f
SM
6404 * macterm.c (make_mac_frame, make_mac_terminal_frame):
6405 Move setting of scroll bars from make_mac_frame to
6406 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 6407
d62a265d
RS
64082004-01-26 Richard M. Stallman <rms@gnu.org>
6409
6410 * search.c (Freplace_match): Handle nonexistent
6411 back-references properly.
6412
64132004-01-03 Richard M. Stallman <rms@gnu.org>
6414
6415 * window.c (decode_any_window): New function.
6416 (Fwindow_height, Fwindow_width, Fwindow_edges)
6417 (Fwindow_pixel_edges, Fwindow_inside_edges)
6418 (Fwindow_inside_pixel_edges): Use decode_any_window.
6419
ff236419
JD
64202004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6421
6422 * process.h: synch_process_termsig new variable.
6423
6424 * callproc.c: Define synch_process_termsig.
6425 (Fcall_process): Initiate synch_process_termsig to zero and
6426 check if non-zero and get signal name after subprocess has ended.
6427
6428 * process.c (sigchld_handler): Set synch_process_termsig
6429 if terminated by a signal. synch_process_death setting removed.
6430
6431 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
6432
41b867ea
AS
64332004-01-26 Andreas Schwab <schwab@suse.de>
6434
6435 * print.c (print_preprocess): Declare size as EMACS_INT to not
6436 lose bits.
6437 (print_object): Likewise.
6438 * alloc.c (Fpurecopy): Likewise.
6439
a08084ff
LT
64402004-01-25 Luc Teirlinck <teirllm@auburn.edu>
6441
6442 * window.c (Fwindow_minibuffer_p): Doc fix.
6443
b19ac475
JY
64442004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
6445
6446 * editfns.c (Fformat): Make both passes accept the same set of flags.
6447
fe905025
KH
64482004-01-23 Kenichi Handa <handa@m17n.org>
6449
6450 * fns.c (Fmd5): If OBJECT is a buffer different from the current
6451 one, set buffer to OBJECT temporarily.
6452
438fc6c0
SM
64532004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
6454
455316e2
SM
6455 * keyboard.c (kbd_buffer_gcpro): Remove.
6456 (kbd_buffer_store_event, clear_event, Fdiscard_input)
6457 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
6458 Don't initialize and/or maintain the variable any more. It was made
6459 redundant by my commit of 2003-06-15.
6460
438fc6c0
SM
6461 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
6462
5335a4ee
JD
64632004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6464
6465 * lisp.h: Add undef DECL_ALIGN.
6466
dcdaeebc
SM
64672004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
6468
6469 * process.c (wait_reading_process_input) [SYNC_INPUT]:
6470 Check interrupt_input_pending explicitly.
6471
6472 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
6473
6474 * keyboard.c (handle_async_input): New fun,
6475 extracted from input_available_signal.
6476 (input_available_signal, reinvoke_input_signal): Use it.
6477
9076a823
SM
64782004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
6479
d7107586
SM
6480 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
6481
6482 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
6483 manipulation macros for when tags are in the lower bits.
6484 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
6485 (DECL_ALIGN): New macro.
6486 (DEFUN): Use it.
6487
6488 * lisp.h [ENABLE_CHECKING]: Don't force union type.
6489
6490 * s/darwin.h (__attribute__): Remove outdated workaround.
6491
6492 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
6493
6494 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
6495 Don't check range of malloc address.
6496 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
6497
9076a823
SM
6498 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
6499
6500 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
6501
ba029065
KH
65022004-01-19 Kenichi Handa <handa@m17n.org>
6503
6504 * fontset.c (fontset_font_pattern): Fix previous change.
6505
7af0e8d7
MB
65062004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
6507
6508 * xdisp.c (Voverflow_newline_into_fringe)
6509 (move_it_in_display_line_to, redisplay_internal)
6510 (update_window_fringes, redisplay_window, display_line, window):
6511 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
6512 that it compiles without a window-system.
6513 * dispnew.c (direct_output_for_insert, update_window): Likewise.
6514
77a9cf69
KS
65152004-01-16 Kim F. Storm <storm@cua.dk>
6516
6517 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
6518
a64387ee 6519 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
6520 buffer_local_flags for indicate_buffer_boundaries.
6521 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
6522 default- variable for it.
6523
6524 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
6525 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 6526 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
6527 overflowing newlines into right fringe.
6528 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
6529 and indicate_bottom_line_p for buffer boundaries and scrolling.
6530 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
6531 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
6532 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
6533 and HOLLOW_SQUARE_BITMAP.
6534 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
6535 Add prototypes.
6536
6537 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
6538 instead of related indicator fields.
6539 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
6540 (direct_output_for_insert): Handle exact width lines like
6541 contined lines. Call update_window_fringes.
6542 (update_window): Call update_window_fringes.
6543 (scrolling_window): Don't skip desired rows with changed bitmaps.
6544 Check if fringe bitmaps changes when assigning scrolled rows.
6545
6546 * xdisp.c (Voverflow_newline_into_fringe): New variable.
6547 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
6548 (move_it_in_display_line_to): Overflow newline into fringe for
6549 rows that are exactly as wide as the window.
6550 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
6551 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
6552 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
6553 (fringe_bitmaps): Add new bitmaps.
6554 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
6555 Select proper bitmap for cursor in fringe when appropriate.
6556 Handle alignment of bitmap to top or bottom of row.
6557 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
6558 done by update_window_fringes.
6559 (update_window_fringes, draw_window_fringes): New functions.
6560 (redisplay_internal): Call update_window_fringes in case only
6561 cursor row is updated.
6562 (redisplay_window): Call update_window_fringes.
6563 Explicitly call draw_window_fringes if redisplay was done using
6564 the current matrix or the overlay arrow is in the window.
6565 (try_window_reusing_current_matrix): Mark scrolled rows for
6566 fringe update (to update buffer-boundaries / scrolling icons).
6567 (find_last_unchanged_at_beg_row): Handle exact width lines line
6568 continued lines.
6569 (display_line): Overflow newline into fringe for rows that are
6570 exactly as wide as the window. Don't append space for newline
d7107586 6571 in this case.
77a9cf69
KS
6572 (notice_overwritten_cursor): Explicitly clear cursor bitmap
6573 in fringe as if it had been overwritten.
6574 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 6575 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
6576 void-text-area-pointer as user options.
6577 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 6578
77a9cf69
KS
6579 * xterm.c (x_update_window_end): Call draw_window_fringes.
6580 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
6581 in row instead of actually drawing fringe bitmaps.
6582 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
6583 (x_draw_window_cursor): Draw cursor in fringe.
6584
6585 * w32term.c (x_update_window_end): Call draw_window_fringes.
6586 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
6587 in row instead of actually drawing fringe bitmaps.
6588 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
6589 (w32_draw_window_cursor): Draw cursor in fringe.
6590
6591 * macterm.c (x_update_window_end): Call draw_window_fringes.
6592 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
6593 in row instead of actually drawing fringe bitmaps.
6594 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
6595 (mac_draw_window_cursor): Draw cursor in fringe.
6596
a633a954
JD
65972004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6598
6599 * xterm.c (handle_one_xevent): Don't handle characters that are part
6600 of an old style (XLookupString) compose sequence.
6601
80460525
KH
66022004-01-15 Kenichi Handa <handa@m17n.org>
6603
6604 * search.c (Freplace_match): Use make_multibyte_string or
6605 make_unibyte_string according to the buffer multibyteness.
6606
7fc34f85
SM
66072004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
6608
6609 * alloc.c (struct interval_block, struct string_block)
6610 (struct symbol_block, struct marker_block, live_string_p)
6611 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
6612 Better preserve alignment for objects in blocks.
6613 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
6614
6615 * lread.c (defvar_per_buffer): Remove dead declaration.
6616
6617 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
6618 space size.
6619
66070bd1
JD
66202004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6621
6622 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
6623 if a key press should pop down. Only pop down if a key is pressed
6624 outside the menu/dialog.
6625 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
6626 popup_get_selection.
6627 (create_and_show_dialog): Pass 1 for down_on_keypress to
6628 popup_get_selection.
6629
de7515d6
JD
66302004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6631
6632 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
6633 BLOCK/UNBLOCK_INPUT.
6634
160b1b50
JD
66352004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6636
6637 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
6638 specified.
6639
3a9f36e6
KH
66402004-01-08 Kenichi Handa <handa@m17n.org>
6641
6642 * editfns.c (Fformat): Fix '&' to '&&'.
6643
3803eb32
AS
66442004-01-08 Andreas Schwab <schwab@suse.de>
6645
6646 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
6647 size if PSEUDOVECTOR_FLAG is set.
6648
9da88f37
KH
66492004-01-07 Kenichi Handa <handa@m17n.org>
6650
74ac5074
KH
6651 * charset.c (Fdeclare_equiv_charset): Fix docstring.
6652
9da88f37
KH
6653 * fontset.c (fontset_ref_via_base): Fix previous change.
6654
05faee07
KS
66552004-01-07 Kim F. Storm <storm@cua.dk>
6656
6657 * process.c (read_process_output): Only activate adaptive
6658 buffering if we read less than 256 bytes at a time.
6659
634910c8
KS
66602004-01-06 Kim F. Storm <storm@cua.dk>
6661
6662 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
6663 object and image object. Return glyph width and height.
6664 (mode_line_string, marginal_area_string): Ditto.
6665
6666 * dispextern.h (buffer_posn_from_coords, mode_line_string)
6667 (marginal_area_string): Fix prototypes.
6668
6669 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 6670 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
6671 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
6672
6673 * keyboard.c (make_lispy_position): Use modified mode_line_string,
6674 buffer_posn_from_coords, and marginal_area_string functions to
6675 include both string object and image object in the lispy position.
6676 Also add actual glyph width and height to position.
6677 (read_key_sequence): Use real buffer position from mouse
6678 event to find keymap property even when click is in marginal area.
6679
6680 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
6681 mode_line_string and marginal_area_string functions to handle
6682 both string object and image object properties.
d7107586 6683
57951c2e
AS
66842004-01-06 Andreas Schwab <schwab@suse.de>
6685
6686 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
6687 character.
6688
181e6a61
AS
66892004-01-02 Andreas Schwab <schwab@suse.de>
6690
d7107586
SM
6691 * macterm.c (emacs_options, x_initialized, same_x_server):
6692 Remove unused (and duplicated) definitions.
181e6a61 6693
31e0fbdd
KS
66942004-01-02 Kim F. Storm <storm@cua.dk>
6695
6696 * process.h (struct Lisp_Process): New members for adaptive read
6697 buffering: adaptive_read_buffering, read_output_delay, and
6698 read_output_skip.
6699
6700 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
6701 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
6702 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
6703 (process_output_delay_count, process_output_skip): New vars.
6704 (Vprocess_adaptive_read_buffering): New variable.
6705 (make_process): Initialize adaptive read buffering members.
6706 (Fstart_process): Set adaptive_read_buffering member.
6707 (deactivate_process): Cleanup adaptive read buffering.
6708 (wait_reading_process_input): Temporarily omit delayed
6709 subprocesses from the set of file descriptors to read from;
6710 adjust the select timeout if we skipped any subprocesses.
6711 (read_process_output): Increase adaptive read buffering delay if
6712 we read less than a full buffer; reduce delay when we read a
6713 full buffer.
6714 (send_process): Simplify using local Lisp_Process var.
6715 Reset adaptive read buffering delay after write.
6716 (init_process): Initialize process_output_delay_count and
6717 process_output_skip.
6718 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
6719
68c6a789
JR
67202004-01-01 Jason Rumney <jasonr@gnu.org>
6721
d7107586 6722 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 6723
3f70fe82
LT
67242003-12-30 Luc Teirlinck <teirllm@auburn.edu>
6725
6726 * print.c (Ferror_message_string): Add hyperlink in the docstring
6727 to the definition of `signal' in the Elisp manual.
6728 * eval.c (Fsignal): Ditto.
6729
b6189c3b 67302003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
6731
6732 * fns.c (internal_equal): Return t for two NaN arguments.
6733
7abd90ea
RS
67342003-12-29 Richard M. Stallman <rms@gnu.org>
6735
6736 * data.c (store_symval_forwarding): Handle setting
6737 default-fill-column, etc., by changing the value in
6738 buffers that use the default.
6739
6740 * minibuf.c (Fset_minibuffer_window): Doc fix.
6741
6742 * fileio.c (choose_write_coding_system): Ignore auto_saving
6743 if using the visited file for auto saves.
6744 (Fwrite_region): Don't update SAVE_MODIFF
6745 if auto-saving in visited file.
6746
3e7cfcdc
KH
67472003-12-29 Kenichi Handa <handa@m17n.org>
6748
6749 * dispextern.h (face_font_available_p): Extern it.
6750
6751 * fontset.c (Voverriding_fontspec_alist): New variable.
6752 (lookup_overriding_fontspec): New function.
d7107586 6753 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
6754 (fontset_font_pattern): Likewise.
6755 (regulalize_fontname): New function.
6756 (Fset_fontset_font): Call regulalize_fontname.
6757 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
6758 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
6759 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
6760
6761 * xfaces.c (face_font_available_p): New function.
6762
7abd90ea
RS
67632003-12-28 Richard M. Stallman <rms@gnu.org>
6764
6765 * buffer.c (Fother_buffer): Don't crash if BUF is nil
6766 or if its name is nil.
6767
6768 * buffer.c (Fkill_buffer): Don't delete auto-save file
6769 if it's the same as the visited file.
6770
de1d1a40
LT
67712003-12-28 Luc Teirlinck <teirllm@auburn.edu>
6772
6773 * coding.c (Fcheck_coding_system): Doc fix.
6774
204fb75e
KS
67752003-12-28 Kim F. Storm <storm@cua.dk>
6776
6777 * Makefile.in (eval.o): Depend on dispextern.h.
6778
6779 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
6780 image glyph using image's ascent.
6781 (mode_line_string): Return image glyph as object clicked on.
6782 Adjust y0 for image glyph using image's ascent.
6783
6784 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
6785 (struct glyph): New members, ascent and descent. Used to save
6786 this glyph's ascent and descent, instead of having.
6787 (struct glyph): Declare member face_id using FACE_ID_BITS.
6788 (find_hot_spot): Add prototype.
6789
6790 * keyboard.c (Qimage): Remove extern (now in lisp.h).
6791 (QCmap): Declare extern.
6792 (make_lispy_position): When position is inside image hot-spot,
6793 use hot-spot element's id as posn element.
6794
6795 * lisp.h (IMAGEP): New macro to test for image object type.
6796 (Qimage): Declare extern.
6797
6798 * macfns.c (Qimage): Remove extern (now in lisp.h).
6799 (valid_image_p, parse_image_spec): Use IMAGEP macro.
6800
6801 * macterm.c (Qface, Qmouse_face): Remove unused externs.
6802
6803 * w32fns.c (Qimage): Remove extern (now in lisp.h).
6804 (valid_image_p, parse_image_spec): Use IMAGEP macro.
6805
6806 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
6807
6808 * w32term.c (Qface, Qmouse_face): Remove unused externs.
6809
6810 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
6811 pointer types.
6812 (Qrelative_width, Qalign_to): Remove unused variables.
6813 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
6814 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
6815 image maps.
d7107586 6816 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
6817 new dx and dy args.
6818 Remove buffer_only_p arg (always 0). Simplify code accordingly.
6819 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
6820 than row's ascent and height, to get sensible height on tall rows.
6821 (build_desired_tool_bar_string): Remove Qimage extern.
6822 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
6823 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
6824 image glyph is alone on the last line.
6825 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 6826 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 6827 (on_hot_spot_p): New function to check if position is inside an
d7107586 6828 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
6829 (find_hot_spot): New function to search for image hot-spot.
6830 (Flookup_image_map): New defun to search for image hot-spot.
6831 (define_frame_cursor1): New aux function to determine frame pointer.
6832 (note_mode_line_or_margin_highlight, note_mouse_highlight):
6833 Handle `pointer' text property and :pointer image property to
6834 control frame pointer shape. Detect image hot-spots for pointer
6835 and help_echo properties. Use define_frame_cursor1.
6836 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 6837 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
6838 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
6839
6840 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
6841
6842 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
6843 (Qimage): Remove extern (now in lisp.h).
6844 (valid_image_p, parse_image_spec): Use IMAGEP macro.
6845
6846 * xmenu.c (show_help_event): Remove unused code.
6847
6848 * xterm.c (Qface, Qmouse_face): Remove unused externs.
6849 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
6850 row's ascent and descent, to get a sensible height on tall rows.
6851
fc052137
LT
68522003-12-25 Luc Teirlinck <teirllm@auburn.edu>
6853
6854 * minibuf.c (Fcompleting_read): Undo previous change.
6855
a64387ee 68562003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
6857
6858 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
6859 Arguments GCPRO'ed in call to file name handler.
6860
56ffd194
TTN
68612003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
6862
6863 * termcap.c (tgetst1): Scan for "%pN"; if all
6864 N are continuous in [1,9], remove all "%pN".
6865
5202d23d
JD
68662003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6867
f26fab36
JD
6868 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
6869
5202d23d
JD
6870 * xfaces.c (lface_fully_specified_p): Take into account that
6871 MAC OS always have unspecified stipple.
6872
8babaa59
TTN
68732003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
6874
6875 * tparam.c (tparam1): Add handling for `%pN', which
6876 means use param N for the next substitution.
6877
2d176448
TTN
68782003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
6879
6880 * xfaces.c (Fcolor_gray_p): Fix omission bug:
6881 In case `frame' is nil, consult the selected frame.
6882 (Fcolor_supported_p): Likewise.
6883
adb0708c
LT
68842003-12-23 Luc Teirlinck <teirllm@auburn.edu>
6885
000eeb15
LT
6886 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
6887 Doc fixes.
0dc72b11
LT
6888
6889 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
6890 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
6891 (Fread_from_minibuffer): Delete code moved into read_minibuf.
6892 Doc fix.
6893 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
6894 read_minibuf.
6895 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 6896 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 6897
2e4d132b
KH
68982003-12-03 Kenichi Handa <handa@m17n.org>
6899
6900 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
6901 encoding sequence.
6902
3999c705
KH
69032003-12-01 Kenichi Handa <handa@m17n.org>
6904
6905 * composite.c (syms_of_composite): Don't make the compostion hash
6906 table week.
6907
d344ecbb
LT
69082003-11-30 Luc Teirlinck <teirllm@auburn.edu>
6909
6910 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
6911 * textprop.c (Fget_char_property_and_overlay): New function.
6912 (syms_of_textprop): Defsubr it.
6913
03d6484e
JD
69142003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6915
019b1f0e
JD
6916 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
6917 to compile on terminal configuration.
6918
03d6484e
JD
6919 * fileio.c (Fread_file_name): Check use_file_dialog also before
6920 calling Fx_file_dialog.
6921
6922 * fns.c: use_file_dialog: New variable.
6923 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
6924
442d3fd0
KS
69252003-11-29 Kim F. Storm <storm@cua.dk>
6926
6927 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
6928 (syms_of_msdos): Don't intern and staticpro them.
6929
0f6a07a8
KS
69302003-11-27 Kim F. Storm <storm@cua.dk>
6931
6932 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
6933 coordinates relative to glyph at posn. If glyph is an image,
6934 return that as object at posn. Callers changed.
6935 (mode_line_string, marginal_area_string): Calculate and return
6936 pixel coordinates relative to glyph. Callers changed.
6937
6938 * dispextern.h (buffer_posn_from_coords, mode_line_string)
6939 (marginal_area_string): Fix prototypes.
6940 (window_box_left_offset, window_box_right_offset): Add prototypes.
6941
6942 * frame.h (get_specified_cursor_type, get_window_cursor_type):
6943 Remove prototypes.
6944
6945 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
6946
6947 * keyboard.c (make_lispy_position): Add x and y coordinates
6948 relative to the current glyph as 7th element of position.
6949 If glyph is an image, return it in the object element.
6950 (read_key_sequence): Skip checks for keymap property in cases
6951 where POSN_STRING is not a string (e.g. an image).
6952
6953 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
6954 (Vshow_text_cursor_in_void): New variable.
6955 (glyph_to_pixel_coords): Don't use negative hpos.
6956 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
6957 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 6958 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
6959 (calc_pixel_width_or_height): New aux function, implementing
6960 pixel based artihmetic for glyph widths and heights.
6961 (produce_stretch_glyph): Use calc_pixel_width_or_height for
6962 :width, :height, :align-to, and :ascent, thus allowing these to
6963 be specified in pixels as well as multiples of characters.
6964 Don't produce stretch glyphs with zero width or height.
6965 (get_specified_cursor_type): Declare static.
6966 (get_window_cursor_type): Declare static. Add glyph arg to be
6967 able to know when cursor is on an image; always substitute
6968 hollow-box cursor for filled-box cursor on images, to avoid
6969 negative images and flicker when blinking the cursor.
6970 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
6971 (note_mode_line_or_margin_highlight): Use non-text cursor rather
6972 than vertical scroll-bar cursor in display margins.
6973 (note_mouse_highlight): Use non-text cursor rather than text
6974 cursor in fringes and over images in the text area.
6975 Use non-text cursor when mouse pointer is outside editable text,
6976 i.e. in the void after end-of-line or end-of-buffer; this was
6977 already done for W32, but is now standard for all systems --
6978 user can toggle show-text-cursor-in-void to get old behaviour.
6979 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
6980 Vdisplay_pixels_per_inch.
6981
00498bfc
AS
69822003-11-25 Andreas Schwab <schwab@suse.de>
6983
6984 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
6985 EMACS_INT to not lose bits.
6986 (Ffillarray): Don't set bits beyond the size of a bool vector.
6987
edaa824d
KS
69882003-11-25 Kim F. Storm <storm@cua.dk>
6989
6990 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
6991 define this defun on systems that cannot use stderr as lvalue.
6992
74d6f539
GM
69932003-11-24 Gerd Moellmann <gerd@gnu.org>
6994
6995 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
6996 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
6997 ld's default is incompatible with unexec.
6998
6a1ff3ba
KS
69992003-11-23 Kim F. Storm <storm@cua.dk>
7000
63dc7c6b
KS
7001 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
7002 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
7003 (Fforce_window_update): New defun.
7004 (syms_of_window): Defsubr it.
7005 (Fset_window_margins, Fset_window_fringes): Doc fix.
7006
6a1ff3ba
KS
7007 * print.c (Fredirect_debugging_output): New defun.
7008 (syms_of_print): Defsubr it.
7009
aef109b7
LT
70102003-11-22 Luc Teirlinck <teirllm@auburn.edu>
7011
7012 * fns.c (Fset_char_table_parent): Doc fix.
7013
6a1ff3ba 70142003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
7015
7016 * dispnew.c (buffer_posn_from_coords): Return actual row/column
7017 for glyph clicked on, rather than (unused) pixel positions.
7018 (mode_line_string, marginal_area_string): Change X and Y args to
7019 pointers for returning actual row/column for glyph clicked on.
7020 Simplify and optimize loops.
7021
aef109b7
LT
7022 * dispextern.h (mode_line_string, marginal_area_string):
7023 Update prototypes.
63ccbe21
KS
7024
7025 * keyboard.c (make_lispy_position): New function for generating
7026 mouse click positions from frame and pixel coordinates.
7027 Enhanced to return buffer position and actual row/column for
7028 events outside the text area using updated mode_line_string and
7029 marginal_area_string functions.
7030 Return left-fringe and right-fringe clicks as such, rather than
7031 clicks in text area.
7032 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
7033 pixel_to_glyph_coords, as we never use the results.
7034 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
7035 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
7036 Eliminate unused code in WHEEL_EVENT handling.
7037 (make_lispy_movement): Use make_lispy_position.
7038
7039 * window.c (coordinates_in_window): Remove redundant tests.
7040 Fix returned X pixel value for left-margin.
7041
7042 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
7043 mode_line_string and marginal_area_string parameters.
7044
a64387ee 70452003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 7046
d7107586
SM
7047 * w32.c (struct the_group, getgrgid): Add.
7048 * mac.c (struct my_group, getgrgid): Add.
aef109b7 7049
3dbf3426
LT
70502003-11-21 Luc Teirlinck <teirllm@auburn.edu>
7051
7052 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
7053
cae8ddbb 70542003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 7055
d7107586
SM
7056 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
7057 include in call to file name handler. Optionally translate numeric
7058 UID and GID to strings. Update docstring.
7059 (directory_files_internal): Add parameter ID-FORMAT.
7060 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
7061 include in call to file name handler and call to
7062 directory_files_internal. Update Docstring.
7063 (Fdirectory_files): Add dummy parameter in call to
7064 directory_files_internal.
7065 * lisp.h (Qinteger): Add.
7066 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
7067 (Ffile_attributes): Add parameter.
7068 * data.c (Qinteger): Export.
cae8ddbb 7069
2550b848
LT
70702003-11-21 Luc Teirlinck <teirllm@auburn.edu>
7071
3dbf3426 7072 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 7073
88380018
KS
70742003-11-19 Kim F. Storm <storm@cua.dk>
7075
7076 * xdisp.c (init_iterator): Initialize it->start to position
7077 before reseating (in case start position is invisible).
7078 (init_to_row_start): Set it->start to row-start.
7079 (redisplay_window): Accept optional_new_start if start position
7080 is invisible (in which case IT_CHARPOS overshoots PT).
7081 (display_line): Setup row->start from it->start (rather than
7082 it->current which is wrong if first char on line is invisible).
7083 When done, reseat it->start to it->current (= start of next row).
7084 (expose_area): Fix exposure of text area when first char (e.g. TAB)
7085 is only partially visible.
7086
7087 * dispextern.h (struct it): New member start.
7088
854c1a59
SM
70892003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
7090
455316e2
SM
7091 * alloc.c (make_float, Fcons): Clear the markbit at init time.
7092 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
7093 of block_index outside of the macro call.
7094 (Fgarbage_collect): Remove null code.
7095
7096 * m/amdx86-64.h: Don't redefine XPNTR.
7097
854c1a59
SM
7098 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
7099 of VALMASK.
7100
7101 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
7102 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
7103 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
7104
7105 * lisp.h (VALMASK): Only define for non-union type.
7106 (MARKBIT): Remove.
7107 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
7108 (XTYPE): Define unconditionally.
7109 (XSETTYPE): Remove one more remnant.
7110 (EQ): Define differently for the union and non-union cases.
7111 (INTMASK): New bit mask.
7112 (struct Lisp_Marker): Move down to prepare for upcoming patch.
7113 (GC_EQ): Delegate to EQ.
7114
7115 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
7116
a0c6ef2d
JD
71172003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7118
7119 * xterm.c (x_window_to_scroll_bar): Move check of display to
7120 where window_id is compared.
7121
859492c4
KS
71222003-11-17 Kim F. Storm <storm@cua.dk>
7123
7124 * dispextern.h (struct it): New member first_vpos.
7125
7126 * xdisp.c (start_display): Set it->first_vpos.
7127 (try_window_id): Use first_vpos to start display in first _text_
7128 line if no reusable lines at start of window with header line.
7129
810f2256
JD
71302003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7131
7c402969 7132 * w32fns.c (XPutPixel):
854c1a59
SM
7133 * w32bdf.c (w32_init_bdf_font):
7134 * sunfns.c (sel_read):
7135 * process.c (Fmake_network_process):
7136 * frame.c (store_frame_param):
7137 * fontset.c (Fset_fontset_font):
7138 * emacs.c (shut_down_emacs):
a64387ee 7139 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 7140
a32e9bfd
JD
7141 * config.in: Regenerate.
7142
810f2256
JD
7143 * xfns.c (x_window_to_frame, x_any_window_to_frame)
7144 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7145 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
7146 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
7147 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
7148
7149 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
7150
7151 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
7152 (XTmouse_position, handle_one_xevent): Pass Display* to
7153 x_window_to_scroll_bar.
7154 (x_window_to_scroll_bar): Take a Display* argument.
7155 Check that display for frame is equal to Display* argument.
854c1a59 7156 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
7157 x_display_info_for_display instead. Use Display in xev instead
7158 of GDK_DISPLAY.
7159 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 7160 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
7161 (x_connection_closed): Call xg_display_close for GTK.
7162 (x_term_init): Call xg_display_open for additional displays.
7163 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
7164 for GTK.
7165
7166 * xmenu.c (single_menu_item, mouse_position_for_popup)
7167 (x_activate_menubar): Formatting adjustments.
7168
7169 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
7170 adjustments.
7171
7172 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
7173 (xg_display_close, xg_create_default_cursor)
7174 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
7175 handling.
854c1a59
SM
7176 (xg_left_ptr_cursor): Remove.
7177 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
7178 cursor here.
7179 (xg_win_to_widget): Take Display* argument, call
7180 gdk_xid_table_lookup_for_display.
7181 (xg_create_frame_widgets, xg_get_file_name, create_menus)
7182 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
7183 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
7184 in FRAME_X_DISPLAY_INFO.
7185 (xg_get_scroll_id_for_window): Take Display* argument.
7186 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 7187 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256 7188
78819ebb
KS
7189 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
7190 Display* argument.
7191 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
810f2256 7192
0b03cc78
JD
71932003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7194
7195 * xterm.c (x_detect_focus_change): Do not change focus frame for
7196 Enter/LeaveNotify if the current focus frame has explicit focus.
7197
77e688fa
KS
71982003-11-14 Kim F. Storm <storm@cua.dk>
7199
7200 * dispnew.c (update_text_area): Fix redisplay error when hscroll
7201 is active and first glyph is only partially visible.
854c1a59 7202
dd429b03
KH
72032003-11-13 Kenichi Handa <handa@m17n.org>
7204
7205 * xdisp.c (select_frame_for_redisplay): New function.
7206 (redisplay_internal): Record also selected_frame for
7207 unwind_redisplay. Call select_frame_for_redisplay before
7208 redrawing each frame.
7209 (unwind_redisplay): Argument changed to a cons.
7210
6d9266f4
LT
72112003-11-12 Luc Teirlinck <teirllm@auburn.edu>
7212
7213 * fns.c (Fstring_to_multibyte): Doc fix.
7214
80060eb3
KH
72152003-11-11 Kenichi Handa <handa@m17n.org>
7216
7217 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
7218
74305183
JD
72192003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7220
7221 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
7222 program specified positions.
7223
cfda993e
JD
72242003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7225
7226 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
7227
df211069
KH
72282003-11-08 Kenichi Handa <handa@m17n.org>
7229
7230 * Makefile.in (lisp): Add kannada.el.
7231 (shortlisp): Likewise.
7232
4307d534
KH
72332003-11-07 Kenichi Handa <handa@m17n.org>
7234
854c1a59
SM
7235 * coding.c (coding_allocate_composition_data):
7236 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
7237 (coding_restore_composition): Detect invalid composition data.
7238 Give Fstring and Fvector a Lispy integer, not C int.
7239
854c1a59
SM
72402003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
7241
7242 * floatfns.c (Flogb): Don't use VALMASK.
7243
7244 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
7245 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
7246
7247 * lisp.h (XINT): Move the cast to clarify what is going on.
7248 (GCTYPEMASK, XSETTYPE): Remove.
7249 (XGCTYPE): Make it an alias of XTYPE.
7250
d04103a1
JD
72512003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7252
7253 * xterm.c (x_term_init): Fix formatting.
7254
da18b5ac
JD
72552003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7256
78819ebb
KS
7257 * gtkutil.h (xg_have_tear_offs): Declare.
7258 (xg_keep_popup, xg_did_tearoff): Remove.
da18b5ac
JD
7259
7260 * gtkutil.c: Remove variable xg_did_tearoff.
7261 (xg_have_tear_offs): New function.
7262 (tearoff_remove): Just decrease xg_detached_menus.
7263 (tearoff_activate): Increase xg_detached_menus and call
7264 tearoff_remove when tearoff is removed.
854c1a59 7265 (xg_keep_popup): Remove function.
da18b5ac
JD
7266 (create_menus): Give add_tearoff_p as argument to recursive
7267 call to create_menus.
7268 (xg_create_widget): Use variables instead of multiple
7269 strcmp. Tell create_menus to create tear off only for
7270 menu bar menus.
7271 (xg_update_menubar): Change title for a detached menu also.
7272 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
7273 of deep_p.
7274 (xg_initialize): Initialize xg_detached_menus, remove
7275 initialization of xg_did_tearoff.
7276
7277 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
7278 xg_have_tear_offs returns non-zero.
7279 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
7280 call to xg_keep_popup.
7281
64d4923e
AC
72822003-11-01 Andrew Choi <akochoi@shaw.ca>
7283
7284 * macterm.c (XTread_socket): Handle menubar selection and grow
7285 window only for mouseDown events.
854c1a59 7286
6cc8bc07
JD
72872003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7288
7289 * xterm.c (x_term_init): For GTK part, increase x_initialized
7290 to check for more than one display. Use error instead of return 0.
7291
043131c4
AC
72922003-10-31 Andrew Choi <akochoi@shaw.ca>
7293
854c1a59 7294 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
7295 (copy_dysymtab): Call it.
7296
bdda99a1
LT
72972003-10-31 Luc Teirlinck <teirllm@auburn.edu>
7298
7299 * eval.c (Fdefvaralias): Doc fix.
7300
800f42ff 73012003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
7302
7303 * data.c (Fsetplist): Doc fix.
7304
ef35b389
LK
73052003-10-14 Lute Kamstra <lute@gnu.org>
7306
7307 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 7308
ef35b389 73092003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 7310
07107abc
KS
7311 * window.c (Fset_window_margins): Simplify arg checking.
7312
f7005886
RS
73132003-10-13 Richard M. Stallman <rms@gnu.org>
7314
7315 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
7316 (print_partial_compiled_pattern): Replace assert with a printout.
7317 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
7318
7319 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
7320
7321 * window.c (Fset_window_margins): Allow only integers as args.
7322 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
7323 Doc fixes.
7324
9c0c2af5
LK
73252003-10-13 Lute Kamstra <lute@gnu.org>
7326
7327 * window.c (Fset_window_fringes): Elaborate docstring.
7328
3f080e4e
AC
73292003-10-12 Andrew Choi <akochoi@shaw.ca>
7330
854c1a59 7331 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 7332
3f080e4e
AC
7333 * s/darwin.h (GC_MARK_STACK): Define.
7334
0aa513ed
JD
73352003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7336
7337 * window.c (shrink_windows): New function.
7338 (size_window): Call shrink_windows to calculate window sizes when
7339 shrinking frame with more than one window.
7340
6aa8858a
KS
73412003-10-12 Kim F. Storm <storm@cua.dk>
7342
7343 * xdisp.c (compute_fringe_widths): Doc fix.
7344
c2164d91
KH
73452003-10-08 Kenichi Handa <handa@m17n.org>
7346
854c1a59 7347 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 7348
f82ac129
KH
73492003-10-07 Kenichi Handa <handa@m17n.org>
7350
7351 * coding.c (Qcoding_system_define_form): New variable.
7352 (syms_of_coding): Intern and staticpro it.
7353 (Fcheck_coding_system): Try to autoload the definition of
7354 CODING-SYSTEM.
7355
9296c947
LT
73562003-10-05 Luc Teirlinck <teirllm@auburn.edu>
7357
7358 * fns.c (Frequire): Doc fix.
7359
c1f0671a
JD
73602003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7361
3d8c3826
JD
7362 * xfns.c (Fx_send_client_event): New function as a base for
7363 manipulating extended window manager hints.
6dc15d98 7364 (Fx_send_client_event): Remove unused variable s.
3d8c3826 7365
068ae0fd
JD
7366 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
7367 that function is removed.
7368
7369 * xterm.c (x_set_offset): Use move_offset_left/top instead of
7370 x/y_pixels_outer_diff.
7371 (x_check_expected_move): Calculate move_offset_left/top.
7372
7373 * xterm.h (struct x_output): New members: move_offset_top/left.
7374
854c1a59 7375 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
7376 call x_set_offset directly.
7377
7378 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
7379
96f09305
JD
7380 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
7381
7382 * xterm.c (x_delete_display): Free font names and font_encoder
7383 in dpyinfo->font_table.
7384
854c1a59
SM
7385 * xfns.c (Fx_close_connection): Only call XFreeFont here.
7386 Move xfree of font names to x_delete_display.
96f09305 7387
c1f0671a
JD
7388 * xterm.h (struct x_display_info): New member, wm_type.
7389 (struct x_output): New members, expected_top/left and
7390 check_expected_move.
7391
7392 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
7393 is received.
854c1a59
SM
7394 (handle_one_xevent): Rename x_check_expected_move from
7395 x_check_fullscreen_move.
c1f0671a
JD
7396 (x_set_offset): Only add WM decoration sizes to modified_top/left
7397 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 7398 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
7399 Removed fullscreen specific code. Use check_expected_move,
7400 expected_left/top instead. Also, set wm_type.
7401 (x_term_init): Initialize wm_type to unknown.
7402
7403 * frame.c (x_fullscreen_move): Remove addition of WM decoration
7404 sizes to move_x/y.
7405
be2fdba9
KH
74062003-10-03 Kenichi Handa <handa@m17n.org>
7407
7408 * macterm.c (x_load_font): Clear all members of FONTP before start
7409 filling them.
7410
74112003-10-02 Kenichi Handa <handa@m17n.org>
7412
7413 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
7414 before calling find_ccl_program_func. Call find_ccl_program_func
7415 only when fontp->font_encoder is not NULL.
7416
7417 * xterm.c (x_load_font): Clear all members of FONTP before start
7418 filling them.
7419
26a6e439
JPW
74202003-10-03 John Paul Wallington <jpw@gnu.org>
7421
7422 * keymap.c (map_keymap): Don't abort when binding is a vector.
7423
0d4c2dc2
JR
74242003-10-02 Jason Rumney <jasonr@gnu.org>
7425
854c1a59
SM
7426 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
7427 Sync dependencies with Makefile.in.
a63cf46f
JR
7428 (alloca.o): Remove.
7429
0d4c2dc2
JR
7430 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
7431 filling them.
7432
7433 * w32bdf.c (w32_load_bdf_font): Likewise.
7434
ab8f7d5c
RS
74352003-09-30 Richard M. Stallman <rms@gnu.org>
7436
7437 * term.c (set_tty_color_mode): Calculate current_mode_spec
7438 regardless of value of VAL.
7439
854c1a59 7440 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
7441 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
7442 Handle over_used when splitting UNDER.
7443
a64387ee 74442003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
7445
7446 * regex.c (regex_compile): Free the stack when returning from function.
7447
3413f972
KH
74482003-09-28 Kenichi Handa <handa@m17n.org>
7449
7450 * fontset.c (Finternal_char_font): Change return value to
7451 cons (FONT-NAME . GLYPH-CODE).
7452
a6eeaa81 74532003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
7454
7455 * term.c (tty_setup_colors): Treat any negative argument as -1.
7456
f98ddc99
KH
74572003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
7458
7459 * process.c (send_process): Delete unused temp_buf.
7460
66c8f1a8
DL
74612003-09-26 Dave Love <fx@gnu.org>
7462
7463 * xterm.c (x_bitmap_mask): Declare.
7464
ca716c26
DL
74652003-09-25 Dave Love <fx@gnu.org>
7466
7467 * Makefile.in (fns.o): Depend on md5.h.
7468
fbe57420
KS
74692003-09-25 Kim F. Storm <storm@cua.dk>
7470
7471 * window.c (set_window_buffer): Fix redisplay problems when
7472 switching between buffers with different display margin widths.
7473
ef6ae4ff
KS
74742003-09-23 Kim F. Storm <storm@cua.dk>
7475
7476 * process.c (set_socket_option): Fix :bindtodevice option.
7477 (Fset_network_process_option): Update process contact list when
7478 setting option succeeds.
7479 (Fmake_network_process): Doc fix.
7480
68e03c1c
DL
74812003-09-23 Dave Love <fx@gnu.org>
7482
7146d1c1 7483 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 7484
a6eeaa81 74852003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
7486
7487 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
7488 color mode is an integer number (it could be -1).
7489
8fe7d8c8
RS
74902003-09-22 Richard M. Stallman <rms@gnu.org>
7491
7492 * intervals.c (graft_intervals_into_buffer): Correct the main loop
7493 in the case where OVER is longer than UNDER.
7494
2f71b5ea
MY
74952003-09-22 Masatake YAMATO <jet@gyve.org>
7496
7146d1c1 7497 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 7498 `vertical_type'.
7146d1c1 7499
0c4da023
KS
75002003-09-21 Kim F. Storm <storm@cua.dk>
7501
7502 * frame.c (Vdefault_frame_scroll_bars): New variable.
7503 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
7504 (syms_of_frame): DEFVAR_LISP it, and initialize according to
7505 window-system default scroll bar position.
7506
b648413b
KS
7507 * window.c (Fwindow_scroll_bars): Doc fix.
7508
8f5b9e34
JD
75092003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7510
854c1a59 7511 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 7512
b0f23edf
RS
75132003-09-19 Richard M. Stallman <rms@gnu.org>
7514
7515 * atimer.h: Don't include lisp.h.
7516 (P_): Define it here (as well as elsewhere).
7517
7518 * print.c (Fprin1_to_string): Move the PRINTPREPARE
7519 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
7520
7521 * data.c (Fvariable_binding_locus): New function.
7522 (syms_of_data): defsubr it.
7523 (Flocal_variable_p): Delete duplicate call to indirect_variable.
7524
e1283999
DL
75252003-09-18 Dave Love <fx@gnu.org>
7526
ad5f3636
DL
7527 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
7528
e1283999
DL
7529 * process.c (Fnetwork_interface_info): Fix type error.
7530 (Fnetwork_interface_list): Doc fix.
7531 (read_process_output, read_process_output): Delete unused var.
7532
b8c7fd71
KS
75332003-09-17 Kim F. Storm <storm@cua.dk>
7534
7535 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
7536 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
7537 (Fnetwork_interface_info): Check that ifreq struct has required
7538 fields before accessing them; this requires that those fields are
7539 defined as macros, which may be too restrictive on some platforms,
7540 but it is better than failing on other platforms.
7541 (syms_of_process): Only defsubr above fns when included.
7542
11e0a411
DL
75432003-09-17 Dave Love <fx@gnu.org>
7544
7545 * unexalpha.c: Don't include varargs.h.
7546
e9c50801
KS
75472003-09-17 Kim F. Storm <storm@cua.dk>
7548
7549 * process.c (Fset_process_sentinel): Add sentinel to childp plist
7550 for network process.
7551 (socket_options): Add `:' prefix to option names. Add optbit field.
7552 (set_socket_option): Remove no_error arg and special handling of s < 0.
7553 Return 1<<optbit for known option, 0 for unknown.
7554 Do not interpret 0 as false for boolean option (only nil).
7555 Pass failed option and value to report_file_error.
7146d1c1 7556 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
7557 (Fset_network_process_option): New function to set just one option.
7558 (Fmake_network_process): Allow :coding arg to be a cons.
7559 Allow :server arg to be an integer specifying backlog size.
7560 Remove :options arg, and allow options to be specified directly
7561 as :KEY, VALUE pairs. Parse these options before binding socket.
7562 As before, :reuseaddr t is default for a server process, but this
7563 can now be disabled by specifying :reuseaddr nil.
7564 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
7565 (init_process): Availability of network options is now checked with
7566 simpler syntax (featurep 'make-network-process :OPTION); use loop to
7567 setup features.
7568 (syms_of_process): Fix defsubr's for the replaced functions.
7569
a0fc3644
DL
75702003-09-16 Dave Love <fx@gnu.org>
7571
7572 * Makefile.in: Depend on coding.h.
7573
6df2a645
KS
75742003-09-14 Kim F. Storm <storm@cua.dk>
7575
7576 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
7577 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
7578 (syms_of_process): Defsubr them.
7579
7580 * config.in: Regenerate.
7146d1c1
SM
7581
75822003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
7583
7584 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
7585 * m/news-r6.h (XUNMARK): Remove.
7586 * m/mips.h (XUNMARK): Remove.
7587 * m/mips-siemens.h (XUNMARK): Remove.
7588 * m/iris4d.h (XUNMARK): Remove.
7589 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
7590
0930c1a1
SM
75912003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
7592
31003b9e
SM
7593 * lisp.h (VALBITS): Don't remove 1 for the markbit.
7594 (union Lisp_Object): Use unsigned int for types. Remove markbit.
7595 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
7596 (XTYPE): Use unsigned right-shift.
7597 (XMARKBIT, XMARK, XUNMARK): Remove.
7598
0930c1a1
SM
7599 * alloc.c (init_intervals, init_symbol, init_marker):
7600 Don't preallocate anything.
7601 (Fgarbage_collect, mark_object): Ignore the markbit.
7602
7603 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
7604
19bb0fcd 76052003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
7606
7607 * xdisp.c (pint2hrstr): New function.
7608 (decode_mode_spec): Add `%i' and `%I' specs.
7609 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
7610 for `mode-line-format'.
7611
03bb6a06
AS
76122003-09-07 Andreas Schwab <schwab@suse.de>
7613
7614 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
7615 avoid warning.
7616
a6eeaa81 76172003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 7618
0930c1a1 7619 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 7620
ed159bbf
KS
76212003-09-03 Kim F. Storm <storm@cua.dk>
7622
7623 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
7624 change (superseded by 2002-08-30 change); the default blink-off
7625 cursor is now again "no cursor".
7626
fe64a394
JR
76272003-09-01 Jason Rumney <jasonr@gnu.org>
7628
7629 * makefile.w32-in (alloca.o): Remove.
7630 (coding.o): Depend on intervals.h
7631 (emacs.o, bytecode.o): Depend on window.h
7632
c0175e24
DL
76332003-09-01 Dave Love <fx@gnu.org>
7634
7635 * Makefile.in (alloca.o): Remove commands.
7636 (coding.o): Depend on intervals.h composite.h window.h.
7637 (emacs.o): Depend on window.h keyboard.h keymap.h.
7638 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
7639 (bytecode.o): Depend on window.h.
7640
a24d4cb2
JR
76412003-08-31 Jason Rumney <jasonr@gnu.org>
7642
4bc2315e
JR
7643 * w32term.c (w32_per_char_metric): Allow cached metrics to be
7644 returned even when font_type is unknown.
7645
a24d4cb2
JR
7646 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
7647
9d35adc7
JD
76482003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7649
7650 * xterm.c (x_term_init): Initialize new fields in x_display_info.
7651
7652 * xterm.h (struct x_display_info): Add red/green/blue_bits and
7653 *_offset.
7654
7655 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
7656 calculate pixel value.
7657
6f68b035
GM
76582003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
7659
0930c1a1
SM
7660 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
7661 Don't tell redisplay display is accurate when it's actually been
7662 paused for pending input.
6f68b035 7663
4828b4d7
RS
76642003-08-29 Richard M. Stallman <rms@gnu.org>
7665
7666 * dispnew.c (adjust_glyph_matrix): Call window_box
7667 whenever W is nonzero.
7668
7669 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
7670 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 7671 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
7672 Use indirect_variable to trace thru variable aliases.
7673
7674 * config.in: Updated.
7675
7676 * callint.c (Fcall_interactively): Save and restore
7677 Vthis_command, Vthis_original_command, real_this_command,
7678 and current_kboard->Vlast_command.
7679
7680 * abbrev.c (Fexpand_abbrev): Insert before deleting.
7681
e019878d
GM
76822003-08-29 Gerd Moellmann <gerd@gnu.org>
7683
7684 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
7685
85478bc6
KH
76862003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
7687
0930c1a1 7688 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
7689 (decode_coding_sjis_big5): Likewise.
7690
07ce82d3
JR
76912003-08-27 Jason Rumney <jasonr@gnu.org>
7692
d3703de3
JR
7693 * w32.c (sys_pipe): Protect against file descriptor overflow.
7694
ee4a01d1
JR
7695 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
7696
07ce82d3
JR
7697 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
7698
a64387ee 76992003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
7700
7701 * xfns.c (Vgtk_version_string): New variable.
7702 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
7703
a6eeaa81 77042003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 7705
0930c1a1 7706 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 7707
5459e42a
EZ
7708 * Makefile.in (msdos.o): Depend on intervals.h.
7709
0930c1a1 7710 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 7711
231d6cfb
JD
77122003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7713
7714 * xterm.h (struct x_display_info): New fields: client_leader_window
7715 and Xatom_wm_client_leader.
7716
7717 * xterm.c (x_initialize): Move call to x_session_initialize to ...
7718 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
7719
7720 * xsmfns.c (create_client_leader_window): New function.
7721 (x_session_initialize): Call create_client_leader_window, take
7722 dpyinfo as argument.
7723
7724 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
7725
7726 * Makefile.in (xsmfns.o): Add more depenedencies.
7727
afa88464
DL
77282003-08-21 Dave Love <fx@gnu.org>
7729
7730 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
7731
f730033e
KH
77322003-08-21 Kenichi Handa <handa@m17n.org>
7733
7734 * term.c (term_init): Fix previous change; don't rely on the
7735 length of `buffer' if TERMINFO is defined.
7736
6dca786c
DL
77372003-08-20 Dave Love <fx@gnu.org>
7738
7739 * atimer.h: Include lisp.h.
7740
7741 * lisp.h (EMACS_LISP_H): New.
7742 (popup_activated_flag): Don't declare.
7743
7744 * alloca.c: Some merging with gnulib. Change logic and doc
7745 concerning (x)malloc/(x)free -- no longer Emacs-specific.
7746 [DO_BLOCK_INPUT]: Don't include lisp.h.
7747 (xmalloc, xfree): Declare.
7748 (malloc): Don't declare.
7749
0930c1a1 7750 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
7751 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
7752 atimer.h, blockinput.h.
7753
7754 * alloc.c (lisp_align_malloc): Change type of `aligned'.
7755
78819ebb 7756 * alloca.s: Remove.
6dca786c 7757
3a06a6d9
RS
77582003-08-19 Gerd Moellmann <gerd@gnu.org>
7759
7760 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
7761 use -lncurses.
7762
7763 * term.c (term_init): Use a buffer of size 4096 for tgetent since
7764 FreeBSD returns something longer than 2044. Abort if the end of
7765 the buffer is overwritten.
7766
27eeee55
MB
77672003-08-19 Miles Bader <miles@gnu.org>
7768
7769 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
7770
2f297815
GM
77712003-08-19 Gerd Moellmann <gerd@gnu.org>
7772
f4446bbf
GM
7773 * alloc.c (lisp_align_malloc): Check for memory full when
7774 allocating ablocks, which also avoids freeing a pointer into an
7775 ablocks structure.
7776
7777 * puresize.h (BASE_PURESIZE): Increase to 1100000.
7778
0930c1a1 7779 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 7780
0e7d7aae
RS
77812003-08-16 Richard M. Stallman <rms@gnu.org>
7782
7783 * editfns.c (Fencode_time): Doc fix.
7784
77852003-08-16 David Ponce <david@dponce.com>
7786
7787 * fileio.c (Fwrite_region): Fix conditional expression to issue
7788 the right message.
7789
b6189c3b 77902003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
7791
7792 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 7793 Set default value to 1.
0e7d7aae 7794
5d551295
KH
77952003-08-15 Kenichi Handa <handa@m17n.org>
7796
7797 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
7798 what autoscaled.
7799 (best_matching_font): Once we find a better scalable font, set
7800 non_scalable_has_exact_height_p to 1.
7801 (try_font_list): Call try_alternative_families to try any family
7802 with the given registry.
7803
1661e56b
AS
78042003-08-09 Andreas Schwab <schwab@suse.de>
7805
f29181dc
AS
7806 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
7807
1661e56b
AS
7808 * print.c (print_string): Fix printing of multibyte string with
7809 nontrivial printcharfun.
7810
465aa50a
JD
78112003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7812
7813 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
7814
7815 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
7816
e430e5ba
KH
78172003-07-31 Kenichi Handa <handa@m17n.org>
7818
7819 * process.c (read_process_output): Return the actually read bytes
7820 instead of the result of decoding.
7821
97e7188e
KH
78222003-07-31 Kenichi Handa <handa@m17n.org>
7823
7824 * xterm.h (struct x_bitmap_record): New member have_mask.
7825
7826 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
7827 to 0.
7828 (x_create_bitmap_from_file): Likewise.
7829 (x_destroy_bitmap): Check have_mask member before freeing a mask.
7830 (x_destroy_all_bitmaps): Likewise.
7831 (x_create_bitmap_mask): Set have_mask member to 1.
7832
b53094d6
RS
78332003-07-30 Richard M. Stallman <rms@gnu.org>
7834
7835 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
7836
631f2082
JD
78372003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7838
7839 * gtkutil.c (xg_mark_data): Update calls to mark_object.
7840
c855f2ca
RS
78412003-07-29 Richard M. Stallman <rms@gnu.org>
7842
7843 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
7844 Conditionalize XIM code on HAVE_XIM.
7845
7846 * fns.c (Fclear_string): New function.
7847 (syms_of_fns): defsubr it.
7848
b6189c3b 78492003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 7850
0930c1a1 7851 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 7852
29ea8ae9
SM
78532003-07-22 Stefan Monnier <monnier@cs.yale.edu>
7854
7855 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
7856
7857 * buffer.c (delete_all_overlays): New function.
7858 * buffer.h (delete_all_overlays): Declare.
7859 * coding.c (run_pre_post_conversion_on_str):
7860 * print.c (temp_output_buffer_setup):
7861 * fileio.c (Finsert_file_contents):
7862 * minibuf.c (get_minibuffer): Use it.
7863
1dd7ccf2
AC
78642003-07-22 Andrew Choi <akochoi@shaw.ca>
7865
7866 * unexmacosx.c (unexec_regions_sort_compare):
7867 (unexec_regions_merge): New functions. Sort and merge unexec
7868 regions before dumping them.
7869
f57bd967
DL
78702003-07-22 Dave Love <fx@gnu.org>
7871
7872 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
7873
7cdee936
SM
78742003-07-21 Stefan Monnier <monnier@cs.yale.edu>
7875
7876 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
7877 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
7878 MARKBIT as the gcmarkbit for strings.
7879
e50886d3
RS
78802003-07-21 Richard M. Stallman <rms@gnu.org>
7881
7882 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
7883
29ea8ae9 7884 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
7885 (syms_of_fns): Corresponding change.
7886
7887 * alloc.c (syms_of_alloc): Doc fixes.
7888
78892003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
7890
7891 * s/netbsd.h: Use -Wl syntax.
7892
fdc39b59
RS
78932003-07-17 Richard M. Stallman <rms@gnu.org>
7894
7895 * xterm.c (xim_initialize): Redo 6/24 change.
7896
9c53385f
SM
78972003-07-15 Stefan Monnier <monnier@cs.yale.edu>
7898
7899 * buffer.c (copy_overlays): Use EMACS_INT for positions.
7900 (Fswitch_to_buffer): Don't signal an error when switching to the same
7901 buffer in a dedicated window.
7902
7903 * alloc.c: Use bitmaps for cons, as was done for floats.
7904 (init_float, init_cons): Let the normal code allocate the first block.
7905 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
7906 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
7907 New macros.
7908 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
7909 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
7910 (live_cons_p): Check the pointer is not past the `conses' array.
7911 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
7912 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
7913 (survives_gc_p): Use CONS_MARKED_P and simplify.
7914 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
7915
dde13196
PE
79162003-07-13 Paul Eggert <eggert@twinsun.com>
7917
7918 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
7919 puts it into BSS instead, at least on Solaris 8 and 9.
7920 This is a valid optimization, and it may occur on other platforms,
7921 so Emacs should not assume that initializing a static variable to
7922 zero puts it into data.
7923 * alloc.c (pure, staticvec):
7924 Initialize these arrays to nonzero, so that they're not
7925 put into BSS by that optimization.
7926
a801bc34
SM
79272003-07-13 Stefan Monnier <monnier@cs.yale.edu>
7928
7929 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
7930 (lisp_align_malloc): Use posix_memalign is available.
7931 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
7932 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
7933 for consistency. Update users.
7934
0c8b2afa
RS
79352003-07-13 Richard M. Stallman <rms@gnu.org>
7936
7937 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
7938
668c2ab0
JB
79392003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
7940
7941 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
7942 and use the Gtk+ function gtk_window_icon_from_file if available.
7943
7944 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
7945 handle mask of bitmaps.
7946 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
7947 mask property.
7948 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
7949
7950 * xterm.h (xg_set_icon): New function.
7951
800bebe3
RS
79522003-07-12 Paul Eggert <eggert@twinsun.com>
7953
7954 * unexelf.c (unexec): Consider a section to precede the .bss
7955 section if its addresses overlap that of .bss.
7956
69e38995
RS
79572003-07-12 Richard M. Stallman <rms@gnu.org>
7958
7959 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
7960
7961 * config.in (HAVE_CRTIN): Add #undef.
7962 (INLINE): Really inline only if OPTIMIZE is defined.
7963
7964 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
7965 END_FILES_1.
7966 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 7967 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
7968
7969 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
7970 (TERMINFO): Define.
7971 (LIBS_TERMCAP): Define.
7972 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
7973
7974 * xfns.c: Include libpng/png.h instead of png.h.
7975
f1d0c238
AS
79762003-07-11 Andreas Schwab <schwab@suse.de>
7977
7978 * buffer.c (modify_overlay): Update prototype.
7979 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
7980 Likewise.
7981
5f6bf5fe
SM
79822003-07-09 Stefan Monnier <monnier@cs.yale.edu>
7983
7984 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
7985 (struct interval): Move to intervals.h.
7986 (struct Lisp_Marker): Use EMACS_INT for position info.
7987 (forward_point): Remove prototype of defunct function.
7988 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
7989 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
7990 (syms_of_textprop, set_text_properties): Remove prototypes that are
7991 already in intervals.h.
7992
7993 * intervals.h (struct interval): Move from lisp.h.
7994 Use EMACS_INT for position and size info.
7995
7996 * coding.c: Include intervals.h for Fset_text_properties.
7997
7998 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
7999 position and length information.
8000
2765b457
SM
80012003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8002
8003 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
8004 position and length information.
8005
2410d73a
SM
80062003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8007
8008 Change overlays_after and overlays_before so the overlays themselves
8009 are linked into lists, rather than using cons cells. After all each
8010 Lisp_Misc already occupies 5 words, so we can add a `next' field to
8011 Lisp_Overlay for free and save up one cons cell per overlay (not
8012 to mention one indirection when traversing the list of overlay).
8013
8014 * lisp.h (struct Lisp_Overlay): New field `next'.
8015
8016 * buffer.h (struct buffer): Change overlays_before and overlays_after
8017 from Lisp lists of overlays to pointers to overlays.
8018
8019 * buffer.c (overlay_strings, recenter_overlay_lists):
8020 Fix typo in eassert in last commit.
8021 (unchain_overlay): New function.
8022 (add_overlay_mod_hooklist): Use AREF.
8023 (copy_overlays, reset_buffer, overlays_at, overlays_in)
8024 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
8025 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
8026 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
8027 (report_overlay_modification, evaporate_overlays, init_buffer_once):
8028 Adjust to new type of overlays_(before|after).
8029
8030 * alloc.c (mark_object): Mark the new `next' field of overlays.
8031 (mark_buffer): Manually mark the overlays_(after|before) fields.
8032
8033 * coding.c (run_pre_post_conversion_on_str):
8034 * editfns.c (overlays_around):
8035 * xdisp.c (load_overlay_strings):
8036 * fileio.c (Finsert_file_contents):
8037 * indent.c (current_column):
8038 * insdel.c (signal_before_change, signal_after_change):
8039 * intervals.c (set_point_both):
8040 * print.c (temp_output_buffer_setup): Use new type for
8041 overlays_(before|after).
8042
04812929
SM
80432003-07-08 Stefan Monnier <monnier@cs.yale.edu>
8044
8045 * buffer.c (report_overlay_modification): Don't run hooks while
8046 traversing the list of overlays.
8047
8048 * buffer.h (struct buffer): Use an int for overlay_center.
8049 (overlays_at, evaporate_overlays, recenter_overlay_lists)
8050 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
8051
8052 * buffer.c (reset_buffer, recenter_overlay_lists)
8053 (adjust_overlays_for_insert, adjust_overlays_for_delete)
8054 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
8055 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
8056 (overlays_at, evaporate_overlays, recenter_overlay_lists)
8057 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
8058
8059 * xdisp.c (fast_find_position): Remove unused var.
8060
8061 * cmds.c (Qexpand_abbrev): New sym.
8062 (syms_of_cmds): Initialize it.
8063 (internal_self_insert): Use it to call expand-abbrev.
8064
2e7ecf15
KS
80652003-07-09 Kim F. Storm <storm@cua.dk>
8066
f9711de4 8067 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 8068 was configured with --without-xim.
42f81f64 8069 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 8070
c6de56a0
RS
80712003-07-07 Richard M. Stallman <rms@gnu.org>
8072
8073 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
8074
8075 * alloc.c (Fgarbage_collect): Doc fix.
8076
b6189c3b 80772003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
8078
8079 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
8080
bfe1a3f7
SM
80812003-07-06 Stefan Monnier <monnier@cs.yale.edu>
8082
04812929
SM
8083 * minibuf.c (read_minibuf): UNGCPRO before returning.
8084 (Ftry_completion, Fall_completions): Doc fix.
8085
bfe1a3f7
SM
8086 * alloc.c (live_float_p): Check that p is not past the `floats' array,
8087 now that `floats' is not the last element of the struct any more.
8088
ee79d1aa
JR
80892003-07-06 Jason Rumney <jasonr@gnu.org>
8090
8091 * w32term.h (ClipboardSequence_Proc): New type.
8092
8093 * w32fns.c (clipboard_sequence_fn): New variable.
8094 (globals_of_w32fns): Initialize it.
8095
8096 * w32select.c (last_clipboard_sequence_number): New variable.
8097 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
8098 number if possible.
8099
49723c04
SM
81002003-07-06 Stefan Monnier <monnier@cs.yale.edu>
8101
4698665f
SM
8102 * m/amdx86-64.h (MARKBIT):
8103 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
8104 MARKBIT and ARRAY_MARK_FLAG any more.
8105
8106 * m/hp800.h (XSETMARKBIT):
8107 * m/sr2k.h (XSETMARKBIT):
8108 * lisp.h (XSETMARKBIT): Remove unused macro.
8109
49723c04
SM
8110 * lisp.h (mark_object): Change prototype.
8111
8112 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
8113 (last_marked): Change accordingly.
8114 (mark_interval, mark_maybe_object, mark_maybe_pointer)
8115 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
8116 (mark_buffer): Update calls to mark_object.
8117
8118 * bytecode.c (mark_byte_stack):
8119 * fns.c (sweep_weak_table):
8120 * keyboard.c (mark_kboards): Update calls to mark_object.
8121
1d660eca
JR
81222003-07-06 Jason Rumney <jasonr@gnu.org>
8123
8124 * alloc.c (struct ablock): Only include padding when there is some.
8125
618b5ae4
SM
81262003-07-04 Stefan Monnier <monnier@cs.yale.edu>
8127
8128 * alloc.c (ALIGN): Add casts to simplify usage.
8129 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
8130 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
8131 (struct ablock, struct ablocks): New types.
8132 (free_ablock): New global var.
8133 (lisp_align_malloc, lisp_align_free): New functions.
8134 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
8135 (struct float_block): Reorder and add gcmarkbits.
8136 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
8137 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
8138 (init_float, make_float): Use lisp_align_malloc.
8139 (free_float, live_float_p): Don't use `type' any more.
8140 (make_float): Use FLOAT_UNMARK to access to mark bit.
8141 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
8142 Use FLOAT_MARKED_P to access the mark bit.
8143 (pure_alloc): Simplify use of ALIGN.
8144 (mark_object): Use FLOAT_MARK to access the mark bit.
8145 (gc_sweep): Use new macros to access the float's mark bit.
8146 (init_alloc_once): Init free_ablock.
8147
8148 * lisp.h (struct Lisp_Float): Remove unused field `type'.
8149
3ef06d12
SM
81502003-06-27 Stefan Monnier <monnier@cs.yale.edu>
8151
8152 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
8153 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
8154 (allocate_buffer): Move.
8155 (string_bytes): Don't mask markbit of `size_byte'.
8156 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
8157 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
8158 Use the `size' field of buffers (rather than the `name' field) for
8159 the mark bit, as is done for all other vectorlike objects.
8160 Use the new macros to access the mark bit of vectorlike objects.
8161
e81043aa
RS
81622003-06-26 Richard M. Stallman <rms@gnu.org>
8163
8164 * puresize.h (BASE_PURESIZE): Increment base size.
8165
8166 * xdisp.c (fast_find_position): Enable Gerd's new definition.
8167
8168 * xterm.c (xim_initialize): Undo previous change.
8169
2d0834cc
SM
81702003-06-26 Stefan Monnier <monnier@cs.yale.edu>
8171
8172 * alloc.c (survives_gc_p): Simplify.
8173
8174 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
8175
8176 * window.c (Fset_window_dedicated_p): Simplify.
8177 (display_buffer_1): Don't raise the win from which minibuf was entered.
8178 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
8179 (Fminibuffer_selected_window): Simplify.
8180
8181 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
8182
8183 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
8184 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
8185
8186 * insdel.c (check_markers, adjust_markers_for_delete)
8187 (adjust_markers_for_insert, adjust_markers_for_replace)
8188 (prepare_to_modify_buffer, RESTORE_VALUE):
8189 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
8190 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
8191 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
8192 * alloc.c (Fmake_marker, free_marker, gc_sweep):
8193 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
8194 * editfns.c (save_excursion_restore, transpose_markers):
8195 * window.c (delete_window):
8196 * xdisp.c (message_dolog): Update for new types.
8197
d54ae3d8
JD
81982003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8199
a5f696ac
JD
8200 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
8201 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 8202 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
8203
8204 * frame.c (make_frame): Initialize default_face_done_p.
8205
8206 * frame.h (struct frame): Add default_face_done_p.
8207
d54ae3d8
JD
8208 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
8209 will be defined.
8210
2336fe58
SM
82112003-06-25 Stefan Monnier <monnier@cs.yale.edu>
8212
8213 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
8214 Initialize the new field `gcmarkbit'.
8215 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
8216 (mark_interval_tree): Don't mark the tree separately from the nodes.
8217 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
8218 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
8219 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
8220
8221 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
8222 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
8223 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
8224 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
8225 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
8226
bcea31c2
DL
82272003-06-24 Dave Love <fx@gnu.org>
8228
8229 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
8230
8231 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
8232 from gnulib.
8233
2601f59e
RS
82342003-06-21 Richard M. Stallman <rms@gnu.org>
8235
8236 * fileio.c (Fwrite_region): Alternate messages
8237 for append and partial write.
8238
8239 * keyboard.c (read_key_sequence): When converting upcase fn key to
8240 downcase, update fkey and keytran so `backspace' gets translated.
8241
8242 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
8243
8244 * process.c (wait_reading_process_input): Don't signal SIGIO
8245 in batch mode.
8246
b5d2c621
KH
82472003-06-17 Kenichi Handa <handa@m17n.org>
8248
8249 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
8250 composite.h.
8251
8252 * xselect.c: Don't include charset.h, coding.h, composite.h.
8253 (Qforeign_selection): New variable.
8254 (syms_of_xselect): Intern and static it.
8255 (selection_data_to_lisp_data): Return a unibyte string made from
8256 data with `foreign-selection' text property.
8257
6793bc63
SM
82582003-06-15 Stefan Monnier <monnier@cs.yale.edu>
8259
8260 * termhooks.h (EVENT_INIT): New macro.
8261
8262 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
8263
8264 * alloc.c (mark_kboards): Move to keyboard.c.
8265
8266 * keyboard.c (record_asynch_buffer_change, read_avail_input):
8267 * xterm.c (x_dispatch_event):
8268 * xmenu.c (find_and_call_menu_selection):
8269 * xdisp.c (handle_tool_bar_click):
8270 * w32menu.c (menubar_selection_callback):
8271 * sysdep.c (kbd_input_ast, read_input_waiting):
8272 * msdos.c (dos_rawgetc):
8273 * macterm.c (mac_check_for_quit_char):
8274 * macmenu.c (menubar_selection_callback):
8275 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
8276 data to kbd_buffer_store_event.
8277
b3ea810c
KS
82782003-06-15 Kim F. Storm <storm@cua.dk>
8279
8280 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 8281 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 8282
b8f75eda
KG
82832003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
8284
8285 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
8286
ba92ce48
KH
82872003-06-12 Kenichi Handa <handa@m17n.org>
8288
8289 * fileio.c (Fwrite_region): Save and restore restriction.
8290
b80263be
DL
82912003-06-12 Dave Love <fx@gnu.org>
8292
8293 * alloca.c (alloca): Declare arg as size_t.
8294
6793bc63
SM
8295 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
8296 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 8297
b23c0a83
DL
82982003-06-11 Dave Love <fx@gnu.org>
8299
8300 * search.c (shrink_regexp_cache): Use xrealloc.
8301 (syms_of_search): Use xmalloc.
8302
700e47c2
KS
83032003-06-10 Kim F. Storm <storm@cua.dk>
8304
8305 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
8306 Adjust phys_cursor.x to be relative to window box, rather than
8307 text area before checking -- to ensure cursor is redrawn when
8308 exposing window.
8309 Note: This also fixes a similar (older) bug if display margins
8310 are present.
8311
f11aa0b2
KH
83122003-06-06 Kenichi Handa <handa@m17n.org>
8313
8314 * coding.c (encoding_buffer_size): If coding->type is
8315 coding_type_ccl, double magnification on CRLF encoding.
8316
3d143690
JR
83172003-06-06 Jason Rumney <jasonr@gnu.org>
8318
8319 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
8320 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
8321
8322 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
8323 Mac too.
8324
f16205ca
DL
83252003-06-05 Dave Love <fx@gnu.org>
8326
b23c0a83
DL
8327 * strftime.c: Merge changes from gnulib.
8328
f16205ca
DL
8329 * mktime.c (__mktime_internal): Merge changes from gnulib
8330 involving year 69 and dst2.
8331
8332 Changes to merge with gnulib version and be consistent with the
8333 autoconf test:
8334
6793bc63
SM
8335 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
8336 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
8337 [HAVE_LOCALE_H]: Include locale.h.
8338 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
8339
9b87a0bc
KS
83402003-06-05 Kim F. Storm <storm@cua.dk>
8341
8342 * window.c (coordinates_in_window): Convert X and Y to window
8343 relative coordinates inside mode-line and header-line parts.
8344 Convert X and Y to margin area relative coordinates inside left
8345 and right display margin parts.
8346
5a8a15ec
JR
83472003-06-05 Jason Rumney <jasonr@gnu.org>
8348
8349 * w32fns.c (add_system_logical_colors_to_map): New function.
8350 (Fx_open_connection): Use it.
8351
01ed8ff1
SM
83522003-06-04 Stefan Monnier <monnier@cs.yale.edu>
8353
8354 * process.c (allocate_pty): Revert part of the previous patch.
8355 (Faccept_process_output): Simplify.
8356
b427b65d
JR
83572003-06-04 Jason Rumney <jasonr@gnu.org>
8358
8359 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
8360
8361 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
8362 (lispy_mouse_wheel_names): Remove.
8363 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
8364 Always define drag_and_drop_syms.
8365
8366 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
8367 WHEEL_EVENT events.
8368
914a8c47
SM
83692003-06-03 Stefan Monnier <monnier@cs.yale.edu>
8370
01ed8ff1
SM
8371 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
8372
914a8c47
SM
8373 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
8374
adcb132c
JD
83752003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8376
8377 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
8378 menu item label.
8379
be781fa7
RS
83802003-06-03 Richard M. Stallman <rms@gnu.org>
8381
8382 * window.c (Fwindow_edges): Doc fix.
8383 (Fwindow_pixel_edges, Fwindow_inside_edges)
8384 (Fwindow_inside_pixel_edges): New functions.
8385 (syms_of_window): defsubr them.
8386
8387 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
8388 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
8389
914a8c47
SM
83902003-06-02 Stefan Monnier <monnier@cs.yale.edu>
8391
8392 * dispnew.c (Fsit_for): Don't lie about the number of args.
8393
5b07197a
DL
83942003-06-02 Dave Love <fx@gnu.org>
8395
8396 * callproc.c: Use HAVE_FCNTL_H, not USG5.
8397 (syms_of_callproc) <process-environment>: Doc fix.
8398
8399 * doc.c: Use HAVE_FCNTL_H, not USG5.
8400
8401 * xfaces.c (font_rescale_ratio): Fix for K&R.
8402
8403 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
8404
8405 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
8406
8407 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
8408
8409 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
8410 (xg_create_frame_widgets): Use ENCODE_UTF_8.
8411
d7107586 8412 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
8413
8414 * xmenu.c (ENCODE_MENU_STRING): New.
8415 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
8416 Use it.
8417
8418 * coding.h (ENCODE_UTF_8): New.
8419 (Qutf_8): Declare.
8420
8421 * coding.c (Qutf_8): New.
8422 (syms_of_coding): Intern it.
8423
8424 * fns.c: Doc fixes.
8425
7335b336
KH
84262003-06-02 Kenichi Handa <handa@m17n.org>
8427
8428 * buffer.c (Fset_buffer_multibyte): Fix previous change.
8429
914a8c47
SM
84302003-06-01 Stefan Monnier <monnier@cs.yale.edu>
8431
8432 * lread.c (openp): Make sure STR is a string.
8433
9862c135
JR
84342003-06-01 David Ponce <david@dponce.com>
8435
cab27d04 8436 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
9862c135
JR
8437 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
8438
8439 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
8440 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
8441 (discard_mouse_events): Discard WHEEL_EVENT events too.
8442 (lispy_wheel_names, wheel_syms): New.
8443 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
cab27d04 8444 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
914a8c47 8445 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
8446
8447 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
8448 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
8449 WHEEL_EVENT events.
8450
f984e73e
JPW
84512003-05-31 John Paul Wallington <jpw@gnu.org>
8452
8453 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
8454 timer are in lisp/emacs-lisp.
8455
1efcd78f
KH
84562003-05-31 Kenichi Handa <handa@m17n.org>
8457
458c8af4
KH
8458 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
8459 region when a buffer is changed to unibyte.
8460
1efcd78f
KH
8461 * charset.h (VALID_LEADING_CODE_P): New macro.
8462 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
8463
778e2804
KH
8464 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
8465 is nonzero, accept multibyte form of eight-bit-control chars.
8466 (decode_composition_emacs_mule): Likewise.
8467 (decode_coding_emacs_mule): Likewise.
8468 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
8469 multibyte form of eight-bit-control chars.
8470
8471 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
8472 (Finsert_file_contents): If coding-system-for-read is bound to
8473 Qauto_save_coding, use the coding system emacs-mule with special
8474 setting for recovering a file.
8475 (choose_write_coding_system): On auto saving, use the coding
8476 system emacs-mule with special setting for auto saving.
8477 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
8478
034060e4
KH
84792003-05-30 Kenichi Handa <handa@m17n.org>
8480
8481 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
8482 properly before calling ccl_driver.
8483
778e2804 8484 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4 8485
cab27d04 8486 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
034060e4
KH
8487 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
8488 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
8489
595f5aa5
GM
84902003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
8491
8492 * xfaces.c (realize_default_face): Do not abort if lface is
8493 non-existent - reverts change from 2003-05-19.
8494
103e0180
KH
84952003-05-29 Kenichi Handa <handa@m17n.org>
8496
8497 * coding.c (decode_coding_iso2022): Pay attention to the byte
8498 sequence of CTEXT extended segment, and retain those bytes as is.
8499
85002003-05-28 Kenichi Handa <handa@m17n.org>
8501
cab27d04 8502 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
103e0180
KH
8503 of CODING_REPLACEMENT_CHARACTER.
8504 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
8505 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
8506 check this flag on encoding.
cab27d04
SM
8507 (encode_coding_sjis_big5):
8508 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
8509 (Fset_terminal_coding_system_internal):
8510 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
8511 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
8512
8513 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
103e0180
KH
8514 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
8515 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
8516
ff6a3bfb 85172003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 8518
ff6a3bfb
RS
8519 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
8520
8521 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 8522
1963c428
KS
85232003-05-28 Kim F. Storm <storm@cua.dk>
8524
8525 * xdisp.c (expose_window): Fix error in calculation of
8526 window relative coordinates of area to redisplay.
8527
2b5d4601
JR
85282003-05-27 Jason Rumney <jasonr@gnu.org>
8529
8530 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
8531
1c64a4a2
JB
85322003-05-27 David Ponce <david@dponce.com>
8533
8534 Handle W32 mouse wheel events as mouse click events, like in X.
8535
8536 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
8537 MOUSE_WHEEL_EVENT anymore.
8538
8539 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
8540 Scrolling down/up the mouse wheel is respectively mapped to mouse
8541 button 4 and 5.
8542 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
8543 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
8544 WM_MOUSEWHEEL events.
8545
2d031b89
AS
85462003-05-27 Andreas Schwab <schwab@suse.de>
8547
20464fdf
AS
8548 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
8549
2d031b89
AS
8550 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
8551 partially visible line.
8552
8553 * alloc.c (Fgarbage_collect): Fix last change.
8554
97bc76d4
JPW
85552003-05-26 John Paul Wallington <jpw@gnu.org>
8556
8557 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
8558
56613f06
SM
85592003-05-25 Stefan Monnier <monnier@cs.yale.edu>
8560
8561 * window.c (Fset_window_buffer): Add type of `keep_margins'.
8562 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
8563
8564 * window.h (window_box_text_cols): Declare.
8565
8566 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
8567 (x_draw_vertical_border): Remove unused var `f'.
8568
8569 * xfaces.c (build_scalable_font_name): Remove `unused var
8570 pixel_size' warning.
8571
8572 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
8573
8574 * unexelf.c (unexec): Remove `unused var n' warning.
8575
8576 * strftime.c (my_strftime_localtime_r): Remove `defined but
8577 unused' warning.
8578
8579 * process.c (allocate_pty): Remove `unused var stb' and
8580 `cp might be used uninitialized' warnings.
8581
8582 * dispnew.c (mode_line_string): Remove unused var `f'.
8583
8584 * coding.c (find_safe_codings): Remove unused var `i'.
8585
8586 * bytecode.c (Fbyte_code): Remove `unused val' warning.
8587
8588 * buffer.c (Fkill_buffer): Remove unused var `list'.
8589
8590 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
8591
93421a1f
JD
85922003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8593
8594 * frame.c (make_frame): Condition want_fullscreen with
8595 HAVE_WINDOW_SYSTEM.
8596
c4b8aebc
JB
85972003-05-25 Juanma Barranquero <lektu@terra.es>
8598
8599 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
8600 (Fwindow_scroll_bars): Fix typo in docstring.
8601
0416870b
KS
86022003-05-24 Kim F. Storm <storm@cua.dk>
8603
8604 The following changes serve several purposes:
8605
8606 1) Swap the position of fringes and display margins in windows, i.e.
8607 the fringes are now displayed between the margins and the text area
8608 (by default).
8609
8610 2) Allow fringe and scroll bar parameters to be set per-buffer and
8611 per-window (like display margins). Such settings are now stored
8612 in window configurations, preserved when frames are resized, and
9018a88e 8613 copied when windows are split vertically or horizontally.
0416870b
KS
8614 Several bugs related to display margins have been fixed.
8615
8616 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 8617
0416870b
KS
8618 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
8619 rather than FRAME_WIDTH (FRAME_FONT (f)).
8620
8621 5) Introduce a consistent naming of variables, members and macros
8622 depending on whether their value is measured in pixels or in
8623 canonical columns/lines. Pixel dimensions are named *_width and
8624 *_height, while canonical columns/lines are named *_cols and
8625 *_lines. Pixel positions are named *_x and *_y, while column/line
8626 positions are named *_col and *_line.
8627
8628 6) Consolidate more of the X, W32, and MAC gui code by moving
8629 common data into struct frame, and generalize it for the non-gui
8630 case by using suitable defaults.
8631
8632 7) Cleanup and consolidate the macros controlling frame and window
8633 layout into frame.h and window.h, and generalize the use of the
8634 various window_box_* functions (enhanced to handle the new fringe
8635 position and the per-window fringe and scroll bar settings).
8636
8637 * frame.h (struct frame): Rename members height to text_lines,
8638 width to text_cols, window_height to total_lines, window_width to
8639 total_cols, new_height to new_text_lines, new_width to
8640 new_text_cols. All uses changed.
8641 (struct frame): New members which consolidate common members of
8642 x_output, w32_output, and mac_output structures: left_pos,
8643 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
8644 win_gravity, size_hint_flags, border_width, internal_border_width,
8645 line_height, fringe_cols, left_fringe_width, right_fringe_width,
8646 want_fullscreen. All uses changed.
8647 (struct frame): New member column_width contaning the canonical
8648 column width, analogue to line_height. All uses changed.
8649 (struct frame): Rename members scroll_bar_pixel_width to
8650 config_scroll_bar_width, and scroll_bar_cols to
8651 config_scroll_bar_cols. All uses changed.
8652 (struct frame): New member scroll_bar_actual_width which
8653 consolidates and renames the vertical_scroll_bar_extra member of
8654 x_output, w32_output, and mac_output structures. All uses changed.
cab27d04 8655 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
0416870b
KS
8656 from x/w32/macterm.h files. All uses changed. Also change code
8657 which referred to f->output_data...->pixel_height.
cab27d04 8658 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
f63fd14e 8659 from x/w32/macterm.h files. All uses changed. Also change code
0416870b 8660 which referred to f->output_data...->pixel_width.
cab27d04 8661 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
0416870b 8662 Also change code which referred to f->height.
cab27d04 8663 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
0416870b
KS
8664 Also change code which referred to f->width.
8665 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
8666 to update new_text_lines and new_text_cols members directly.
cab27d04 8667 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
0416870b 8668 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
cab27d04 8669 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
0416870b
KS
8670 FRAME_SCROLL_BAR_COLS. All uses changed.
8671 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
cab27d04 8672 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
0416870b
KS
8673 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
8674 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
8675 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
cab27d04
SM
8676 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
8677 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
8678 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
0416870b
KS
8679 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
8680 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
cab27d04
SM
8681 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
8682 Unconditionally return line_height member (it now has proper value
8683 also for non-window frames).
8684 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
0416870b
KS
8685 return new column_width member (rather than the default font width).
8686 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
cab27d04 8687 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
0416870b
KS
8688 from x/w32/macterm.h files. Unconditionally return corresponding
8689 member of frame structure (they now have proper values also for
8690 non-window frames).
cab27d04 8691 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
0416870b
KS
8692 Calculate return value from left and right widths.
8693 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
8694 internal_border_width member (has proper value for non-window frame).
cab27d04
SM
8695 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
8696 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
8697 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
8698 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
8699 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
0416870b 8700 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 8701 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
0416870b 8702 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 8703 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
0416870b 8704 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
cab27d04 8705 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
0416870b 8706 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
cab27d04 8707 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
0416870b 8708 consolidated from x/mac/w32term.h.
cab27d04 8709 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
0416870b 8710 consolidated from x/mac/w32term.h.
cab27d04 8711 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
0416870b 8712 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
cab27d04 8713 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
0416870b
KS
8714 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
8715
8716 * window.h (struct window): Rename members left to left_col,
8717 top to top_line, height to total_lines, width to total_cols,
8718 left_margin_width to left_margin_cols, right_margin_width to
8719 right_margin_cols, orig_height to orig_total_lines, orig_top to
8720 orig_top_line. All uses changed.
8721 (struct window): New members left_fringe_width, right_fringe_width,
8722 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
8723 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
8724 New macros primarily used to simplify other macros.
8725 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
8726 referred to XINT (w->width).
8727 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
8728 referred to XINT (w->height).
8729 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
8730 referred to XINT (w->width) * canon_x_unit.
8731 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
8732 referred to XINT (w->height) * canon_y_unit.
8733 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
8734 referred to XINT (w->left).
cab27d04 8735 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
0416870b
KS
8736 all uses and code that referred to XINT (w->left) + XINT (w->width).
8737 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
8738 referred to XINT (w->top).
8739 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
8740 referred to XINT (w->top) + XINT (w->height).
8741 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
8742 referred to XINT (w->left) * canon_x_unit.
8743 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
8744 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
8745 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
8746 referred to XINT (w->top) * canon_y_unit.
8747 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
8748 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
8749 (WINDOW_LEFTMOST_P): New macro.
cab27d04 8750 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
0416870b 8751 All uses changed.
cab27d04 8752 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
0416870b 8753 All uses changed.
cab27d04 8754 (WINDOW_BOX_LEFT_EDGE_X): Rename from
0416870b
KS
8755 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
8756 Do not exclude left fringe width.
cab27d04 8757 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
0416870b
KS
8758 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
8759 Do not exclude fringe widths.
8760 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
8761 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
8762 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
8763 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
8764 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
8765 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
8766 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
8767 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
8768 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
8769 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
8770 New macros. Change code which referenced corresponding
8771 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
8772 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
8773 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
8774 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
8775 allow per-window scroll-bar settings.
8776 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
8777 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
8778 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
8779 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
8780 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
8781 FRAME_SCROLL_BAR_WIDTH.
8782 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 8783 (WINDOW_SCROLL_BAR_AREA_X): New macros.
cab27d04 8784 (WINDOW_HEADER_LINE_HEIGHT): Rename from
0416870b 8785 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
cab27d04 8786 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
0416870b 8787 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
cab27d04 8788 (WINDOW_BOX_TEXT_HEIGHT): Rename from
0416870b
KS
8789 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
8790 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
8791 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
cab27d04
SM
8792 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
8793 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
0416870b 8794 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
cab27d04 8795 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
0416870b
KS
8796 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
8797 (window_from_coordinates): Update prototype.
8798 (Fset_window_buffer): Update EXFUN.
8799 (set_window_buffer): Update prototype.
9018a88e 8800
0416870b 8801 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 8802 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
8803 changed.
8804 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
8805 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
8806 internal_border_width is now set to 0 for non-window frames.
8807 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
8808 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
8809 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
8810 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
8811 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
8812 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
8813 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
8814 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
8815 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 8816 Move to window.h and renamed [see window.h changes].
0416870b
KS
8817 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
8818 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
8819 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
8820 Use WINDOW_TOTAL_LINES.
0416870b
KS
8821 (frame_update_line_height): Remove prototype.
8822
8823 * buffer.h (struct buffer): Rename members measured in columns:
8824 left_margin_width to left_margin_cols, right_margin_width to
8825 right_margin_cols. All uses changed.
8826 New members left_fringe_width, right_fringe_width,
8827 fringes_outside_margins for per-buffer fringe settings.
8828 New members scroll_bar_width and vertical_scroll_bar_type for
8829 per-buffer scroll bar settings.
8830
8831 * buffer.c (init_buffer_once): Set buffer_defaults and
8832 buffer_local_flags for new buffer-local variables
8833 left_fringe_width, right_fringe_width, fringes_outside_margins,
8834 scroll_bar_width, and vertical_scroll_bar_type.
8835 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
8836 default-* variables for them.
8837
8838 * dispnew.c: Make (many) trivial substitutions for renamed and
8839 new macros in dispextern.h, frame.h and window.h.
8840 (mode_line_string): No need to adjust width for mode lines, as it
8841 is already adjusted by the caller.
8842 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 8843
0416870b
KS
8844 * frame.c: Make (many) trivial substitutions for renamed and
8845 new macros in dispextern.h, frame.h and window.h.
8846 (make_frame): Initialize left_fringe_width, right_fringe_width,
8847 fringe_cols, scroll_bar_actual_width, border_width,
8848 internal_border_width, column_width, line_height, x_pixels_diff,
8849 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
8850 members with values suitable for a non-window frames.
8851
8852 * gtkutil.c: Make (many) trivial substitutions for renamed and
8853 new macros in dispextern.h, frame.h and window.h.
9018a88e 8854
0416870b
KS
8855 * indent.c: Make (few) trivial substitutions for renamed and
8856 new macros in dispextern.h, frame.h and window.h.
8857
8858 * keyboard.c: Make (many) trivial substitutions for renamed and
8859 new macros in dispextern.h, frame.h and window.h.
8860 (make_lispy_event): Use window positions returned from
8861 window_from_coordinates when constructing the lisp event for
8862 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
8863 (incorrect) values locally.
8864 (make_lispy_movement): Use window positions returned from
8865 window_from_coordinates when constructing the lisp event, rather
8866 than calculating (incorrect) values locally.
8867
8868 * scroll.c: Make (some) trivial substitutions for renamed and
8869 new macros in dispextern.h, frame.h and window.h.
8870
8871 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
8872 scroll-bars.
8873
8874 * sysdep.c: Make (few) trivial substitutions for renamed and
8875 new macros in dispextern.h, frame.h and window.h.
8876
8877 * term.c: Make (some) trivial substitutions for renamed and
8878 new macros in dispextern.h, frame.h and window.h.
8879
8880 * widget.c: Make (few) trivial substitutions for renamed and
8881 new macros in dispextern.h, frame.h and window.h.
8882
8883 * window.c: Make (many) trivial substitutions for renamed and
8884 new macros in dispextern.h, frame.h and window.h.
8885 (make_window): Initialize new members
8886 left_margin_cols, right_margin_cols, left_fringe_width,
8887 right_fringe_width, fringes_outside_margins, scroll_bar_width,
8888 and vertical_scroll_bar_type.
cab27d04 8889 (coordinates_in_window): Adapt to new fringe/margin positions
9018a88e 8890 and per-window fringes and scroll-bars.
0416870b 8891 Fix bug related to incorrectly adjusting coordinates by
9018a88e 8892 frame's internal_border_width (the effect normally negible since
0416870b
KS
8893 the internal_border_width is typically 0 or 1 pixel, but very
8894 noticeable for an internal_border_width of e.g. 25 pixels).
8895 Upon successful return (other than ON_NOTHING), the coordinates
8896 are now always properly converted to window relative for the
8897 given display element.
8898 (window_from_coordinates): Add new parameters wx and wy to
8899 return the window relative x and y position in the returned
8900 window and part. A null arg means, don't return the position.
8901 All callers changed.
8902 (adjust_window_margins): New function which may reduce the width
8903 of the display margins if a window's text area is too small after
8904 resizing or splitting windows.
8905 (size_window): Fix bug that did not account for display margin
8906 widths when checking the minimum width of a window; use
8907 adjust_window_margins.
8908 (set_window_buffer): Call Fset_window_fringes and
8909 Fset_window_scroll_bars to setup per-window elements.
8910 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
8911 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
8912 (e.g. after splitting a window or resizing the frame).
8913 All callers changed.
0416870b
KS
8914 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
8915 (Fsplit_window): Duplicate original window's display margin,
8916 fringe, and scroll-bar settings; then call Fset_window_buffer with
8917 KEEP_MARGINS non-nil. This fixes a bug which caused a split
8918 window to only preserve the display margins in one of the windows.
c4b8aebc 8919 When splitting horizontally, call adjust_window_margins on both
0416870b 8920 windows to ensure that the text area of the new windows is non too
f9711de4 8921 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
8922 width of the split window was less than the width of the display
8923 margins.
cab27d04 8924 (window_box_text_cols): Rename from window_internal_width.
9018a88e 8925 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
8926 Fix bug that caused vertical separator to be subtracted also on
8927 window frames. Fix another bug that did not reduce the returned
8928 value by the columns used for display margins.
8929 (window_scroll_line_based): Fix bug related to scrolling too much
8930 when display margins are present (implicitly fixed by the fix to
8931 window_box_text_cols).
8932 (scroll_left, scroll_right): Fix bug related to scrolling too far
8933 by default when display margins are present (implicitly fixed by
8934 the fix to window_box_text_cols).
8935 (struct saved_window): Rename members left to left_col, top to
8936 top_line, width to total_cols, height to total_lines, orig_top to
8937 orig_top_line, orig_height to orig_total_lines. All uses changed.
8938 New members left_margin_cols, right_margin_cols,
8939 left_fringe_width, right_fringe_width, fringes_outside_margins,
8940 scroll_bar_width, and vertical_scroll_bar_type for saving
8941 per-window display elements.
8942 (Fset_window_configuration): Restore display margins, fringes,
8943 and scroll bar settings. This fixes a bug which caused display
8944 margins to be discarded when saving and restoring a window
8945 configuration.
8946 (save_window_save): Save display margins, fringes, and scroll bar
8947 settings. This fixes a bug which caused display margins to be
8948 discarded when saving and restoring a window configuration.
8949 (Fset_window_margins): Do nothing if display margins are not
8950 really changed. Otherwise, call adjust_window_margins to ensure
8951 the text area doesn't get too narrow. This fixes a bug which
f9711de4 8952 could cause Emacs to trap if setting display margins wider than
0416870b
KS
8953 the width of the window.
8954 (Fset_window_fringes): New defun to allow user to specifically set
8955 this window's fringe widths and position vs. display margins.
cab27d04 8956 (Fwindow_fringes): New defun to return window's actual fringe settings.
0416870b
KS
8957 (Fset_window_scroll_bars): New defun to allow user to specifically
8958 set this window's scroll bar width and position.
8959 (Fwindow_scroll_bars): New defun to return window's actual scroll
8960 bar settings.
8961 (compare_window_configurations): Also compare display margins,
8962 fringes, and scroll bar settings.
8963 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
8964
8965 * xdisp.c: Make (many) trivial substitutions for renamed and
8966 new macros in dispextern.h, frame.h and window.h.
8967 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 8968 and new fringe vs. display margin position. Note that returned
0416870b
KS
8969 value is no longer guaranteed to be a whole multiple of the frame
8970 column width, since per-window fringes may now be any width.
8971 (window_box_left_offset): New function like window_box_left, but
8972 value is relative to left border of window (rather than frame).
8973 (window_box_right_offset): New function like window_box_right,
8974 but value is relative to left border of window.
8975 (window_box_left): Adapt to per-window fringes and scroll bars,
8976 and new fringe vs. display margin position. Simplify by using
8977 WINDOW_LEFT_EDGE_X and window_box_left_offset.
8978 (window_box): Allow null args for unnecessary return values;
8979 change/simplify relevant callers.
8980 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
8981 and new fringe vs. display margin position.
8982 Use window_box_left_offset and window_box_right_offset
0416870b 8983 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
8984 scroll bars, and new fringe vs. display margin position.
8985 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
8986 (draw_fringe_bitmap): Rework to handle per-window fringes and new
8987 fringe vs. display margin position.
8988 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
8989 (redisplay_window): Adapt to per-window scroll bars.
8990 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
8991 bars, and new fringe vs. display margin position.
8992 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 8993 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
8994 bars, and new fringe vs. display margin position. Fix bug which
8995 increased total width of full_width rows by width of scroll bars
8996 although window's total width already includes that.
8997 (x_fix_overlapping_area): Simplify using window_box_left_offset.
8998 (expose_area): Simplify using window_box_left_offset.
8999 (x_draw_vertical_border): Handle per-window scroll bar settings,
9000 mixing windows with left, right and no scroll bars.
9001
9002 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
9003 where it's used in x_list_fonts (for clarity).
9004 (frame_update_line_height): Remove unused function; functionality
9005 is now done directly when setting the default font in x_set_font.
9006
9007 * xfns.c: Make (many) trivial substitutions for renamed and
9008 new macros in dispextern.h, frame.h and window.h.
9009
9010 * xmenu.c: Make (some) trivial substitutions for renamed and
9011 new macros in dispextern.h, frame.h and window.h.
9012
9013 * xterm.h (struct x_output): Move members left_pos, top_pos,
9014 border_width, pixel_height, pixel_width, line_height,
9015 internal_border_width, vertical_scroll_bar_extra,
9016 left_fringe_width, right_fringe_width, fringe_cols,
9017 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9018 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
9019 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9020 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9021 (PIXEL_WIDTH, PIXEL_HEIGHT)
9022 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9023 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9024 frame.h and renamed [see frame.h changes].
9025 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9026 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9027 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9028 and renamed [see frame.h changes].
9018a88e 9029
0416870b
KS
9030 * xterm.c: Make (several) trivial substitutions for renamed and
9031 new macros in dispextern.h, frame.h and window.h.
cab27d04 9032 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
9033 (scroll_run): Adapt to new fringe position.
9034 (glyph_rect): Use window coordinates returned from
9035 window_from_coordinates rather than frame_to_window_pixel_xy.
9036 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
9037 scroll-bars.
9038 (handle_one_xevent): Simplify a USE_GTK conditional.
9039 (x_clip_to_row): Remove superfluous whole_line_p arg and code
9040 (fringes are now inside margins, i.e. always in the clipping area).
9041 All callers changed.
9042 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9043 directly, then call compute_fringe_widths. Don't call
9044 frame_update_line_height.
9045
9046 * w32term.h (struct w32_output): Move members left_pos, top_pos,
9047 border_width, pixel_height, pixel_width, line_height,
9048 internal_border_width, vertical_scroll_bar_extra,
9049 left_fringe_width, right_fringe_width, fringe_cols,
9050 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9051 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
9052 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9053 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9054 (PIXEL_WIDTH, PIXEL_HEIGHT)
9055 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9056 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9057 frame.h and renamed [see frame.h changes].
9058 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9059 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9060 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9061 and renamed [see frame.h changes].
9018a88e 9062
0416870b
KS
9063 * w32term.c: Make (several) trivial substitutions for renamed and
9064 new macros in dispextern.h, frame.h and window.h.
cab27d04 9065 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
9066 (glyph_rect): Use window coordinates returned from
9067 window_from_coordinates rather than frame_to_window_pixel_xy.
9068 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
9069 scroll-bars.
9070 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
9071 (fringes are now inside margins, i.e. always in the clipping area).
9072 All callers changed.
9073 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9074 directly, then call compute_fringe_widths. Don't call
9075 frame_update_line_height.
9076
9077 * w32console.c: Make (few) trivial substitutions for renamed and
9078 new macros in dispextern.h, frame.h and window.h.
9079
9080 * w32fns.c: Make (many) trivial substitutions for renamed and
9081 new macros in dispextern.h, frame.h and window.h.
9082
9083 * w32menu.c: Make (few) trivial substitutions for renamed and
9084 new macros in dispextern.h, frame.h and window.h.
9085
9086 * macterm.h (struct mac_output): Move members left_pos, top_pos,
9087 border_width, pixel_height, pixel_width, line_height,
9088 internal_border_width, vertical_scroll_bar_extra,
9089 left_fringe_width, right_fringe_width, fringe_cols,
9090 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9091 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
9092 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9093 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9094 (PIXEL_WIDTH, PIXEL_HEIGHT)
9095 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9096 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9097 frame.h and renamed [see frame.h changes].
9098 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9099 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9100 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9101 and renamed [see frame.h changes].
9018a88e 9102
0416870b
KS
9103 * macterm.c: Make (several) trivial substitutions for renamed and
9104 new macros in dispextern.h, frame.h and window.h.
cab27d04 9105 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
9106 (glyph_rect): Use window coordinates returned from
9107 window_from_coordinates rather than frame_to_window_pixel_xy.
9108 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
9109 scroll-bars.
9110 (x_clip_to_row): Remove superfluous whole_line_p arg and code
9111 (fringes are now inside margins, i.e. always in the clipping area).
9112 All callers changed.
9113 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9114 directly, then call compute_fringe_widths. Don't call
9115 frame_update_line_height.
9116
9117 * macfns.c: Make (several) trivial substitutions for renamed and
9118 new macros in dispextern.h, frame.h and window.h.
9018a88e 9119 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
9120
9121 * macmenu.c: Make (few) trivial substitutions for renamed and
9122 new macros in dispextern.h, frame.h and window.h.
9123
9124 * msdos.h (struct x_output): Remove members left_pos, top_pos,
9125 and line_height, and use corresponding new members in struct
9126 frame. All uses changed.
9127 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
9128 superseeded by corresponding macros in frame.h.
9129
9130 * msdos.c: Make (several) trivial substitutions for renamed and
9131 new macros in dispextern.h, frame.h and window.h.
9132 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 9133 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
9134 (internal_terminal_init): No need to initialize line_height here;
9135 it now defaults to 1.
9136
9018a88e
SM
91372003-05-24 Stefan Monnier <monnier@cs.yale.edu>
9138
9139 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
9140 dropping `down' events.
9141
016bd3c0
AS
91422003-05-24 Andreas Schwab <schwab@suse.de>
9143
9144 * coding.c (find_safe_codings): Fix last change.
9145
4dacadcc
TTN
91462003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
9147
9148 * xfns.c (x_window): Fix typo from 2003-05-21 change.
9149
319830ce
SM
91502003-05-23 Stefan Monnier <monnier@cs.yale.edu>
9151
9018a88e
SM
9152 * xdisp.c (display_mode_element): Increase max depth.
9153 Simplify the error handling code. Use a different error string
9154 for the case where we hit the depth limit.
9155
319830ce
SM
9156 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
9157
9158 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
9159
91602003-05-21 Stefan Monnier <monnier@cs.yale.edu>
9161
9162 * intervals.c (get_local_map): Don't get char-property of previous
9163 point any more: get_pos_property already does it and better.
9164
c67de8ba
DL
91652003-05-21 Dave Love <fx@gnu.org>
9166
9167 [Merged from unicode branch.]
9168
9169 * xfns.c (x_window, x_window): Use use_xim.
9170
9171 * xterm.c (use_xim): Initialize.
9172 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
9173 (x_term_init): Maybe set use_xim.
9174
9175 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
9176
edd3ff1d
JR
91772003-05-21 Jason Rumney <jasonr@gnu.org>
9178
9179 * unexw32.c (_start): Remove _fmode initialization.
9180
9181 * emacs.c (main) [WINDOWSNT]: Move it here.
9182
463f55ee
DL
91832003-05-20 Dave Love <fx@gnu.org>
9184
9185 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
9186
af253914
RS
91872003-05-19 Richard M. Stallman <rms@gnu.org>
9188
9189 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
9190 as value for QCfont attribute.
9191 (realize_default_face): lface should already exist; crash if not.
9192 Specify 0 for FORCE_P when calling set_lface_from_font_name.
9193
9194 * frame.c (Fignore_event): Doc fix.
9195
1d211019
KH
91962003-05-19 Kenichi Handa <handa@m17n.org>
9197
9198 * coding.c (decode_coding_string): Handle post-read-conversion
9199 even if the coding doesn't require decoding.
9200
4dd68254
RS
92012003-05-18 Richard M. Stallman <rms@gnu.org>
9202
9203 * callproc.c (Fcall_process_region): Doc fix.
9204
14d87dc9
SM
92052003-05-17 Stefan Monnier <monnier@cs.yale.edu>
9206
deca5d96
SM
9207 * lread.c (Fload): Print a message if package is obsolete.
9208
14d87dc9
SM
9209 * window.c (Fselect_window): Add optional `norecord' arg.
9210 (select_window_1): Fold into Fselect_window.
9211 (select_window_norecord): New function.
9212 (temp_output_buffer_show): Use it. Preserve current buffer.
9213
9214 * window.h (Fselect_window): Update declaration.
9215
9216 * window.c (delete_window, Fother_window, Fset_window_configuration):
9217 * minibuf.c (read_minibuf):
9218 * macterm.c (x_new_focus_frame):
9219 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
9220 * callint.c (Fcall_interactively):
9221 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
9222
9223 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
9224
78f52183
DK
92252003-05-17 David Kastrup <dak@gnu.org>
9226
9227 * process.c (read_process_output): Back out change from 2003-03-09.
9228
14d87dc9
SM
92292003-05-17 Stefan Monnier <monnier@cs.yale.edu>
9230
9231 * editfns.c (get_pos_property): Don't assume that `object' = nil.
9232
9233 * textprop.c (text_property_stickiness): New arg `buffer'.
9234
9235 * intervals.h (text_property_stickiness): New arg `buffer'.
9236 (get_pos_property): Declare.
9237
9238 * intervals.c (get_local_map): Use get_pos_property, to obey
9239 stickiness and empty overlays.
9240 (create_root_interval, graft_intervals_into_buffer): Use BEG.
9241 (merge_properties, intervals_equal, merge_properties_sticky):
9242 Use XCAR, XCDR.
9243 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
9244
1fd1cc2f
RS
92452003-05-17 Richard M. Stallman <rms@gnu.org>
9246
4f9f637a
RS
9247 * minibuf.c (read_minibuf): If buffer is empty, record the default
9248 in the history.
9249 (Fminibuffer_complete_word): When deleting the overlap, take account
9250 of its real position.
9251
9252 * fns.c (map_char_table): Fix previous change.
9253
1fd1cc2f
RS
9254 * syntax.c (find_defun_start):
9255 When open_paren_in_column_0_is_defun_start,
9256 return beginning of buffer.
9257
9258 * lisp.h (map_char_table): Declare added arg.
9259
9260 * fns.c (map_char_table): New arg TABLE gets the master table.
9261 All calls changed.
9262 Process default and inheritance, resorting to Faref if necessary.
9263
9264 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
9265 (Faccessible_keymaps): Pass new arg to map_char_table.
9266
9267 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
9268
9269 * casetab.c (set_case_table): Pass new arg to map_char_table.
9270
9271 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
9272
9273 * lisp.h (specbinding_func): New typedef.
9274 (struct specbinding): Use specbinding_func, to put the `volatile'
9275 in the right place.
9276
9277 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
9278 to avoid GCC warning.
14d87dc9 9279
b6189c3b 92802003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 9281
14d87dc9 9282 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 9283
35fb885d
SM
92842003-05-15 Stefan Monnier <monnier@cs.yale.edu>
9285
9286 * keyboard.c (apply_modifiers): Don't fill the other cache.
9287
9a274fbd
SM
92882003-05-14 Stefan Monnier <monnier@cs.yale.edu>
9289
c55b5fad
SM
9290 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
9291
9a274fbd
SM
9292 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
9293 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
9294 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
9295 (Fset_window_configuration, Fcurrent_window_configuration)
9296 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
9297 (Fpos_visible_in_window_p, mark_window_cursors_off)
9298 (window_internal_height, window_internal_width, Frecenter)
9299 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
9300 (replace_buffer_in_all_windows, init_window_once, init_window)
9301 (syms_of_window, keys_of_window): Move from lisp.h.
9302 * lisp.h: Move window.c declarations to window.h.
9303
9304 * bytecode.c: Include window.h.
9305 * emacs.c: Include window.h.
9306
14d87dc9 9307 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
9308 (keyremap): Add `parent' field.
9309 (keyremap_step): Use it. Remove `parent' argument.
9310 (read_key_sequence): Setup and use the new `parent' field.
9311
fd93e331
SM
93122003-05-11 Stefan Monnier <monnier@cs.yale.edu>
9313
9314 * keyboard.c (adjust_point_for_property): Ensure termination.
9315
1c4001a1
SM
93162003-05-10 Stefan Monnier <monnier@cs.yale.edu>
9317
9318 * keyboard.c (follow_key): Remove dead variable `did_meta'.
9319 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
9320 duplicated handling of function-key-map and key-translation-map
9321 in read_key_sequence.
9322 (read_key_sequence): Use them.
9323
9324 * keyboard.c (adjust_point_for_property): Try harder to move point
9325 to the non-sticky end of an invisible property.
9326
9327 * xdisp.c (single_display_prop_intangible_p): Make `space' display
9328 property intangible as well.
9329
780379b1
AS
93302003-05-10 Andreas Schwab <schwab@suse.de>
9331
9332 * xmenu.c (single_menu_item): Change last parameter to void* to
9333 avoid warning.
9334
ca2de342
RS
93352003-05-09 Richard M. Stallman <rms@gnu.org>
9336
9337 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
9338 Bind Qinhibit_modification_hooks to t so there will be no GC.
9339 Rename local `tem' to `save_deactivate_mark'.
9340
9341 * eval.c (specpdl_ptr): Declare volatile.
9342 (unbind_to): Copy the whole binding and decrement specpdl_ptr
9343 before doing the work of unbinding it.
9344
9345 * lisp.h (struct specbinding): Declare elements volatile.
9346 (specpdl_ptr): Declare volatile.
9347
9348 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
9349
9350 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
9351 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
9352
347003be
DL
93532003-05-08 Dave Love <fx@gnu.org>
9354
9355 * coding.c (Vlast_coding_system_used): Doc fix.
9356
5adcec23
JR
93572003-05-07 Jason Rumney <jasonr@gnu.org>
9358
9359 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
9360 when system does not support them.
9361
5fe3b8a4
SM
93622003-05-05 Stefan Monnier <monnier@cs.yale.edu>
9363
9364 * fileio.c (Qwrite_region_annotate_functions): New var.
9365 (build_annotations): Use it to process the global part of the hook.
9366 (syms_of_fileio): Init and staticpro it.
9367
9368 * keyboard.c (safe_run_hooks_error): Display a message instead of
9369 silently ignoring the error.
9370
93712003-05-03 Stefan Monnier <monnier@cs.yale.edu>
9372
9373 * keyboard.c (input_available_signal): Mark static.
9374 (menu_bar_items): Use map_keymap.
9375 (menu_bar_one_keymap): Remove.
9376 (menu_bar_item): Adjust arglist (for use in map_keymap).
9377 Properly hide a second binding when not both are keymaps.
9378
9379 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
9380 (single_keymap_panes): Use it and map_keymap.
9381 (single_menu_item): Use skp as well.
9382
9383 * keymap.h (map_keymap_function_t): New type.
9384 (map_keymap): Declare.
9385
9386 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
9387 (map_keymap_call, Fmap_keymap): New functions.
9388 (syms_of_keymap): Defsubr map-keymap.
9389
4b1b4443
JD
93902003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9391
9392 * gtkutil.c (create_dialog, make_widget_for_menu_item)
9393 (make_menu_item, create_menus, xg_update_menu_item): Don't call
9394 ..._with_mnemonic functions for menu items.
9395
1f816871
KH
93962003-05-01 Kenichi Handa <handa@m17n.org>
9397
9398 * coding.c (coding_system_accept_latin_extra_p): Delete this
9399 function.
9400 (find_safe_codings): Pay attention to
9401 the property tranlsation-table-for-encode of each codings.
9402 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
9403
5ed6ba5b
SM
94042003-05-01 Stefan Monnier <monnier@cs.yale.edu>
9405
9406 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
9407
32c06229
SM
94082003-04-30 Stefan Monnier <monnier@cs.yale.edu>
9409
9410 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
9411
9412 * lisp.h (CHECK): Wrap args in parenthesis.
9413 (specbind): Fix doc: symbol = Qnil is not supported any more.
9414
9415 * bytecode.c (Fbyte_code) <unwind-protect>:
9416 Use Fprogn rather than 0 and Qnil.
9417
9418 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
9419 `double', and `triple' modifiers as well.
9420
ed3c3314
RS
94212003-04-30 Richard M. Stallman <rms@gnu.org>
9422
9423 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
9424
9425 * alloc.c (abort_on_gc): New variable.
9426 (Fgarbage_collect): Abort if abort_on_gc is set.
9427
9428 * lisp.h (abort_on_gc): Add decl.
9429
9430 * eval.c (Fsignal): Clear abort_on_gc.
9431
9432 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 9433 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
9434
9435 * xdisp.c (move_it_vertically_backward): Do the final big else
9436 even if nlines is 0.
9437
9438 * xdisp.c (redisplay_internal): Finish the per-frame loop
9439 even if redisplay is suspended by input.
9440
0b325c12
AC
94412003-04-24 Andrew Choi <akochoi@shaw.ca>
9442
9443 * macterm.c (x_list_fonts): Return all fonts that match if
9444 maxnames = -1.
9445
4e837cd0
KH
94462003-04-25 Kenichi Handa <handa@m17n.org>
9447
9448 * syntax.c (skip_chars): Fix previous change.
9449
9af7511a
KH
94502003-04-24 Kenichi Handa <handa@m17n.org>
9451
9452 * syntax.c (skip_chars): Make the code faster by using the common
9453 technique of *p, *stop, and *endp.
9454
e3b2c21f
JD
94552003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9456
9457 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 9458 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
9459 being updated.
9460
32c06229
SM
94612003-04-19 Stefan Monnier <monnier@cs.yale.edu>
9462
9463 * eval.c (Fapply): Undo last change and add a comment about why.
9464
c6464167
MB
94652003-04-18 Miles Bader <miles@gnu.org>
9466
9467 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
9468 pickier PARSE_MULTIBYTE_SEQ.
9469
e509f168
SM
94702003-04-17 Stefan Monnier <monnier@cs.yale.edu>
9471
9472 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
9473 Use XCDR, XCAR, CONSP.
9474 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
9475 (Fapply): Remove unnecessary GCPRO.
9476
9477 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
9478
9479 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
9480
9481 * buffer.h: Don't hardcode BEG==1.
9482
9483 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
9484
5ceea398
RS
94852003-04-16 Richard M. Stallman <rms@gnu.org>
9486
9487 * xdisp.c (try_window, try_window_reusing_current_matrix):
9488 When at end of window, set window_end_pos to Z-ZV.
9489
9490 * buffer.c (Foverlay_recenter): Doc fix.
9491
e509f168
SM
94922003-04-14 Stefan Monnier <monnier@cs.yale.edu>
9493
9494 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
9495
d243e605
AC
94962003-04-14 Andrew Choi <akochoi@shaw.ca>
9497
9498 * macterm.c (mac_check_for_quit_char): Don't check more often than
9499 once a second.
9500
6901b111
SM
95012003-04-11 Stefan Monnier <monnier@cs.yale.edu>
9502
9503 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
9504 specially, so that they can't hide an implicit switch-frame event.
9505 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
9506 (head_table): Use switch-frame as event_kind for select-window.
9507 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
9508
9509 * editfns.c (Fformat): Lisp_Object/int mixup.
9510 (format2): Remove unused var numargs.
9511
e301806f 95122003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 9513
6901b111 9514 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
9515 (Qafter_insert_file_set_coding): New variable.
9516 (syms_of_fileio): Initialize and staticpro it. Delete declaration
9517 for after-insert-file-adjust-coding-function.
9518 (Finsert_file_contents): Call Qafter_insert_file_set_coding
9519 instead of Vafter_insert_file_adjust_coding_function.
9520
38914424
KH
95212003-04-11 Kenichi Handa <handa@m17n.org>
9522
9523 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
9524
9525 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
9526 string. Callers changed.
9527
95282003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 9529
6901b111 9530 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 9531 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
9532 (Finsert_file_contents):
9533 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
9534 decode-format.
9535
f979dc05
JD
95362003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9537
9538 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
9539 get GtkAdjustment as widget now is a GtkRange.
9540
9541 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
9542 GtkRange to avoid memory leak.
9543
f8c6b4c2 95442003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 9545
50ebc53d
KH
9546 * xfaces.c (Vface_font_rescale_alist): New variable.
9547 (struct font_name): New member rescale_ratio.
9548 (font_rescale_ratio): New function.
6901b111 9549 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
9550 (better_font_p): On comparing point sized, pay attention to
9551 recale_ratio member of fonts.
9552 (build_scalable_font_name): Reflect font->rescale_ratio in the
9553 font name.
6901b111 9554 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 9555
cb98871c
KH
9556 * lread.c (read1): Before calling index, check if the 2nd
9557 arguemnt is in ASCII range.
9558
4773b8ca
RS
95592003-04-08 Richard M. Stallman <rms@gnu.org>
9560
b0ada147
RS
9561 * fileio.c (Ffile_symlink_p): Doc fix.
9562
9563 * editfns.c (Fformat): Translate positions of text properties
9564 in the format string to apply them to the result.
9565
4773b8ca
RS
9566 * fileio.c (Finsert_file_contents): Doc fix.
9567 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
9568
95692003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 9570
4773b8ca
RS
9571 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
9572
e8f25745 95732003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 9574
e8f25745
ST
9575 * mac.c (init_mac_osx_environment): Switch libexec and bin so
9576 that self-contained application finds libexec files.
9577
f8c6b4c2 95782003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 9579
6901b111
SM
9580 * coding.c (code_convert_region_unwind):
9581 Set Vlast_coding_system_used to the argument.
2310d84c
KH
9582 (code_convert_region): If post-read-conversion function changed
9583 the value of last-coding-sytem, keep the new value in
9584 coding->symbol so that it won't be overridden.
9585 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
9586 (coding_system_accept_latin_extra_p): New function.
9587 (find_safe_codings): Pay attention to characters registered in
9588 latin-extra-code-table.
2310d84c 9589
39c9a034
TTN
95902003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
9591
9592 * Makefile.in (md5.o): Add missing dependency info.
9593
eb67c5d6
RS
95942003-04-06 Richard M. Stallman <rms@gnu.org>
9595
9596 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
9597
9598 * marker.c (verify_bytepos): New function.
9599
9600 * intervals.c (set_intervals_multibyte_1): When becoming
9601 multibyte, adjust right and left child sizes to a whole set of
9602 characters. If an interval gets zero total-length, delete it.
9603 If an interval consists of just its children, delete one of them.
9604
9605 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
9606 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 9607
eb67c5d6
RS
9608 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
9609 All calls deleted.
9610 (lisp_malloc): Do the work here directly.
9611
b1f81fc5
JB
96122003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
9613
9614 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
9615 char tables.
9616
96172003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
9618
9619 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
9620 destructively change "%S" to "%s".
9621
774666fb
MB
96222003-04-03 Miles Bader <miles@gnu.org>
9623
9624 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
9625 always set.
9626
19c37f01
DL
96272003-04-01 Dave Love <fx@gnu.org>
9628
9629 * xfns.c (xpm_lookup_color): Grok "opaque".
9630
2f4b24c3
AC
96312003-03-31 Andrew Choi <akochoi@shaw.ca>
9632
9633 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
9634 parent window ID.
9635
9636 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
9637
9638 * macterm.h (struct mac_output): Define x_pixels_diff and
9639 y_pixels_diff.
b1f81fc5 9640
9443fcf6
JB
96412003-03-31 Juanma Barranquero <lektu@terra.es>
9642
9643 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
9644 blockinput.h and files included from it.
9645
e072891b
KS
96462003-03-31 Kim F. Storm <storm@cua.dk>
9647
9648 The following changes consolidates the common code related to
9649 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
9650 files into frame.c.
9443fcf6 9651
e072891b
KS
9652 * frame.c: Include blockinput.h.
9653 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
9654 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
9655 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
9656 related vars here.
9657 (struct frame_parm_table, frame_parms): New table for describing
9658 frame parameters and their associated Q-variable.
9659 The order of the parameters corresponds to the sequence of the
9660 frame_parm_handlers table in redisplay_interface.
9661 (x_fullscreen_move, x_set_frame_parameters)
9662 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
9663 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
9664 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9665 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
9666 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
9667 Generic functions for processing of frame parameters.
9668 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
9669 (display_x_get_resource, x_get_resource_string): Functions for
9670 generic access to X resources.
9671 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
9672 (x_default_parameter, Fx_parse_geometry): Functions for generic
9673 access to frame parameters.
6901b111
SM
9674 (x_figure_window_size): Generic calculation of frame size.
9675 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
9676 (syms_of_frame): Intern and staticpro frame parameter variables.
9677 Defvar_lisp Vx_resource_class and Vx_resource_name here.
9678 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 9679
e072891b
KS
9680 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
9681 parameter related vars defined in frame.c.
9682 (EMACS_CLASS): Define here.
9683 (enum FULLSCREEN_*): Define here.
9684 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
9685 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
9686 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
9687 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
9688 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
9689 (x_set_visibility, x_set_autoraise, x_set_autolower)
9690 (x_set_unsplittable, x_set_vertical_scroll_bars)
9691 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
9692 (x_figure_window_size): Add prototypes.
9693
9694 * dispextern.h (frame_parm_handler): New typedef.
9695 (struct redisplay_interface): New member frame_parm_handlers.
9696 (enum resource_types): Move declaration here.
9697 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
9698 (x_default_parameter): Add prototypes.
9699
9700 * window.c: Remove extern decl for frame parameter vars.
9701 (change_window_heights): New generic function;
9702 replaces x_change_window_heights. All users changed.
9703
9704 * window.h (change_window_heights): Add prototype.
9705
9706 * xfaces.c: Remove extern decl for frame parameter vars.
9707
9708 * xterm.h (EMACS_CLASS): Remove. Use generic define.
9709 (struct w32_display_info): Fix type of xrdb member.
9710 (enum FULLSCREEN_*): Remove.
9711 Remove prototypes for generic functions (in frame.h).
9712
9713 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
9714 parameters now defined in frame.h and frame.c.
f63fd14e 9715 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
9716 (enum x_frame_parms): Remove (bogus, unused enum).
9717 (check_x_display_info): Make non-static (for frame.c).
9718 (struct x_frame_parm_table, x_frame_parms): Remove.
9719 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
9720 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
9721 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9722 (x_change_window_heights, x_set_autoraise, x_set_autolower)
9723 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
9724 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
9725 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
9726 Remove. Use generic functions instead.
9727 (enum resource_types): Remove.
9728 (x_set_scroll_bar_default_width): New global function (for frame.c).
9729 (Fx_create_frame): Depend on x_figure_window_size to add space for
9730 toolbar and setup size_hint_flags.
9731 (x_frame_parm_handlers): New table for redisplay_interface.
9732 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 9733
e072891b 9734 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 9735 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
9736 (x_redisplay_interface): Add x_frame_parm_handlers member.
9737
9738 * w32gui.h (XrmDatabase): New (dummy) typedef.
9739
9740 * w32term.h (EMACS_CLASS): Remove. Use generic define.
9741 (struct w32_display_info): Fix type of xrdb member.
9742 (enum FULLSCREEN_*): Remove.
9743 (x_fullscreen_adjust): Remove prototype.
9744
9745 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
9746 parameters now defined in frame.h and frame.c.
f63fd14e 9747 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
9748 (enum x_frame_parms): Remove (bogus, unused enum).
9749 (check_x_display_info): Make non-static (for frame.c).
9750 (struct x_frame_parm_table, x_frame_parms): Remove.
9751 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
9752 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
9753 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9754 (x_change_window_heights, x_set_autoraise, x_set_autolower)
9755 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
9756 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
9757 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
9758 Remove. Use generic functions instead.
9759 (enum resource_types): Remove.
9760 (x_set_scroll_bar_default_width): New global function (for frame.c).
9761 (Fx_create_frame): Depend on x_figure_window_size to add space for
9762 toolbar and setup size_hint_flags.
9763 (w32_frame_parm_handlers): New table for redisplay_interface.
9764 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 9765
e072891b
KS
9766 * w32term.c: Remove unnecessary extern declarations.
9767 (x_fullscreen_adjust): Remove. Use generic instead.
9768 (x_redisplay_interface): Add w32_frame_parm_handlers member.
9769
9770 * w32reg.c (x_get_string_resource): Use XrmDatabase.
9771
9772 * macgui.h (XrmDatabase): New (dummy) typedef.
9773
9774 * macterm.h (EMACS_CLASS): Remove.
9775 (struct mac_display_info): Add xrdb member.
9776 (struct mac_output): Add want_fullscreen member.
9777
9778 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
9779 parameters now defined in frame.h and frame.c.
f63fd14e 9780 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
9781 (check_x_display_info): Make non-static (for frame.c).
9782 (struct x_frame_parm_table, x_frame_parms): Remove.
9783 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
9784 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
9785 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9786 (x_change_window_heights, x_set_autoraise, x_set_autolower)
9787 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
9788 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
9789 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
9790 Remove. Use generic functions instead.
9791 (enum resource_types): Remove.
9792 (x_set_scroll_bar_default_width): New global function (for frame.c).
9793 (mac_frame_parm_handlers): New table for redisplay_interface.
9794 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 9795
e072891b
KS
9796 * macterm.c: Remove unnecessary extern declarations.
9797 (x_redisplay_interface): Add mac_frame_parm_handlers member.
9798
3e6a560b
KS
9799 * Makefile.in (frame.o): Add dependency on blockinput.h and files
9800 included from it (atimer.h and systime.h).
9801
7b7b454e
AS
98022003-03-30 Andreas Schwab <schwab@suse.de>
9803
9804 * xdisp.c (x_insert_glyphs): Fix swapped width and height
9805 parameters for shift_glyphs_for_insert.
9806
9807 * macterm.c (x_redisplay_interface): Add missing entry for
9808 draw_vertical_window_border.
9809
beb402de
KG
98102003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
9811
9812 * fileio.c (Fexpand_file_name): In the no-handler case, after
9813 expanding, look again for a handler and invoke it. This is needed
9814 for filenames like "/foo/../user@host:/bar/../baz" -- the first
9815 expansion produces "/user@host:/bar/../baz" which needs to be
9816 expanded again for the finame result "/user@host:/baz".
9817
b676f356
JD
98182003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9819
9820 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
9821 of area to be redrawn for better performance.
9822
3c671a56
SM
98232003-03-28 Stefan Monnier <monnier@cs.yale.edu>
9824
9825 * xterm.c (take_vertical_position_into_account): Remove.
9826 (xt_action_hook): Call set_vertical_scroll_bar if needed.
9827 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
9828 (xm_scroll_callback, x_create_toolkit_scroll_bar)
9829 (x_set_toolkit_scroll_bar_thumb): Simplify.
9830 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
9831 (XTread_socket): Remove unused var.
9832 (x_make_frame_invisible): Replace goto with else.
9833
9834 * xdisp.c (set_vertical_scroll_bar): New fun.
9835 (redisplay_window): Use it.
9836
84f2e615
RS
98372003-03-26 Richard M. Stallman <rms@gnu.org>
9838
9839 * xdisp.c (update_tool_bar): Recompute tool bar if
9840 update_mode_lines is set. Set w->update_mode_line
9841 only if the tool bar contents actually change.
9842 (update_menu_bar): Undo previous change.
9843
70b6104c
JD
98442003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9845
5fd6f727
JD
9846 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
9847 (xg_frame_set_char_size): Calculate scroll bar width before frame
9848 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
9849 (xg_separator_p): Check for all documented separator types.
9850 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
9851 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
9852
70b6104c
JD
9853 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
9854 so tool bar gets updated.
9855
d9b36d19
SM
98562003-03-26 Stefan Monnier <monnier@cs.yale.edu>
9857
9858 * data.c (store_symval_forwarding): Re-instate part of the code
9859 that was deleted with too much enthusiasm.
9860
98612003-03-25 Stefan Monnier <monnier@cs.yale.edu>
9862
9863 * data.c (store_symval_forwarding): Delete special read-only
9864 hack for type == -1, since we now use ->constant instead.
9865 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
9866
9867 * buffer.c (overlays_in): Declare static.
9868 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
9869 `constant' field rather than the variable's `type' field.
9870
365fa1b3
AC
98712003-03-24 Andrew Choi <akochoi@shaw.ca>
9872
9873 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
9874
9875 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
9876
9877 * fns.c [MAC_OSX]: Do not redefine vector.
9878
9879 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
9880
9881 * macgui.h: Remove definition of No_Cursor.
9882
d9b36d19 9883 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
9884
9885 * xdisp.c: Define No_Cursor.
9886 (x_write_glyphs, notice_overwritten_cursor)
9887 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
9888 (note_mouse_highlight): Remove Mac-specific code.
9889 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 9890
c0bcce6f
JPW
98912003-03-24 John Paul Wallington <jpw@gnu.org>
9892
9893 * xdisp.c (redisplay_window): If mini window's buffer is not
9894 empty, then redisplay it like other windows.
9895
a526b96c
KS
98962003-03-23 Kim F. Storm <storm@cua.dk>
9897
9898 * w32term.c (w32_draw_window_cursor): Fix last change.
9899
37ab321e
KH
99002003-03-23 Kenichi Handa <handa@m17n.org>
9901
a526b96c
KS
9902 * alloc.c (make_string_from_bytes, make_specified_string):
9903 Add `const' for the arg CONTENTS.
37ab321e
KH
9904
9905 * lisp.h (make_string_from_bytes, make_specified_string):
9906 Prototypes adjusted.
9907
7863d625
JD
99082003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9909
a526b96c 9910 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 9911
7863d625
JD
9912 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
9913 (XG_SB_RANGE): New define.
9914
9915 * gtkutil.c (xg_fixed_handle_expose): New function.
9916 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
9917 expose events.
9918 (xg_update_scrollbar_pos): Take two more arguments, left and width
9919 of scroll bar including borders.
9920 Clear left and right part outside scroll bar separately as some
9921 themes have bars that are not an even number of pixels.
d9b36d19 9922 Don't set reallocate_redraws, don't call
7863d625
JD
9923 gdk_window_process_all_updates.
9924 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
9925 so no need to change it. Calculate size and value with XG_SB_RANGE.
9926
d9b36d19
SM
9927 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
9928 Pass left and width of scroll bar including borders to
7863d625
JD
9929 xg_update_scrollbar_pos.
9930
af0ad939
TTN
99312003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
9932
9933 * Makefile.in: Make sure space precedes end-of-line backslashes.
9934
b22139fd
KS
99352003-03-22 Kim F. Storm <storm@cua.dk>
9936
9937 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
9938 Add generic versions here. Remove system specific versions
9939 defined elsewhere.
9940
9941 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
9942 Add prototypes.
9943
6e6410cf
KS
9944 * xterm.h (STORE_NATIVE_RECT): New macro.
9945
5c9cc435
KS
99462003-03-21 Kim F. Storm <storm@cua.dk>
9947
00c64fab
SM
9948 * xdisp.c (get_glyph_string_clip_rect):
9949 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
9950
9951 * dispextern.h (struct redisplay_interface): Add active_p
9952 argument to draw_window_cursor member. All uses changed.
9953
acd37560
KS
99542003-03-21 Kim F. Storm <storm@cua.dk>
9955
9956 The following changes consolidate code related to writing and
9957 inserting glyphs, exposing frame, the tool bar, the mouse face,
9958 the output cursor, and help echo from xterm.c, w32term.c and
9959 macterm.c into xdisp.c. It also generalizes the use of the
9960 window_part enum instead of using numeric values throughout.
af0ad939 9961
acd37560
KS
9962 * xdisp.c: Consolidate gui-independent code here.
9963 Include keymap.h.
9964 (Qhelp_echo): Import.
9965 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
9966 (help_echo_string, help_echo_window, help_echo_object)
9967 (previous_help_echo_string, help_echo_pos): Declare here.
9968 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
9969 (estimate_mode_line_height): Define here. Handle windowing
9970 systems directly (without using estimate_mode_line_height_hook).
9971 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
9972 (update_window_cursor, update_cursor_in_window_tree)
9973 (fast_find_position, fast_find_string_pos)
9974 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
9975 (expose_area, expose_line, expose_overlaps, expose_window)
9976 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
9977 declared static as they are only used locally in xdisp.c.
9978 (draw_glyphs): Rename from x_draw_glyphs and make static.
9979 (tool_bar_item_info, notice_overwritten_cursor): Make static.
9980 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
9981 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 9982 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
9983 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
9984 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
9985 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
9986 (note_mouse_highlight, x_clear_window_mouse_face)
9987 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
9988 (x_intersect_rectangles): New generic functions for use by xdisp.c
9989 and GUI front-ends.
9990 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
9991 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
9992
9993 * dispextern.h (Display_Info): Generic typedef for *_display_info.
9994 (NativeRectangle): Generic typedef for rectangle type.
9995 (enum window_part): Move here from window.c.
9996 (struct redisplay_interface): New members flush_display_optional,
9997 define_frame_cursor, clear_frame_area, draw_window_cursor,
9998 draw_vertical_window_border, shift_glyphs_for_insert.
9999 Rename member clear_mouse_face to clear_window_mouse_face.
10000 (estimate_mode_line_height_hook): Remove hook.
10001 (auto_raise_tool_bar_buttons_p): Don't declare extern.
10002 (tool_bar_item_info): Remove prototype.
10003 (help_echo_string, help_echo_window, help_echo_object)
10004 (previous_help_echo_string, help_echo_pos)
10005 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
10006 (x_stretch_cursor_p, output_cursor): Declare extern.
10007 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
10008 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
10009 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
10010 (display_and_set_cursor, set_output_cursor, x_cursor_to)
10011 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
10012 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
10013 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
10014 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
10015 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
10016 Add prototypes.
10017 (mode_line_string, marginal_area_string): Fix prototypes.
10018
10019 * window.c (enum window_part): Move to dispextern.h.
10020 (coordinates_in_window): Use enum window_part member names
10021 instead of numbers to describe return value.
10022 (struct check_window_data): Change part member to window_part.
10023 (check_window_containing): Return window_part unaltered.
10024 (window_from_coordinates): Change part arg from int to enum
10025 window_part. Allow part arg to be null. All users changed.
10026
10027 * window.h (window_from_coordinates): Fix prototype.
10028
10029 * term.c (estimate_mode_line_height): Move to xdisp.c.
10030
10031 * keyboard.c (make_lispy_event): Use enum window_part.
10032
10033 * dispnew.c (mode_line_string, marginal_area_string): Use enum
10034 window_part instead of int in arg list. Users changed.
10035
10036 * xterm.h (No_Cursor): Declare as None for X.
10037 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 10038
acd37560
KS
10039 * xterm.c: Remove consolidated defines and code.
10040 (BETWEEN): Remove unused macro.
10041 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
10042 (x_define_frame_cursor, x_clear_frame_area)
10043 (x_draw_window_cursor): New X-specific functions for RIF.
10044 (x_redisplay_interface): Add new members.
10045
10046 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
10047
10048 * w32term.h (struct w32_output): Remove cross_cursor member.
10049
10050 * w32term.c: Remove consolidated defines and code.
10051 (BETWEEN): Remove unused macro.
10052 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
10053 (w32_define_frame_cursor, w32_clear_frame_area)
10054 (w32_draw_window_cursor): New W32-specific functions for RIF.
10055 (w32_redisplay_interface): Add new members.
10056
a64387ee 10057 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
10058 (XRectangle): Add X compatible rectangle type.
10059 (NativeRectangle): Declare as RECT for W32.
10060 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
10061
10062 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
10063
10064 * w32console.c: Remove consolidated defines and code.
af0ad939 10065
acd37560
KS
10066 * msdos.h (Display_Info): Add generic typedef.
10067
10068 * msdos.c: Remove consolidated defines and code.
10069 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
10070
10071 * macterm.h (struct mac_output): Replace member cross_cursor by
10072 hand_cursor.
10073 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
10074
10075 * macterm.c: Remove consolidated defines and code.
10076 (BETWEEN): Remove unused macro.
10077 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
10078 (mac_define_frame_cursor, mac_clear_frame_area)
10079 (mac_draw_window_cursor): New Mac-specific functions for RIF.
10080 (x_redisplay_interface): Add new members.
10081
10082 * macgui.h (No_Cursor): Define as 0 for Mac.
10083 (XRectangle): Add X compatible rectangle type.
10084 (NativeRectangle): Declare as Rect for Mac.
10085 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
10086
204ccab1
KS
10087 * macfns.c (x_set_mouse_color): Setup hand_cursor.
10088 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 10089
9443fcf6 10090 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
10091 included from it. Add dependency on keymap.h.
10092
10093 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
10094
8ba01a70 100952003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
10096
10097 * fileio.c (Fexpand_file_name): Fix previous change.
10098
8ba01a70 100992003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
10100
10101 * fileio.c (Ffile_name_directory): Reconstruct file name by
10102 make_specified_string.
10103 (Ffile_name_nondirectory, Ffile_name_as_directory)
10104 (Fdirectory_file_name, Fexpand_file_name)
10105 (Fsubstitute_in_file_name): Likewise.
10106 (Fread_file_name): Compare decoded homedir with DIR and
10107 DEFAULT_FILENAME.
10108
10109 * alloc.c (make_specified_string): If NCHARS is negative, count
10110 the number of characters.
10111
19536747
JD
101122003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10113
de38ae5a
JD
10114 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
10115 all widgets.
10116
19536747
JD
10117 * gtkutil.h: Removed xg_ignore_next_thumb.
10118
37ab321e 101192003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
10120
10121 * coding.c (Vchar_coding_system_table): Remove this variable.
10122 (Vcoding_system_safe_chars): New variable.
10123 (intersection): Remove this function.
10124 (find_safe_codings): Don't use Vchar_coding_system_table, but try
10125 all codings in SAFE_CODINGS.
00c64fab 10126 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
10127 find_safe_codings. Get generic coding systems from
10128 Vcoding_system_safe_chars.
10129 (Fdefine_coding_system_internal): New function.
10130 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
10131 Initialize and staticpro Vcoding_system_safe_chars.
10132
17097258
JD
101332003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10134
2a2071c3
JD
10135 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
10136 equal old values before updating.
10137
17097258
JD
10138 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
10139
10140 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
10141
101422003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10143
10144 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
10145 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
10146 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
10147 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
10148 (xg_create_scroll_bar): Pass bar to button event callback.
10149 (xg_find_top_left_in_fixed): New function.
10150 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
10151 whole scroll bar area. Get old position with
10152 xg_find_top_left_in_fixed, calculate and only clear needed areas.
10153 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
10154 dragging is in progress. Calculate whole as for Motif.
10155 Remove code that saved last values. Call gtk_range functions to
10156 set scroll bar sizes.
10157
10158 * gtkutil.h: Removed xg_ignore_next_thumb.
10159
8cb9dfbf
JB
101602003-03-17 Juanma Barranquero <lektu@terra.es>
10161
10162 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
10163 and files included from it.
10164
00c64fab
SM
101652003-03-18 Stefan Monnier <monnier@cs.yale.edu>
10166
10167 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
10168 multiple occurrences of the same keymap under different prefixes.
10169 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
10170
c45bb3b2
JR
101712003-03-16 Jason Rumney <jasonr@gnu.org>
10172
10173 * w32gui.h: Use HDC for Display.
10174
10175 * w32term.c (w32_encode_char): Prevent double-byte chars from
10176 crashing Emacs.
10177
10178 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
10179 as binary.
10180
2a6d0874
JB
101812003-03-16 Juanma Barranquero <lektu@terra.es>
10182
10183 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
10184
03eb5fab
KS
101852003-03-16 Kim F. Storm <storm@cua.dk>
10186
10187 The following changes consolidate some of the gui-independent
10188 parts of the processing and drawing of "glyph strings" from
10189 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 10190
03eb5fab
KS
10191 * dispextern.h (struct glyph): Reduce face_id member from 22 to
10192 21 bits (this reduces number of faces from 4M to 2M).
10193 Replace W32 specific w32_font_type member (2 bits) by generic
10194 font_type member (3 bits) for portability.
10195 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
10196 (enum draw_glyphs_face): Define here.
10197 (struct glyph_string): Define here. Merge W32 and X versions.
10198 (struct redisplay_interface): New members per_char_metric,
10199 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
10200 (VCENTER_BASELINE_OFFSET): Define here.
10201 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
10202 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
10203
10204 * xdisp.c: Consolidate gui-independent "glyph string" code here.
10205 (dump_glyph_string): Moved here.
10206 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
10207 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
10208 (fill_composite_glyph_string, fill_glyph_string)
10209 (fill_image_glyph_string, fill_stretch_glyph_string)
10210 (left_overwritten, left_overwriting, right_overwritten)
10211 (right_overwriting, get_char_face_and_encoding)
10212 (set_glyph_string_background_width, compute_overhangs_and_x)
10213 (append_glyph, append_composite_glyph, produce_image_glyph)
10214 (take_vertical_position_into_account, append_stretch_glyph)
10215 (produce_stretch_glyph): New generic functions (based on X version).
10216 Call platform specific functions through rif.
10217 (INIT_GLYPH_STRING): New macro, hides W32 details.
10218 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
10219 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
10220 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
10221 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
10222 (notice_overwritten_cursor):
10223 Generic functions exported to platform modules. Users changed.
10224
10225 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
10226 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
10227 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 10228 New macros for consolidated code.
2a6d0874 10229
03eb5fab
KS
10230 * xterm.c: Remove consolidated defines and code.
10231 (x_per_char_metric, x_encode_char)
10232 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
10233 (x_redisplay_interface): Add new members.
10234
10235 * w32gui.h (Display): Add dummy typedef for consolidation.
10236 (XChar2b): Define alias for wchar_t for consolidation.
10237 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
10238
10239 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 10240 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
10241 New macros for consolidation.
10242
fad49844 10243 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
10244 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
10245 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
10246 (w32_per_char_metric): Change font_type arg to int for RIF.
10247 (w32_encode_char): Return int according to RIF requirements.
10248 (w32_compute_glyph_string_overhangs): Adapt to RIF.
10249 (w32_get_glyph_overhangs): New function for RIF. Uses generic
10250 x_get_glyph_overhangs.
10251 (w32_redisplay_interface): Add new members.
10252
10253 * macgui.h (XChar2b): Move typedef here for consolidation.
10254 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
10255
10256 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
10257 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
10258 consolidation.
10259
10260 * macterm.c: Remove consolidated defines and code.
10261 (mac_per_char_metric): New function for RIF.
00c64fab 10262 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
10263 (mac_compute_glyph_string_overhangs): Adapt for RIF.
10264 (x_redisplay_interface): Add new members.
10265
00c64fab
SM
102662003-03-15 Stefan Monnier <monnier@cs.yale.edu>
10267
10268 * keymap.c (Vmenu_events): New var.
10269 (syms_of_keymap): Initialize it.
10270 (where_is_internal): Check more carefully what is a menu event.
10271
225c7a07
RS
102722003-03-14 Richard M. Stallman <rms@gnu.org>
10273
10274 * lread.c (read1): After #!, exit loop on eof.
10275
cea9be54
JD
102762003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10277
9ea0e54d
JD
10278 * gtkutil.h: Add declaration for xg_frame_cleared.
10279
0cb35f4e
JD
10280 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
10281
cea9be54
JD
10282 * gtkutil.c (struct xg_last_sb_pos): New structure.
10283 (handle_fixed_child): New function.
10284 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
10285 and force a redraw on them.
10286 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
10287 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
10288 so we can avoid unneeded redraws.
10289 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
10290 and force a redraw on the scroll bar.
10291 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
10292 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 10293 (xg_frame_cleared): New function.
cea9be54 10294
20b853f3
KH
102952003-03-13 Kenichi Handa <handa@m17n.org>
10296
10297 * coding.c (Fdetect_coding_region): Fix docstring.
10298 (Fdetect_coding_string): Fix docstring.
10299
7a555aff
AS
103002003-03-13 Andreas Schwab <schwab@suse.de>
10301
25cc0080
AS
10302 * gtkutil.c: Add prototype for create_menus.
10303
30225431
AS
10304 * data.c (long_to_cons): Fix type of top.
10305
10306 * xselect.c (selection_data_to_lisp_data): Use int instead of
10307 long for an integer of size 4.
10308
7a555aff 10309 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 10310 (xg_tool_bar_help_callback): Likewise.
7a555aff 10311
a3e4741f
AS
103122003-03-12 Andreas Schwab <schwab@suse.de>
10313
10314 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
10315
9668be7c
KS
103162003-03-12 Kim F. Storm <storm@cua.dk>
10317
03eb5fab 10318 The following changes consolidate the fringe handling from
9668be7c 10319 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 10320
9668be7c
KS
10321 * xdisp.c: Consolidate fringe handling code here.
10322 (left_bits, right_bits, continued_bits, continuation_bits)
10323 (ov_bits, zv_bits): Define fringe bitmaps.
10324 (fringe_bitmaps): New array holding fringe bitmaps.
10325 (draw_fringe_bitmap): Draw a specific bitmap; call display
10326 specific drawing routine via rif->draw_fringe_bitmap.
10327 (draw_row_fringe_bitmaps): Generic replacement for
10328 x_draw_row_fringe_bitmaps; all callers changed.
10329 (compute_fringe_widths): Generic replacement for
10330 x_compute_fringe_widths; all callers changed.
10331
10332 * dispextern.h (enum fringe_bitmap_type): Define here.
10333 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
10334 (fringe_bitmaps): Declare extern.
10335 (struct redisplay_interface): New member draw_fringe_bitmap.
10336 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
10337
10338 * xterm.c: Remove generic fringe code.
10339 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
10340 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
10341
10342 * w32term.c: Remove generic fringe code.
10343 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
10344 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 10345
9668be7c
KS
10346 * macterm.c: Remove generic fringe code.
10347 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
10348 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
10349
00a88f32
SM
103502003-03-11 Stefan Monnier <monnier@cs.yale.edu>
10351
10352 * print.c (Fprin1_to_string): Return unibyte string if possible.
10353
1d1de695
DK
103542003-03-09 David Kastrup <dak@gnu.org>
10355
10356 * process.c (read_process_output): We have allocated enough space
10357 for readmax and carryover, so actually use the alloted space.
10358
257f40f2
JD
103592003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10360
10361 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
10362 toolkit scrollbar click.
10363
10364 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
10365 for USE_GTK.
10366 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
10367 also.
10368 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
10369 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 10370
78819ebb 10371 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
257f40f2
JD
10372
10373 * gtkutil.c (xg_get_scroll_id_for_window): New function.
10374 (xg_tool_bar_item_expose_callback): New function.
10375 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
10376 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
10377 on the tool bar widget.
10378 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
10379 to expose on the tool bar item widgets.
10380
15213141
JD
103812003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10382
26b74a0b 10383 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 10384 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
10385 deleted from the image cache).
10386
15213141
JD
10387 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
10388 the event isn't for a frame (i.e. for dialogs).
10389
20b853f3 103902003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
10391
10392 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
10393 composition components reaches the limit, terminate composing.
10394 (COMPOSITION_OK): New macro.
00a88f32 10395 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
10396 composition is found.
10397 (coding_restore_composition): Adjust the number of composition
10398 components if it is not sane.
10399
c9029fe5
JB
104002003-03-06 Juanma Barranquero <lektu@terra.es>
10401
10402 * w32term.h (struct w32_display_info): Add xrdb member to support
10403 passing resources via -xrm on Windows.
10404
10405 * w32term.c (w32_make_rdb): New function.
10406 (w32_term_init): Use it to initialize xrdb member of w32_display_info
10407 struct. Delete leftover code.
10408
10409 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
10410 for resources passed on the command line.
10411
10412 * w32reg.c (w32_get_rdb_resource): New function.
10413 (x_get_string_resource): Use it, so resources passed with -xrm
10414 supercede the ones in the registry.
10415
9d00001f
JD
104162003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10417
10418 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
10419 instead of x_top_window_to_frame.
10420
ca2417b9
JD
104212003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10422
10423 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
10424 when restarting Emacs.
10425
5b20caf0
RS
104262003-03-03 Richard M. Stallman <rms@gnu.org>
10427
10428 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
10429 to run kill-buffer-query-functions.
10430 (Qkill_buffer_query_functions): New var.
10431 (syms_of_buffer): Init and staticpro it.
10432
58e91b77
JD
104332003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10434
10435 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
10436
932357b4
KS
104372003-02-25 Kim F. Storm <storm@cua.dk>
10438
10439 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
10440 If centering point failed to make whole line visible and vscroll
10441 is non-zero, disable vscroll and try centering point again.
10442
10443 * lread.c (read1): Accept `single space' syntax like (? x).
10444
bb8db7e1
JD
104452003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10446
10447 * keyboard.c (cancel_hourglass_unwind): Surround with
10448 #ifdef HAVE_X_WINDOWS
10449
47d77aab
KH
104502003-02-25 Kenichi Handa <handa@m17n.org>
10451
10452 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
10453 process only when "subprocesses" is defined.
10454
6a097c0c
SM
104552003-02-24 Stefan Monnier <monnier@cs.yale.edu>
10456
10457 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
10458
0b063c27
JB
104592003-02-24 Juanma Barranquero <lektu@terra.es>
10460
d1135afc
JB
10461 * callint.c (fix_command): Declare as static void and move before
10462 Fcall_interactively.
10463
0b063c27
JB
10464 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
10465 (syms_of_xdisp): Don't initialize Qwhen.
10466
0af912f0
JD
104672003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10468
10469 * keyboard.c (cancel_hourglass_unwind): New function.
10470 (command_loop_1): Cancel hourglass with unwind-protect.
10471
120d0a23
RS
104722003-02-23 Richard M. Stallman <rms@gnu.org>
10473
10474 * callint.c (fix_command): New subroutine, from Fcall_interactively.
10475 Detect (when ... (region-beginning)) etc.
10476 (Fcall_interactively): Call fix_command.
10477 (Qif, Qwhen): New variables.
10478 (syms_of_callint): Init and staticpro them.
0b063c27 10479
120d0a23
RS
10480 * regex.c (print_partial_compiled_pattern): Output to stderr.
10481
4ece81a6
KG
104822003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
10483
10484 * dired.c (directory_files_internal): Don't expand directory.
10485 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
10486 instead. From Lars Hansen <larsh@math.ku.dk>.
10487
e52bd6b7
SM
104882003-02-22 Stefan Monnier <monnier@cs.yale.edu>
10489
10490 * fns.c (string_to_multibyte): Remove unused var i.
10491 (Flanginfo): Fix int/Lisp_Object mixup.
10492 (void_call2): New fun.
10493 (Fmap_char_table): Use it in place of call2.
10494
10495 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
10496
10497 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
10498
10499 * keymap.c (copy_keymap_1): Make it static.
10500
10501 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
10502
c33ef7c4
JB
105032003-02-22 David Ponce <david@dponce.com>
10504
10505 * lread.c (Fload): Don't check STRING_MULTIBYTE.
10506
16782258
JD
105072003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10508
10509 * process.h: Removed subtty field from struct Lisp_Process.
10510
10511 * process.c (create_process): Remove setting of subtty.
10512 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
10513 (Fprocess_running_child_p, process_send_signal):
10514 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
10515 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
10516
3abeca61
KG
105172003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
10518
10519 * keymap.c (Fdefine_key): Doc fix.
10520
92a8ce63
JB
105212003-02-21 Juanma Barranquero <lektu@terra.es>
10522
10523 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
10524
10525 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
10526 POLLING_PROBLEM_IN_SELECT.
10527
10528 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
10529 Delete #undef of POLLING_PROBLEM_IN_SELECT.
10530
10531 * s/hpux10-20.h: New file.
10532
e52bd6b7
SM
10533 * process.c (wait_reading_process_input):
10534 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 10535
20f1ef2e
KH
105362003-02-20 Kenichi Handa <handa@m17n.org>
10537
32d0a9dc
KH
10538 * fontset.c (check_fontset_name): If NAME is nil, return the
10539 default fontset.
10540 (override_font_info): New function.
e52bd6b7 10541 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
10542 (Ffontset_info): If FONTSET is not the default fontset, merge
10543 FONTSET onto the copy of the default fontset, and work on that
10544 copy. Document that NAME nil means the default fontset.
10545 (Ffontset_font): Document that NAME nil means the default fontset.
10546
20f1ef2e
KH
10547 * process.c (setup_process_coding_systems): If the process's
10548 in/out descriptor is -1, do nothing.
10549
77d1daf2
AS
105502003-02-19 Andreas Schwab <schwab@suse.de>
10551
e52bd6b7
SM
10552 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
10553 Add prototypes.
77d1daf2 10554
f9a45bb3
KH
105552003-02-19 Kenichi Handa <handa@m17n.org>
10556
10557 * xfaces.c (try_alternative_families): Try all scalable fonts if
10558 Vscalable_fonts_allowed is not Qt.
10559
72ecb43c
JD
105602003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10561
10562 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
10563
ee5be7c3
JD
105642003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10565
10566 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
10567 names.
10568
10569 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 10570 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
10571 x_face_list_fonts.
10572 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
10573 (Fx_list_fonts): Set maxnames to -1 to get all font names.
10574
4cd519a7
KS
105752003-02-18 Kim F. Storm <storm@cua.dk>
10576
068f9882
KS
10577 * lread.c (read1): Fix last change.
10578 "`" is not always special. Allow "?" after a character constant.
4cd519a7 10579
7290a344
AC
105802003-02-18 Andrew Choi <akochoi@shaw.ca>
10581
10582 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
10583
1f7fa69b
AS
105842003-02-18 Andreas Schwab <schwab@suse.de>
10585
10586 * window.c (window_scroll_pixel_based): Move outside a
10587 multi-glyph character before setting new window start.
10588
10589 * xdisp.c (in_display_vector_p): New function.
10590 * dispextern.h (in_display_vector_p): Declare.
10591
23e21195
KS
105922003-02-18 Kim F. Storm <storm@cua.dk>
10593
10594 * lread.c (read1): Fix and relax read syntax.
10595 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
10596 Only recognize "," after dotted-pair dot if inside backquote.
10597 Never include "`" or "," (inside backquote) in a symbol.
10598 Allow dotted-pair dot after a character constant.
10599 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 10600
f098b121
JD
106012003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10602
10603 * gtkutil.c (xg_tool_bar_expose_callback): New function.
10604 (xg_create_tool_bar): Force style of tool bar to be horizontal with
10605 icons. Set name of tool bar to emacs-toolbar.
10606 (update_frame_tool_bar): Connect expose event to
10607 xg_tool_bar_expose_callback.
10608
63020c46
RS
106092003-02-17 Richard M. Stallman <rms@gnu.org>
10610
10611 * keyboard.c (this_command_key_count_reset): New variable.
10612 Initiatize to 0 where this_command_key_count is set.
10613 (read_char): Save and restore this_command_key_count_reset
10614 around input method code.
10615 (read_char): If this_command_key_count_reset, echo reread commands.
10616 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
10617
fb4452cc
KH
106182003-02-17 Kenichi Handa <handa@m17n.org>
10619
10620 * fns.c (string_to_multibyte): Always return a multibyte string.
10621
bd11cc09
JR
106222003-02-16 Jason Rumney <jasonr@gnu.org>
10623
e52bd6b7
SM
10624 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
10625 Negative max_fonts parameter means list all.
bd11cc09 10626
4cdf4bde
DL
106272003-02-14 Dave Love <fx@gnu.org>
10628
10629 * fns.c (Flanginfo): Doc fix.
10630
023b93f6
KS
106312003-02-13 Kim F. Storm <storm@cua.dk>
10632
37cd4238
KS
10633 * lread.c (read_escape): Interpret \s as a SPACE character, except
10634 for \s-X in a character constant which still is the super modifier.
10635 (read1): Signal an `invalid read syntax' error if a character
10636 constant is immediately followed by a digit or symbol character.
10637
140a6b7e
KS
10638 * search.c (Fmatch_data): Doc fix. Explicitly state that
10639 match-data is undefined if last search failed.
10640
3419757d 10641 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
023b93f6
KS
10642 All uses changed.
10643
7d5c86e5
JB
106442003-02-12 Juanma Barranquero <lektu@terra.es>
10645
10646 * eval.c (Fdefmacro): Fix typo.
10647
295fff2c
KS
106482003-02-12 Kim F. Storm <storm@cua.dk>
10649
10650 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
10651 macro is a string, convert meta modifiers in string when copying
10652 the string into a vector.
10653
60f3202d
KS
106542003-02-11 Kim F. Storm <storm@cua.dk>
10655
10656 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
10657
61cb0b53
KH
106582003-02-11 Kenichi Handa <handa@m17n.org>
10659
10660 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
10661
7392e23c
KS
106622003-02-10 Kim F. Storm <storm@cua.dk>
10663
10664 * process.c: Doc fixes.
10665 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
10666
ce4254bd
KH
106672003-02-10 Kenichi Handa <handa@m17n.org>
10668
9c7a329a
KH
10669 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
10670
ce4254bd
KH
10671 * process.c (QCfilter_multibyte): New variable.
10672 (setup_process_coding_systems): New function.
e52bd6b7
SM
10673 (Fset_process_buffer, Fset_process_filter):
10674 Call setup_process_coding_systems.
ce4254bd
KH
10675 (Fstart_process): Initialize the member `filter_multibyte' of
10676 struct Lisp_Process.
10677 (create_process): Call setup_process_coding_systems.
10678 (Fmake_network_process): New keyward `:filter-multibyte'.
10679 Initialize the member `filter_multibyte' of struct Lisp_Process.
10680 Call setup_process_coding_systems.
10681 (server_accept_connection): Call setup_process_coding_systems.
10682 (read_process_output): If the process has a filter, decide the
10683 multibyteness of a string to given to the filter by
10684 `filter_multibyte' member of the process. If the process doesn't
10685 have a filter and the result of conversion is unibyte, use
10686 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
10687 multibyte form.
10688 (Fset_process_coding_system): Call setup_process_coding_systems.
10689 (Fset_process_filter_multibyte): New function.
10690 (Fprocess_filter_multibyte_p): New function.
10691 (syms_of_process): Intern and staticpro QCfilter_multibyte.
10692 Defsubr Sset_process_filter_multibyte and
10693 Sprocess_filter_multibyte_p.
10694
10695 * process.h (struct Lisp_Process): New member filter_multibyte.
10696
10697 * lisp.h (setup_process_coding_systems): Add prototype.
10698
10699 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
10700 process, update coding systems for the process.
10701
b08d5f59
KH
107022003-02-09 Kenichi Handa <handa@m17n.org>
10703
10704 * fns.c (string_to_multibyte): New function.
10705 (Fstring_to_multibyte): New function.
10706 (syms_of_fns): Defsubr it.
10707
0dfd93c0
AS
107082003-02-08 Andreas Schwab <schwab@suse.de>
10709
10710 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
10711 instead of the substitution.
10712
7b76ca1c
JD
107132003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10714
10715 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
10716
10717 * xmenu.c (menu_position_func): Adjust menu popup position so that
10718 the menu is fully visible.
7b76ca1c 10719
2436a4e4
JD
107202003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10721
10722 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
10723 (x_make_frame_invisible, x_wm_set_icon_position):
10724 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
10725
10726 * xfns.c (x_set_name, x_set_title): Ditto.
10727
37d1e680
RS
107282003-02-04 Richard M. Stallman <rms@gnu.org>
10729
10730 * keyboard.c (echo_now): Update before_command_echo_length.
10731 (Freset_this_command_lengths): Reset this_command_key_count etc.
10732 immediately rather than arranging to do it later.
10733 (before_command_key_count_1, before_command_echo_length_1)
10734 (before_command_restore_flag): Vars deleted.
10735 (add_command_key): Don't handle before_command_restore_flag.
10736 (read_char, record_menu_key): Don't update before_command_key_count or
10737 before_command_echo_length.
10738 (read_char): Don't handle before_command_restore_flag.
10739
10740 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
10741 in direct-output clauses if it wouldn't be called in the ordinary case.
10742
578846a3
KS
107432003-02-04 Kim F. Storm <storm@cua.dk>
10744
10745 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
10746
49853a4d
JD
107472003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10748
10749 * gtkutil.c (remove_from_container): Copying list is not needed.
10750 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
10751 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
10752 on list returned from gtk_container_get_children to avoid memory leak.
10753
8b53dc06
JR
107542003-02-01 Jason Rumney <jasonr@gnu.org>
10755
5d54d177
JR
10756 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
10757 local malloc.
10758 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
10759 definitions in xpm.h.
10760 (init_xpm_functions): New function.
f63fd14e 10761 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
10762 (init_external_image_libraries): Try to load libXpm.dll.
10763
8b53dc06
JR
10764 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
10765 timestamp.
10766
b222e415
DL
107672003-01-31 Dave Love <fx@gnu.org>
10768
10769 * syntax.c (Fskip_chars_forward)
10770 (open-paren-in-column-0-is-defun-start): Doc fix.
10771
c60ee5e7
JB
107722003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
10773
10774 * fileio.c: Support // at start of name for Cygwin (just added proper
10775 preprocessor tests).
10776
10777 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
10778
10779 * Makefile.in: Use @EXEEXT@ for Cygwin.
10780
10781 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
10782
10783 * s/cygwin.h: Added for Cygwin port.
10784
53b37591
JB
107852003-01-31 Juanma Barranquero <lektu@terra.es>
10786
10787 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
10788 when including gif_lib.h.
fe929957 10789 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
10790 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
10791 Windows. Disable color table lookups. Call library functions
53b37591 10792 through pointers determined at runtime.
fe929957
JB
10793 (init_external_image_libraries): Try to load libungif.dll and
10794 libtiff.dll.
53b37591 10795
45415a8f
KH
107962003-01-31 Kenichi Handa <handa@m17n.org>
10797
10798 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 10799 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 10800
a97e4138
JD
108012003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10802
e52bd6b7 10803 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 10804
6eed9bed
DL
108052003-01-30 Dave Love <fx@gnu.org>
10806
10807 * alloc.c (Vgc_elapsed, gcs_done): New variables.
10808 (Fgarbage_collect): Use them.
10809 (init_alloc, syms_of_alloc): Set them up.
10810
100dcd40
JB
108112003-01-30 Juanma Barranquero <lektu@terra.es>
10812
10813 * w32fns.c (init_external_image_libraries): Add missing operator.
10814
fbd852af
JR
108152003-01-29 Jason Rumney <jasonr@gnu.org>
10816
10817 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
10818 an alternative name for jpeg.dll.
10819
8a2d8020
KH
108202003-01-29 Kenichi Handa <handa@m17n.org>
10821
10822 * xdisp.c (set_cursor_from_row): Pay attention to string display
10823 properties.
10824
058c18c7
AC
108252003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
10826
10827 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
10828 <escape>.
10829 (keycode_to_xkeysym_table): Reformat and add more comments.
10830 (XTread_socket): Drop special case for backspace.
10831
385f11cf
AC
108322003-01-28 Andrew Choi <akochoi@shaw.ca>
10833
10834 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
10835 values in old-style RGB specs.
10836
c922a224
JB
108372003-01-27 Juanma Barranquero <lektu@terra.es>
10838
10839 * w32fns.c (init_external_image_libraries): Try alternate names for the
10840 jpeg dll.
10841
0a1d6de0
JD
108422003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10843
10844 * gtkutil.c (create_dialog, xg_separator_p)
10845 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
10846 before calling strcmp or strlen.
10847
a97e4138 108482003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
10849
10850 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
10851 and handle image load failure.
10852
28908312
JR
108532003-01-26 Jason Rumney <jasonr@gnu.org>
10854
10855 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
10856 New functions.
f63fd14e
JB
10857 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
10858 Disable color table lookups. Call jpeg library functions
28908312
JR
10859 through pointers determined at runtime.
10860 (init_external_image_libraries): Try to load jpeg.dll.
10861
84e47416
RS
108622003-01-25 Richard M. Stallman <rms@gnu.org>
10863
10864 * lisp.h: Declare format2 instead of format1.
10865
10866 * fileio.c (barf_or_query_if_file_exists):
10867 Call format2 instead of format1.
10868
10869 * editfns.c (format2): New function, replaces format1
10870 but takes exactly two Lisp Objects as format args.
10871
10872 * buffer.c (Fkill_buffer): Call format2 instead of format1.
10873
a97e4138 108742003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
10875
10876 * xterm.h: Change to return value of x_dispatch_event to int.
10877
10878 * xterm.c (x_filter_event): New function.
10879 (event_handler_gdk, XTread_socket): Call x_filter_event.
10880 (x_dispatch_event): Change to return value of finish.
10881 (event_handler_gdk): Use return value from x_dispatch_event.
10882
10883 * xfns.c (x_window): Call create_frame_xic for GTK version to
10884 initialize input methods.
10885
10886 * gtkutil.h: Add (void) prototypes.
10887
10888 * gtkutil.c (create_menus): Remove code that puts the help menu to
10889 the right.
10890
54eefef1
JR
108912003-01-25 Jason Rumney <jasonr@gnu.org>
10892
10893 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
10894 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
10895 (png_load): Adjust colors for Windows. Use Windows
10896 bitmaps. Disable color table lookups.
c262430d
JR
10897 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
10898 (init_png_functions): New function.
10899 (png_read_from_memory, png_load): Call png library functions
10900 through pointers determined at runtime.
10901 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
10902 (init_external_image_libraries): New function.
10903 (init_xfns): Call it.
54eefef1 10904
1a9e275b
AS
109052003-01-24 Andreas Schwab <schwab@suse.de>
10906
10907 * minibuf.c (Fminibuffer_message): Verify type of parameter.
10908
a97e4138 109092003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
10910
10911 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
10912 of static initializer.
10913
422eec7e
DL
109142003-01-24 Dave Love <fx@gnu.org>
10915
10916 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
10917 architectures.
10918
10919 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
10920 Use __alignof__.
10921
2a026b04
KH
109222003-01-24 Kenichi Handa <handa@m17n.org>
10923
10924 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 10925 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
10926 (command_loop_1): Call adjust_point_for_property with proper
10927 second arg.
10928
a18bb28d
JR
109292003-01-22 Jason Rumney <jasonr@gnu.org>
10930
10931 Sync changes with xterm.c and xfns.c.
10932
10933 * w32term.c (x_draw_glyph_string_foreground)
10934 (x_draw_composite_glyph_string_foreground): Implement overstriking.
10935
10936 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
10937 phys_cursor's hpos is overwritten. This is still not completely
10938 correct, as it doesn't really make sense to use hpos at all to
10939 get the cursor glyph (as that is relative to the width of the
10940 characters on the line, which may have changed during the update).
10941
10942 * w32term.c (notice_overwritten_cursor): Handle the special case
10943 of the cursor being in the first blank non-text line at the
10944 end of a window.
10945
10946 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10947 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10948 Compute from the x position returned by x_draw_glyphs.
10949
10950 (x_display_and_set_cursor): Don't set phys_cursor_width here,
10951 except for NO_CURSOR and system caret, to make phys_cursor_width
10952 contain what its name suggests.
10953 (notice_overwritten_cursor): Consider the cursor image erased if
10954 the output area intersects the cursor image in y-direction.
10955
6a097c0c
SM
10956 * w32term.c (note_mode_line_or_margin_highlight): Rename from
10957 note_mode_line_highlight and extend.
a18bb28d
JR
10958
10959 * w32term.c (last_window): New variable.
10960 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
10961 (note_mouse_movement): Remove reimplemented code in #if 0.
10962
10963 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
10964 not update_mode_lines, and always set it to 1.
10965
ac6e47ef
JR
109662003-01-21 Jason Rumney <jasonr@gnu.org>
10967
10968 * w32fns.c (IDC_HAND): Define it if system headers don't.
10969
109702003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
10971
10972 * w32term.h (struct w32_output): New member hand_cursor.
10973 (WM_EMACS_SETCURSOR): New message definition.
10974
10975 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
10976 function w32_define_cursor.
10977 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
10978 position, change member name output_data.x to output_data.w32 and
10979 add function w32_define_cursor.
10980 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
10981 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
10982 (w32_initialize_display_info):
10983 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
10984
10985 * w32fns.c (Vx_hand_shape): New variable.
10986 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
10987 WM_EMACS_SETCURSOR.
10988 (x-create-frame): Setup Cursor types.
10989
ceb39a17
JB
109902003-01-21 David Ponce <david@dponce.com>
10991
ac6e47ef 10992 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 10993 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 10994 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 10995 2002-09-30.)
ac6e47ef
JR
10996 (w32_draw_relief_rect): Declare all args.
10997 (w32_define_cursor): New.
10998
10999 * w32fns.c (w32_load_cursor): New function.
11000 (w32_init_class): Use it.
11001 (x_put_x_image): Declare all args.
11002
b6189c3b 110032003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
11004
11005 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
11006
a97e4138 110072003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
11008
11009 * gtkutil.c: Must include stdio.h before termhooks.h
11010
83fc9c63
DL
110112003-01-21 Dave Love <fx@gnu.org>
11012
11013 * alloc.c (Fgc_status): Print zombie list.
11014 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
11015 Fix assignment of zombies.
11016 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
11017 Don't take car of non-cons.
11018
11019 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
11020
11021 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
11022
fe04b8c8
JR
110232003-01-20 David Ponce <david@dponce.com>
11024
11025 * w32menu.c (digest_single_submenu): Declare all args.
11026
11027 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
11028 changes in xmenu.c:
11029
11030 (parse_single_submenu): Use individual keymap's prompt
11031 string as pane name, if there is one.
11032 (set_frame_menubar): Save menu_items_n_panes from each call to
11033 parse_single_submenu and use it when calling digest_single_submenu.
11034
539e69a9
ST
110352003-01-20 Steven Tamm <steventamm@mac.com>
11036
11037 * macterm.c (XTread_socket): Checks for valid, visible window
11038 before sending a scroll-wheel event.
11039
675d000f
RS
110402003-01-20 Richard M. Stallman <rms@gnu.org>
11041
11042 * xdisp.c (redisplay_window): If mini window's buffer is not
11043 a minibuffer, then redisplay it like other windows.
11044
a97e4138 110452003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
11046
11047 * gtkutil.c (xg_create_frame_widgets): Check if there is an
11048 external tool bar before setting tool bar height.
11049
048addec
JD
110502003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11051
11052 * xterm.c (handle_one_xevent): Surround popup_activated
11053 with #ifdef:s for non-toolkit version.
11054
11055 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
11056 (gtkutil.o): New file.
11057 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
11058 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
11059
11060 * gtkutil.c: New file for GTK version.
11061
11062 * gtkutil.h: New file for GTK version.
11063
11064 * xterm.h: Add xt_or_gtk_widget.
11065 Include gtk files for USE_GTK.
11066 (struct x_output): Add toolbar_height.
11067 (struct x_output): Add GTK widgets and Gdk size_hints.
11068 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
11069 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
11070 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
11071
11072 * xterm.c: Include gtkutil.h for USE_GTK.
78819ebb 11073 (free_frame_menubar): Declare extern void for USE_GTK.
048addec
JD
11074 (note_mouse_highlight): Check popup_activated for USE_GTK.
11075 (xt_action_hook): Don't compile if USE_GTK.
11076 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
11077 (xg_scroll_callback): New function.
11078 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
11079 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
11080 for USE_GTK.
11081 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
11082 xg_show_scroll_bar for USE_GTK.
11083 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
11084 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
11085 (event_handler_gdk): New function for USE_GTK.
11086 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
11087 (handle_one_xevent): Make sure widget is mapped before
11088 calling x_real_positions for USE_GTK.
11089 (XTread_socket): Add GTK event loop for USE_GTK.
11090 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
11091 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
11092 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
11093 (x_iconify_frame): Add code for USE_GTK.
11094 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
11095 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
11096 is in gtkutil.c.
11097 (x_term_init): Add initialization for GTK.
11098 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
11099
11100 * xmenu.c: Include gtkutil.h for USE_GTK.
11101 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
11102 (single_menu_item, single_menu_item, Fx_popup_dialog):
11103 Check for USE_GTK.
048addec
JD
11104 (popup_widget_loop): New function for USE_GTK.
11105 (x_activate_menubar): Add code for USE_GTK.
11106 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
11107 (menu_highlight_callback, menubar_selection_callback):
11108 Add USE_GTK versions.
048addec
JD
11109 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
11110 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
11111 (free_frame_menubar): Only compile if not USE_GTK. GTK version
11112 is in gtkutil.c.
11113 (popup_selection_callback): New version for USE_GTK.
11114 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 11115 one USE_X_TOOLKIT version.
048addec
JD
11116 (xmenu_show): Call create_and_show_popup_menu.
11117 (dialog_selection_callback): New version for USE_GTK.
11118 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 11119 one USE_X_TOOLKIT version.
048addec
JD
11120 (xdialog_show): Call create_and_show_dialog.
11121
11122 * xfns.c: Include gtkutil for USE_GTK.
11123 (x_window_to_frame, x_any_window_to_frame)
11124 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
11125 (x_top_window_to_frame): Add code for USE_GTK.
11126 (x_set_background_color): Call xg_set_background_color for GTK.
11127 (x_set_menu_bar_lines): Check for USE_GTK.
11128 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
11129 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
11130 (x_window): Call xg_create_frame_widgets for USE_GTK.
11131 (Fx_create_frame): Check for USE_GTK
11132 (Fx_file_dialog): New implementation for USE_GTK.
11133
11134 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
11135 (update_menu_bar): Add check for USE_GTK.
11136 (update_tool_bar): Add check for USE_GTK and external tool bar.
11137 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
11138 (redisplay_internal): Add check for USE_GTK and popup_activated.
11139 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
11140 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
11141 (display_menu_bar): Add check for USE_GTK
11142
78819ebb 11143 * lisp.h (Vx_resource_name): Declare extern.
048addec 11144
a64387ee 11145 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
11146 for USE_GTK.
11147 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
11148
11149 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
11150 (FRAME_EXTERNAL_TOOL_BAR): New macro.
11151 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
11152
11153 * fileio.c (Fread_file_name): Add check for USE_GTK.
11154
6bdb309a
SM
11155 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
11156 Add check for USE_GTK.
048addec
JD
11157
11158 * config.in: Added HAVE_GTK
11159
11160 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
11161
111622003-01-18 Stefan Monnier <monnier@cs.yale.edu>
11163
11164 * charset.h (Funibyte_char_to_multibyte): Export.
11165
111662003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11167
11168 * xmenu.c (mouse_position_for_popup): New function.
11169 (Fx_popup_menu): Call mouse_position_for_popup for X and
11170 mouse_position_hook for others.
11171
111722003-01-17 Kim F. Storm <storm@cua.dk>
11173
11174 * editfns.c (Finsert): Mention `string-make-multibyte' and
11175 `string-as-multibyte' in doc string.
11176
111772003-01-17 Kenichi Handa <handa@m17n.org>
11178
11179 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 11180
048addec
JD
11181 * editfns.c (Fformat): Convert an unibyte char argument that is
11182 formatted by "%c" to multibyte if the total result must be a
11183 multibyte string.
cd7df9c0 11184
048addec 111852003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 11186
048addec
JD
11187 * process.c (set-process-filter): Document unibyte/multibyte-ness
11188 of string argument.
56210ecd 11189
048addec 111902003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 11191
048addec 11192 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 11193
048addec
JD
11194 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
11195 (re_search_2): Likewise.
6df8b9fe 11196
048addec 111972003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 11198
048addec
JD
11199 * xdisp.c (message_dolog): Fix bug of the case that *Message*
11200 buffer is unibyte.
292ddc31 11201
048addec 112022003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 11203
048addec 11204 * fns.c (Fsubstring): Clarify doc string.
292ddc31 11205
048addec
JD
11206 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
11207 (Fprevious_char_property_change)
11208 (Fnext_single_char_property_change)
11209 (Fprevious_single_char_property_change, Fnext_property_change)
11210 (Fnext_single_property_change, Fprevious_property_change)
11211 (Fprevious_single_property_change, Fadd_text_properties)
11212 (Fput_text_property, Fset_text_properties)
11213 (Fremove_text_properties, Fremove_list_of_text_properties)
11214 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 11215
048addec 112162003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 11217
048addec
JD
11218 * process.h (struct Lisp_Process): New member plist replaces old
11219 member private_vars. All uses changed.
63e4e4c6 11220
048addec 11221 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 11222 (QCplist): Rename from QCvars. Change all uses.
048addec 11223 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 11224 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 11225 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 11226 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 11227
048addec 112282003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 11229
6bdb309a 11230 * m/delta.h: Remove (obsolete).
e833850f 11231
048addec 112322003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 11233
048addec
JD
11234 * fileio.c (Fdelete_directory, Fdelete_file): Document the
11235 behaviour in front of symlinks.
11236 (Fdelete_file): Raise an error on directories.
817cb127 11237
048addec 112382003-01-13 Dave Love <fx@gnu.org>
817cb127 11239
048addec 11240 * fns.c (Freverse): Use QUIT.
3e8cf2ea 11241
048addec 112422003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 11243
048addec
JD
11244 * minibuf.c (minibuffer_completion_contents):
11245 Error if point is inside prompt.
3e8cf2ea 11246
048addec
JD
11247 * keyboard.c (command_loop_1): Don't redisplay directly
11248 if there's a post-command-hook.
3e8cf2ea 11249
048addec
JD
11250 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
11251 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 11252
048addec 112532003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 11254
048addec 11255 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 11256
048addec
JD
11257 * process.c (QCvars): New variable.
11258 (syms_of_process): Intern and staticpro it.
11259 (Fset_process_contact): Removed function.
11260 (Fprocess_variable, Fset_process_variable): New functions.
11261 (syms_of_process): Defsubr them.
11262 (Fstart_process): Initialize private_vars plist to nil.
11263 (Fmake_network_process): New arg :vars to setup the private
11264 variables for new network process.
11265 (server_accept_connection): Copy server's private variables to
11266 client process.
2c10f029 11267
048addec
JD
11268 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
11269 crashes). Code rewritten and simplified. Now directly aligns the
11270 pointer and recalculates pure_bytes_used, rather than aligning the
11271 size and adjusting the pointer.
b8a76c6c 11272
048addec 112732003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 11274
048addec
JD
11275 * process.c (Fset_process_contact): New function.
11276 (syms_of_process): defsubr it.
11277 (make-network-process): Update doc.
3a8d0899 11278
048addec 112792003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 11280
048addec
JD
11281 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
11282 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 11283
048addec 112842003-01-10 Dave Love <fx@gnu.org>
4abc7470 11285
048addec 11286 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 11287
048addec 112882003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 11289
048addec
JD
11290 * process.c (Fmake_network_process): Convert new port number
11291 to host byte order for `:service t' case. From Mario Lang.
bf338245 11292
048addec 112932003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 11294
048addec
JD
11295 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
11296 instead of XtAppProcessEvent.
bf338245 11297
048addec
JD
11298 * xterm.c (handle_one_xevent): New function.
11299 (x_dispatch_event): New function.
11300 (XTread_socket): Call handle_one_xevent.
bf338245 11301
048addec 11302 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 11303
048addec
JD
11304 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
11305 call XQueryPointer to get coordinates.
11306 (popup_get_selection): Do not set popup_activated_flag to zero,
11307 let popup_deactivate_callback do that. Needed for Motif.
11308 Call x_dispatch_event instead of XtDispatchEvent.
11309 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 11310
048addec 113112003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 11312
6bdb309a 11313 * process.c (server_accept_connection): Fix recording of new
048addec
JD
11314 connection's local address in :local property of contact info.
11315 (Fmake_network_process): Record local network address for new
11316 client processes in :local property of contact info.
6bdb309a 11317 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 11318
048addec 113192003-01-07 Dave Love <fx@gnu.org>
00e3ab56 11320
048addec 11321 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 11322
048addec 113232003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 11324
048addec 11325 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 11326
048addec
JD
11327 * eval.c (Fuser_variable_p): Doc change. For custom variables,
11328 use the same test as for custom-variable-p.
8c6d74c6 11329
048addec 113302003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 11331
048addec
JD
11332 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
11333 Count LAST_LINE_MISFIT in scroll margin for end of window.
11334 Move label too_near_end before setting SCROLL_MARGIN_POS.
11335 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 11336
048addec
JD
11337 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
11338 scroll_conservatively case. If scrolling that much doesn't change
11339 STARTP, move it down one line.
e833850f 11340
048addec
JD
11341 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
11342 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 11343
048addec
JD
11344 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
11345 selected frame.
8c6d74c6 11346
048addec 11347 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
3419757d 11348 (syms_of_keymap): Staticpro them.
048addec
JD
11349 (Fapropos_internal): Initialize them and clear them out.
11350 Don't GCPRO them.
8c6d74c6 11351
048addec
JD
11352 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
11353 Doc fixes.
8c6d74c6 11354
048addec
JD
11355 * lisp.h: New misc type Lisp_Save_Value.
11356 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
11357 (XSAVE_VALUE): New macro.
11358 (struct Lisp_Save_Value): New data type.
11359 (union Lisp_Misc): Add u_save_value alternative.
78819ebb 11360 (make_save_value): Declare.
8c6d74c6 11361
048addec 11362 * alloc.c (make_save_value): New function.
8c6d74c6 11363
048addec
JD
11364 * xterm.c (x_catch_errors): Save dpy using make_save_value.
11365 (x_catch_errors_unwind): Call XSync.
8c6d74c6 11366
048addec 113672003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 11368
048addec 11369 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 11370
048addec
JD
11371 * keyboard.c (command_loop_1): Call adjust_point_for_property
11372 in direct action cases for Qforward_char and Qbackward_char.
11373 Set already_adjusted so it won't be done twice.
8c6d74c6 11374
b6189c3b 113752002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 11376
048addec
JD
11377 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
11378 type definition of size_t.
8c609cff 11379
048addec 113802003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 11381
048addec
JD
11382 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
11383 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 11384
048addec 113852002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 11386
048addec
JD
11387 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
11388 to default to t.
fa634a5e 11389
048addec 113902002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 11391
048addec 11392 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 11393
048addec 113942002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 11395
048addec
JD
11396 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
11397 allow building in a different directory than source. Uses some
11398 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 11399
048addec 114002002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 11401
048addec
JD
11402 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
11403 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
11404 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
11405 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 11406
048addec 114072002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 11408
048addec
JD
11409 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
11410 <scroll-down-aggressively>: Doc fix.
2155ecf3 11411
048addec
JD
11412 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
11413 string as pane name, if there is one.
11414 (set_frame_menubar): Save menu_items_n_panes from each call to
11415 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 11416
048addec
JD
11417 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
11418 Don't try to make last line fully visible if it is past end of window.
61f1d295 11419
048addec 114202002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 11421
048addec
JD
11422 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
11423 (mac_menu_show): Add support for hierarchical popup menus.
11424 (add_menu_item): Remove indentation support.
11425 (fill_submenu, fill_menu): Create hierarchical menus
11426 instead of using indentation.
0b17a217 11427
048addec 114282002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 11429
048addec
JD
11430 * xdisp.c (try_cursor_movement): Don't call try_window here.
11431 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 11432
048addec 11433 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 11434
048addec 114352002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 11436
048addec
JD
11437 * macterm.c (XTread_socket): Call KeyTranslate for control and
11438 meta to deal correctly shifted non-alpha characters, like C-S-5
11439 being treated like C-%. Does not look for shift key to deal
11440 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 11441
048addec 114422002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 11443
048addec
JD
11444 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
11445 If it is non-nil, run timers. Use an unwind-protect to requeue
11446 the events that were read ahead.
11447 (popup_get_selection_unwind): New subroutine.
11448 (popup_get_selection_queue): File-scope variable now holds that queue.
11449 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
11450 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
11451 Use an unwind-protect to pop down the dialog box.
11452 (xdialog_show_unwind): New subroutine implements that.
f02cac82 11453
048addec
JD
11454 * xdisp.c (row_containing_pos): Change exit test using last_y.
11455 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 11456
048addec
JD
11457 * lread.c (load_error_handler): New function.
11458 (Fload): Handle errors in Fsubstitute_in_file_name.
11459 Don't expect Fsignal to return.
f02cac82 11460
048addec
JD
11461 * eval.c: Errors and throws work right with interrupt blocking.
11462 (struct catchtag): New elt interrupt_input_blocked.
11463 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
11464 (internal_catch, Fcondition_case, internal_condition_case)
11465 (internal_condition_case_1, internal_condition_case_2): Save it.
11466 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 11467
048addec 11468 * editfns.c (Fformat): Add parens.
f02cac82 11469
048addec
JD
11470 * dired.c (file_name_completion): Fix that change.
11471 Delete special quit-handling code; just use QUIT.
f02cac82 11472
b6189c3b 114732002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 11474
048addec
JD
11475 * dired.c (file_name_completion): Close directory on error
11476 just as in directory_files_internal.
1a590729 11477
048addec 114782002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 11479
048addec
JD
11480 * window.c (Fset_window_configuration): Set old_point to correct
11481 value when new_current_buffer == current_buffer.
f02cac82 11482
048addec 114832002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 11484
048addec
JD
11485 Revisited my earlier fix for the following entry in etc/PROBLEMS:
11486 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
11487 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 11488
048addec
JD
11489 These changes were in part based upon suggestions made by Peter
11490 'Luna' Runestig [peter@runestig.com].
9785d95b 11491
f4a5a485
SM
11492 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
11493 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
11494 (g_b_init_get_sid_identifier_authority ): Add several static
048addec 11495 global variables.
9785d95b 11496
048addec
JD
11497 * w32.c (globals_of_w32): New function. Used to initialize those
11498 global variables that must always be initialized on startup even
11499 when the global variable initialized is non zero. Its primary
11500 purpose at this time is to set the global variables
11501 g_b_init_is_windows_9x, g_b_init_open_process_token,
11502 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
11503 g_b_init_get_sid_identifier_authority to 0 on startup.
11504 Called from main.
9785d95b 11505
048addec
JD
11506 * w32.c (is_windows_9x): Perform initialization only if
11507 g_b_init_is_windows_9x is equal to 0. On initialization set
11508 g_b_init_is_windows_9x equal to 1.
2308af15 11509
048addec
JD
11510 * w32.c (open_process_token): Perform initialization only if
11511 g_b_init_open_process_token is equal to 0. On initialization set
11512 g_b_init_open_process_token equal to 1.
2308af15 11513
048addec
JD
11514 * w32.c (get_token_information): Perform initialization only if
11515 g_b_init_get_token_information is equal to 0. On initialization
11516 set g_b_init_get_token_information equal to 1.
9785d95b 11517
048addec
JD
11518 * w32.c (lookup_account_sid): Perform initialization only if
11519 g_b_init_lookup_account_sid is equal to 0. On initialization
11520 set g_b_init_lookup_account_sid equal to 1.
9785d95b 11521
048addec
JD
11522 * w32.c (get_sid_identifier_authority): Perform initialization
11523 only if g_b_init_get_sid_identifier_authority is equal to 0.
11524 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 11525
f63fd14e 11526 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
11527 those global variables that must always be initialized on startup
11528 even when the global variable initialized is non zero.
11529 Its primary purpose at this time is to initialize the global variable
11530 track_mouse_event_fn.
9785d95b 11531
a64387ee 11532 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 11533 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 11534
048addec 11535 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 11536
f63fd14e 11537 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
11538 initialize those global variables that must always be initialized
11539 on startup even when the global variable initialized is non zero.
11540 Its primary purpose at this time is to initialize the global
11541 variables get_menu_item_info and set_menu_item_info.
9785d95b 11542
048addec
JD
11543 * w32menu.c (initialize_frame_menubar): Remove initialization of
11544 get_menu_item_info and set_menu_item_info.
9785d95b 11545
048addec 11546 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 11547
048addec
JD
11548 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
11549 Declare them.
9785d95b 11550
048addec
JD
11551 * emacs.c (main): Call globals_of_w32 prior to calling
11552 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
11553 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
11554 is defined.
9785d95b 11555
048addec
JD
11556 * w32term.c (x_update_window_begin): Fix Windows API error
11557 detected by BoundsChecker. Test to determine if
11558 w32_system_caret_hwnd is NULL prior to attempting to use
11559 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 11560
048addec
JD
11561 * w32term.c (x_update_window_end): Fix Windows API error
11562 detected by BoundsChecker. Test to determine if
11563 w32_system_caret_hwnd is NULL prior to attempting to use
11564 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 11565
048addec 115662002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 11567
048addec
JD
11568 * coding.c (coding_system_require_warning): New variable.
11569 (syms_of_coding): DEFVAR it.
b6da19ef 11570
048addec 11571 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 11572
048addec
JD
11573 * fileio.c (choose_write_coding_system): Even if
11574 Vcoding_system_for_write is non-nil, if
11575 coding_system_require_warning is nonzero, call
11576 Vselect_safe_coding_system_function.
bfcf6dbe 11577
048addec 115782002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 11579
048addec
JD
11580 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
11581 (lisp): Add font-core.
2c568af5 11582
048addec 115832002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 11584
048addec
JD
11585 * textprop.c (text_read_only): New arg `propval'.
11586 (get_char_property_and_overlay): Remove unused var `next_overlay'.
11587 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 11588
048addec 115892002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 11590
048addec 11591 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 11592
048addec 115932002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 11594
048addec
JD
11595 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
11596 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
11597 Be more careful about when help_events are generated.
96720f09 11598
048addec 115992002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 11600
048addec
JD
11601 * macterm.c (mac_check_for_quit_char): Correctly set the
11602 modifiers of the event to 0.
11603 * mac.c (sys_select): Duplicate rfds before calling select to
11604 ensure that rfds survive the while loop.
e5ae1c49 11605
048addec 116062002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 11607
048addec
JD
11608 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
11609 row_containing_pos returned NULL.
2eb46b2d 11610
048addec 116112002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 11612
6bdb309a 11613 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 11614 non-blocking.
6bdb309a 11615 (sys_select): Fix sys_select to not use a timeout larger than
048addec 11616 the one given.
b11f1d8a 11617
048addec 116182002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 11619
048addec 11620 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 11621
048addec 116222002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 11623
048addec
JD
11624 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
11625 as the last thing.
a4ac5b17 11626
048addec 116272002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 11628
048addec 11629 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 11630
048addec 116312002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 11632
048addec
JD
11633 * editfns.c (Fformat): Handle precision in string conversion
11634 specifiers like libc functions do (ie, print at most that many
11635 characters).
85cce843 11636
048addec 116372002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 11638
048addec
JD
11639 * xdisp.c (row_containing_pos): Check more carefully
11640 whether charpos is really in the row before returning it.
0d4d26a7 11641
048addec 116422002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 11643
048addec 11644 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 11645
048addec
JD
11646 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
11647 each stack frame. This may change as it could be time consuming.
0d4d26a7 11648
048addec
JD
11649 * macterm.c (mac_check_for_quit_char, quit_char_comp)
11650 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 11651 (mac_initialize): Add code to check for pressing of quit_char
048addec 11652 in the OS event queue.
b11f1d8a 11653
048addec
JD
11654 * mac.c (sys_select): Call mac_check_for_quit_char every second
11655 while blocking on select.
0d4d26a7 11656
048addec
JD
11657 * mac.c (sys_read): Use sys_select to test for input first
11658 before calling read, to allow C-g to break.
9252f7bc 11659
048addec 116602002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 11661
048addec 11662 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 11663
048addec 11664 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 11665
048addec 11666 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 11667
048addec
JD
11668 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
11669 autoload.
9252f7bc 11670
048addec 11671 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 11672
048addec 11673 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 11674
048addec 116752002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 11676
048addec 11677 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 11678
048addec 116792002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 11680
048addec 11681 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 11682
048addec 11683 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 11684
048addec 11685 * alloca.c: Don't use #error.
02d588e2 11686
048addec 116872002-12-03 Dave Love <fx@gnu.org>
02d588e2 11688
048addec
JD
11689 * buffer.c (Qucs_set_table_for_input): New.
11690 (Fget_buffer_create): Use it.
11691 (Qset_buffer_major_mode_hook): Deleted.
11692 (Fset_buffer_major_mode): Revert previous change.
11693 (init_buffer_once): Intern ucs-set-table-for-input.
11694 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
11695 Add &Qucs_set_table_for_input.
451e2697 11696
048addec 116972002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 11698
048addec
JD
11699 * callint.c (Fcall_interactively): Use next_event only if less
11700 than key_count.
72742a99 11701
048addec 117022002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 11703
048addec
JD
11704 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
11705 names to 255 characters.
72742a99 11706
048addec
JD
11707 * macterm.c (XTread_socket): If all frames have been collapsed,
11708 expand the first one before handling drag-and-drop events.
72742a99 11709
048addec
JD
11710 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
11711 which is detected by autoconf.
40e6ff95 11712
048addec 117132002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 11714
048addec
JD
11715 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
11716 offset in two hints table to allow prebinding to be redone and
11717 allow the executable to be stripped.
c02138c6 11718
048addec 117192002-11-29 Dave Love <fx@gnu.org>
c02138c6 11720
048addec
JD
11721 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
11722 already provided.
0e47bbf7 11723
048addec 117242002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 11725
048addec
JD
11726 * xdisp.c (start_display): Check more intelligently for
11727 whether the line is continued.
11728 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 11729
048addec 117302002-11-28 Dave Love <fx@gnu.org>
44129dcb 11731
048addec
JD
11732 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
11733 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 11734
048addec 117352002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 11736
048addec
JD
11737 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
11738 more descriptive error output from lread.c:Fload upon most require
11739 cycles during boostrapping.
1637fd2c 11740
048addec 117412002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 11742
048addec
JD
11743 * fileio.c (Finsert_file_contents): Give a more appropriate error
11744 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 11745
048addec
JD
11746 * dired.c (Ffile_attributes): Don't return negative file sizes for
11747 files bigger than 2Gb when off_t is 32 bit.
540c2788 11748
048addec 117492002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 11750
048addec 11751 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 11752
048addec
JD
11753 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
11754 Test GETPGRP_VOID instead.
11755 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 11756
048addec
JD
11757 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
11758 Don't define.
11759 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 11760
048addec 11761 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 11762
048addec 117632002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 11764
048addec
JD
11765 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
11766 supported.
4042a81a 11767
048addec 117682002-11-25 Dave Love <fx@gnu.org>
4042a81a 11769
048addec 11770 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 11771
048addec 11772 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 11773
048addec 117742002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 11775
048addec 11776 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 11777
048addec 117782002-11-24 Steven Tamm <steventamm@mac.com>
82122254 11779
048addec
JD
11780 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
11781 determine the size of pointers alloced in unexed space instead
11782 of using possibly invalid emacs_zone pointers. This fixes the
11783 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 11784
048addec 117852002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 11786
048addec 11787 * search.c (Fstring_match): Doc fix.
c1ee53bc 11788
048addec
JD
11789 * callint.c (Fcall_interactively): If a command fails because
11790 `*' detects a read-only buffer, but RECORD_FLAG is set,
11791 record it anyway if the args don't actually do tty input.
5598c32e 11792
048addec 117932002-11-22 Dave Love <fx@gnu.org>
5598c32e 11794
048addec 11795 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 11796
048addec
JD
11797 * keyboard.c (interrupt_signal): Provide forward declaration.
11798 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 11799
048addec 11800 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 11801
048addec 118022002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 11803
048addec
JD
11804 * eval.c (interactive_p): Skip any number of bytecode
11805 and special form frames, in any order.
516eea8e 11806
048addec 118072002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 11808
048addec
JD
11809 * w32fns.c (convert_mono_to_color_image): New function.
11810 (xbm_load, xbm_load_image): Use it when foreground or background
11811 is explicitly set.
04dbfa08 11812
048addec 118132002-11-19 Dave Love <fx@gnu.org>
04dbfa08 11814
048addec 11815 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 11816
048addec 118172002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 11818
048addec
JD
11819 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
11820 (XPutPixel): Swap blue and red.
11821 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
11822 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
11823 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
11824 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 11825
048addec 118262002-11-18 Dave Love <fx@gnu.org>
d824beee 11827
048addec 11828 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 11829
048addec 11830 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 11831
048addec 11832 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 11833
048addec
JD
11834 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
11835 malloc, realloc, calloc.
d824beee 11836
048addec
JD
11837 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
11838 (bcmp): Don't define.
d824beee 11839
048addec 11840 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 11841
048addec 11842 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 11843
048addec 11844 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 11845
048addec 11846 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 11847
048addec
JD
11848 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
11849 Don't include alloca.h.
d824beee 11850
048addec 11851 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 11852
048addec 11853 * regex.c (_GNU_SOURCE): Don't define.
1998560a 11854
048addec 11855 * process.c (_GNU_SOURCE): Don't define.
1998560a 11856
048addec 11857 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 11858
048addec 118592002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 11860
048addec 11861 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 11862
048addec 118632002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 11864
048addec
JD
11865 * dispextern.h (struct face): Add `overstrike' field.
11866 * xterm.c (x_draw_glyph_string_foreground)
11867 (x_draw_composite_glyph_string_foreground): Implement overstriking.
11868 * xfaces.c (load_face_font): Set `face->overstrike' based on
11869 result from choose_face_font.
11870 (best_matching_font, choose_face_font): Add `needs_overstrike'
11871 argument, and use it to return whether overstriking is desirable
11872 for this face/font combo.
11873 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 11874
048addec 118752002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 11876
048addec
JD
11877 This change is my fix for the following entry in etc/PROBLEMS:
11878 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
11879 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 11880
048addec
JD
11881 * w32.c: Added wrapper functions around the win32 API functions
11882 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
11883 GetSidIdentifierAuthority. These wrapper functions serve two
11884 purposes:
11885 1. They ensure that the wrapped function can never be called
11886 when Emacs is running on an operating system on which they are
11887 not supported (Microsoft Windows 95 / 98 / ME).
11888 2. They call the wrapped functions via function pointers rather
11889 than calling them directly. This avoids taking advantage of the
11890 undocumented fact that although these functions are not supported
11891 in the 9x branch of Microsoft Windows, the functions do exist in
11892 the version of advapi32.dll that is found in the 9x branch of
11893 Microsoft Windows.
f60ae425 11894
6bdb309a 11895 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
11896 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
11897 and GetSidIdentifierAuthority with calls to the newly added
11898 wrapper functions.
f60ae425 11899
048addec
JD
11900 * w32.h: Added extern declarations for the following functions:
11901 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
11902 syms_of_w32menu, and void syms_of_fontset.
f60ae425 11903
6bdb309a 11904 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
11905 function pointer track_mouse_event_fn in the handler for the
11906 WM_SETFOCUS message.
3582b6a3 11907
6bdb309a 11908 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
11909 reinitialize the function pointers set_menu_item_info and
11910 get_menu_item_info.
f60ae425 11911
048addec 119122002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 11913
048addec
JD
11914 * sound.c: Added a partial implementation of play-sound-internal
11915 for Microsoft Windows. Added various #ifdef / #else / #endif
11916 code blocks to separate the code that will compile under
11917 Microsoft Windows from the code that is specific to Gnu/Linux.
11918 Moved several blocks of code around to make this separation of code
11919 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 11920
048addec 11921 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 11922
048addec
JD
11923 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
11924 added support for play-sound-internal under Windows would be
11925 included in the build of Emacs.
517f42a0 11926
048addec 119272002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 11928
048addec 11929 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 11930
048addec 11931 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 11932
048addec 119332002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 11934
048addec
JD
11935 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
11936 (adjust_point_for_property): Move out of display and invisible even if
11937 we were already inside before (in case a property was added while
11938 we weren't looking). Be more careful when handling invisible props.
11939 Skip invisible text as if it really wasn't there at all.
aab83f91 11940
048addec 119412002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 11942
048addec
JD
11943 * w32term.c (x_draw_image_foreground)
11944 (w32_draw_image_foreground_1): Use standard copy and invert
11945 operations to draw images.
aab83f91 11946
048addec
JD
11947 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
11948 depth of 1.
11949 (xbm_read_bitmap_data): Invert bits as xbm is read in.
11950 (XPutPixel): Don't invert bits here.
a4478a76 11951
048addec 119522002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 11953
048addec
JD
11954 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
11955 (w32_draw_image_foreground_1): Handle image masks.
11956 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 11957
048addec
JD
11958 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
11959 (x_from_xcolors): Adjust RGB values for W32.
11960 (image_background, image_background_transparent)
11961 (postprocess_image, x_to_xcolors, x_disable_image)
11962 (x_build_heuristic_mask): Adapt for W32 and enable.
11963 (x_create_x_image_and_pixmap): Mark images with palettes as such.
11964 (xbm_load): Remove unused variable.
03670a65 11965
048addec 119662002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 11967
048addec 11968 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 11969
048addec 119702002-11-14 Dave Love <fx@gnu.org>
59daa29a 11971
048addec 11972 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 11973
048addec
JD
11974 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
11975 * xmenu.c (unuse_menu_items, digest_single_submenu):
11976 * xfns.c (x_put_x_image):
11977 * xdisp.c (message2_nolog, set_message):
11978 * undo.c (record_point):
11979 * terminfo.c (tparam):
11980 * syntax.c (scan_sexps_forward):
11981 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
11982 * composite.c (update_compositions):
11983 * cm.c (calccost, cmgoto):
11984 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 11985
048addec 11986 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 11987
048addec
JD
11988 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
11989 Don't declare.
59daa29a 11990
048addec 11991 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 11992
048addec
JD
11993 * fns.c (Fcopy_sequence): Doc fix.
11994 (Fmap_char_table): Cast `call2'.
3947677c 11995
048addec
JD
119962002-11-14 Francesco Potorti` <pot@gnu.org>
11997
11998 * s/sol2-8.h: New file.
11999
120002002-11-14 Kim F. Storm <storm@cua.dk>
12001
12002 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
12003 dependency on `risky-local-variable' and the :propertize form.
12004
120052002-11-12 Stefan Monnier <monnier@cs.yale.edu>
12006
12007 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
12008
12009 * syntax.c (scan_sexps_forward): Undo last patch.
12010 Use a more obvious fix: check eob before updating the syntax table.
12011
120122002-11-09 Stefan Monnier <monnier@cs.yale.edu>
12013
12014 * syntax.c (scan_sexps_forward): Update syntax table before reading
12015 a char rather than after so we don't update the table past eob.
12016
120172002-11-09 Dave Love <fx@gnu.org>
12018
12019 * buffer.c (Fset_buffer_major_mode): Fix last change.
12020
12021 * regex.c (regexec): Fix pmatch declaration.
12022
12023 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
12024
12025 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
12026 to self-inserting characters.
12027 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
12028
12029 * coding.c (Vtranslation_table_for_input): New.
12030 (syms_of_coding): DEFVAR it.
12031
120322002-11-08 Juanma Barranquero <lektu@terra.es>
12033
12034 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
12035 window.
12036
120372002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12038
6bdb309a 12039 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
12040 cp, and i.
12041
120422002-11-06 Dave Love <fx@gnu.org>
12043
12044 * buffer.c (Qset_buffer_major_mode_hook): New.
12045 (Fset_buffer_major_mode): Use it.
12046
120472002-11-06 Richard M. Stallman <rms@gnu.org>
12048
12049 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
12050 and stop_polling.
12051
12052 * process.c (wait_reading_process_input):
12053 Test POLLING_PROBLEM_IN_SELECT, not hpux.
12054 Avoid initialization for auto Lisp_Object var.
12055
12056 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
12057
12058 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
12059
120602002-11-05 Richard M. Stallman <rms@gnu.org>
12061
12062 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
12063
12064 * callint.c (Fcall_interactively): New local filter_specs.
12065 (Fcall_interactively): Check for progn as well as let.
12066 Add a gcpro.
12067 (Qprogn): New variable.
12068 (syms_of_callint): Staticpro and init Qprogn.
12069
120702002-11-04 John Paul Wallington <jpw@shootybangbang.com>
12071
12072 * lread.c (Feval_buffer): Doc fix.
12073
120742002-11-04 Dave Love <fx@gnu.org>
12075
12076 * keyboard.c (read_char): Always translate iff
12077 Vkeyboard_translate_table is a char table and c is valid.
12078
12079 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12080 and fix C types.
12081
120822002-11-03 Stefan Monnier <monnier@cs.yale.edu>
12083
12084 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
12085
12086 * editfns.c (get_pos_property): Don't hardcode Qfield.
12087
12088 * keyboard.c (adjust_point_for_property): Handle `display' prop on
12089 overlays. Also handle `invisible' prop.
12090
120912002-11-02 Stefan Monnier <monnier@cs.yale.edu>
12092
12093 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
12094 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
12095
120962002-11-01 Andreas Schwab <schwab@suse.de>
12097
12098 * editfns.c (Fmessage): Revert last change to properly handle %%.
12099
121002002-11-01 Stefan Monnier <monnier@cs.yale.edu>
12101
12102 * xmenu.c (unuse_menu_items): New fun.
12103 (menu_items_inuse): New var.
12104 (syms_of_xmenu): Initialize it.
12105 (init_menu_items): Use it to detect re-entrance.
12106 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
12107 (Fx_popup_menu): Remove spurious XSETFRAME.
12108
12109 * editfns.c (find_field): Make an exception for nil fields.
12110
121112002-11-01 Dave Love <fx@gnu.org>
12112
12113 * m/gec63.h: Deleted.
12114
121152002-10-31 Dave Love <fx@gnu.org>
12116
12117 * xterm.c (XTread_socket): Fix last change.
12118 (xaw_scroll_callback): Cast call_data to long to avoid warning.
12119
121202002-10-31 Stefan Monnier <monnier@cs.yale.edu>
12121
12122 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
12123
121242002-10-30 Stefan Monnier <monnier@cs.yale.edu>
12125
12126 * editfns.c (overlays_around, get_pos_property): New funs.
12127 (find_field): Use them.
12128 Also be careful not to modify POS before its last use.
12129 (Fmessage): Don't Fformat if there's nothing to format.
12130
121312002-10-30 Dave Love <fx@gnu.org>
12132
12133 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
12134 [HAVE_PTY_H]; Include pty.h.
12135
12136 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
12137
12138 * xterm.c (Qeql): Declare.
12139 (Vx_keysym_table): New.
12140 (syms_of_xterm): Initialize it.
12141 (XTread_socket): Use it. Deal with ASCII keysyms.
12142 (XSetIMValues) [HAVE_X11R6]: Prototype.
12143
12144 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
12145 (lispy_kana_keys): Comment out.
12146 (make_lispy_event) [XK_kana_A]: Comment out.
12147 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
12148 Fix sprintf call.
12149
12150 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
12151 regexp.h change).
12152 (TERMINFO, LIBS_TERMCAP): Define.
12153
12154 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
12155 (bcmp): Define conditional on HAVE_BCMP.
12156 (NO_SIOCTL_H): Don't define.
12157 (TIOCSIGSEND): Don't make conditional on IRIX6.
12158
12159 * s/sol2-5.h: Don't include strings.h.
12160 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
12161
12162 * s/irix6-0.h (IRIX6): Don't define.
12163 (bcopy, bcmp, bzero): Don't undef.
12164
12165 * s/irix6-5.h: Don't include strings.h.
12166 (IRIX6): Don't define.
12167 (bcopy, bcmp, bzero): Don't undef.
12168
12169 * syntax.c (Fforward_comment): Doc fix.
12170
121712002-10-29 Kim F. Storm <storm@cua.dk>
12172
12173 * process.c (Fsignal_process): Allow PROCESS to be specified by
12174 name in addition to pid (as integer or string).
12175
121762002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
12177
12178 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
12179 environments.
12180
121812002-10-27 Kim F. Storm <storm@cua.dk>
12182
12183 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
12184
12185 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
12186
12187 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
12188
12189 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
12190
121912002-10-26 Richard M. Stallman <rms@gnu.org>
12192
12193 * editfns.c (Fformat): Detect invalid format letters for floats.
12194
121952002-10-25 Kenichi Handa <handa@m17n.org>
12196
12197 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
12198 (x_set_title): Likewise.
12199
122002002-10-25 Juanma Barranquero <lektu@terra.es>
12201
12202 * macgui.h:
12203 * w32gui.h: Remove definition of XColor.
12204
12205 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
12206
122072002-10-24 Kim F. Storm <storm@cua.dk>
12208
12209 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
12210 Callers changed (supply dummy arg).
12211
12212 * lisp.h (get_window_cursor_type): Update prototype.
12213
12214 * w32term.c (x_display_and_set_cursor): Get active_cursor from
12215 get_window_cursor_type to track system caret.
12216
122172002-10-24 Kim F. Storm <storm@cua.dk>
12218
12219 * process.c (Fformat_network_address): New function.
12220 (syms_of_process): Defsubr it.
12221 (list_processes_1): Use it to format :local/:remote address if
f9711de4 12222 service/host is not set; before Emacs would crash in that case.
048addec
JD
12223 (Fmake_network_process): Don't use Ffind_operation_coding_system
12224 to setup coding system if host or service is not set.
12225
122262002-10-23 Juanma Barranquero <lektu@terra.es>
12227
12228 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
12229
12230 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
12231 COLORREF.
12232
12233 * macgui.h:
12234 * w32gui.h: Add definition of XColor.
12235
12236 * macfns.c:
12237 * w32fns.c:
12238 * xfaces.c: Remove definition of XColor.
12239
122402002-10-22 Stefan Monnier <monnier@cs.yale.edu>
12241
12242 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
12243
12244 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
12245 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
12246 window if it is dedicated.
12247 (Fshrink_window): Add preserve_before as was done for enlarge_window.
12248 (Vspecial_display_function): Update docstring.
12249
12250 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
12251 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
12252 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
12253
122542002-10-21 Stefan Monnier <monnier@cs.yale.edu>
12255
12256 * casefiddle.c (casify_region): Don't treat a prefix char as part
12257 of a word when at the beginning.
12258
122592002-10-17 Juanma Barranquero <lektu@terra.es>
12260
12261 * lread.c (syms_of_lread): Fix typos.
12262
122632002-10-17 Dave Love <fx@gnu.org>
12264
12265 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
12266
122672002-10-16 Richard M. Stallman <rms@gnu.org>
12268
12269 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
12270
122712002-10-14 Juanma Barranquero <lektu@terra.es>
12272
12273 * w16select.c (syms_of_win16select): Fix docstring for
12274 `selection-coding-system'.
12275
12276 * w32select.c (syms_of_w32select): Likewise.
12277
122782002-10-14 Stefan Monnier <monnier@cs.yale.edu>
12279
12280 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
12281 a backslash-quoted char.
12282 (scan_lists, scan_sexps_forward): Pacify the compiler.
12283
122842002-10-13 Richard M. Stallman <rms@gnu.org>
12285
12286 * window.c (window_scroll): Set immediate_quit.
12287
12288 * print.c (print): When backquote form is the car of a list,
12289 output in old style. Use old_backquote_output to output all
12290 comma forms inside it in old style too.
12291
12292 * buffer.h (struct buffer): Move `undo_list' down below `name'.
12293
122942002-10-11 Markus Rost <rost@math.ohio-state.edu>
12295
12296 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
12297 batch mode).
12298
12299 * lread.c (Fload): Doc fix (load-suffixes).
12300
123012002-10-10 Steven Tamm <steventamm@mac.com>
12302
12303 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
12304 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
12305 Also switch the default to Qnil from Qt.
12306
123072002-10-08 Kenichi Handa <handa@m17n.org>
12308
12309 * coding.c (code_convert_region): When we need more GAP for
12310 conversion, pay attention to the case that coding->produced is not
12311 greater than coding->consumed.
12312
123132002-10-07 Richard M. Stallman <rms@gnu.org>
12314
12315 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
12316
123172002-10-06 Andrew Choi <akochoi@shaw.ca>
12318
12319 * macmenu.c (mac_menu_show): Add j to count menu items; match
12320 menu_item_selection to it to find selected item.
12321
123222002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12323
12324 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
12325 cases. The correct fix is to pass ReparentNotify to Xt.
12326 The shell widget interprets ConfigureNotify differently depending
12327 on if it has been reparented or not.
12328
123292002-10-05 Markus Rost <rost@math.ohio-state.edu>
12330
12331 * editfns.c (Fformat_time_string): Doc fix.
12332
123332002-10-05 John Paul Wallington <jpw@shootybangbang.com>
12334
12335 * fns.c (Flength): Doc fix.
12336
123372002-10-04 Stefan Monnier <monnier@cs.yale.edu>
12338
12339 * keyboard.c (keyremap): New struct.
12340 (read_key_sequence): Use it: globally replace keytran_foo with
12341 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
12342 keytran_next and fkey_next to just `next'.
12343
123442002-10-04 Steven Tamm <steventamm@mac.com>
12345
12346 * macterm.c (keycode_to_xkeysym_table): Change return to be
12347 treated like an X keysym.
12348
123492002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12350
12351 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
12352 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
12353 This is to also handle x/y changes that occur because of a resize.
12354
123552002-10-02 John Paul Wallington <jpw@shootybangbang.com>
12356
12357 * frame.c (Vdelete_frame_functions): New variable.
12358 (syms_of_frame): Initialize and defvar it.
12359 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
12360 it when frame's `tooltip' parameter is non-nil.
12361
12362 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
12363
12364 * w32fns.c (x_create_tip_frame): Likewise.
12365
12366 * macfns.c (x_create_tip_frame): Likewise.
12367
123682002-09-30 Kenichi Handa <handa@m17n.org>
12369
12370 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
12371 -1 before calling ccl_driver.
12372
12373 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
12374 Only when it is non-nil, handle composition sequence.
12375 (setup_coding_system) <0>: Don't force composition handling.
12376
12377 * Makefile.in (lisp, shortlisp): Add utf-16.elc
12378
123792002-09-29 Richard M. Stallman <rms@gnu.org>
12380
12381 * search.c (Freplace_match): Adjust match data for the substitution
12382 just made in the buffer.
12383
12384 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
12385 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
12386
123872002-09-27 Richard M. Stallman <rms@gnu.org>
12388
12389 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
12390 (read_char): Use them. Do all exits thru the end of the function.
12391
123922002-09-27 Kenichi Handa <handa@etl.go.jp>
12393
12394 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
12395 is nil.
12396
123972002-09-26 Richard M. Stallman <rms@gnu.org>
12398
12399 * regex.h (__restrict_arr): Don't define if already defined.
12400
12401 * coding.c (run_pre_post_conversion_on_str):
12402 Save and restore Vdeactivate_mark.
12403
124042002-09-26 John Paul Wallington <jpw@shootybangbang.com>
12405
12406 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
12407
124082002-09-26 Kenichi Handa <handa@etl.go.jp>
12409
12410 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
12411 nonzero, try face's family at first. Otherwise try FAMILY at first.
12412 (choose_face_font): If C is a single byte char or latin-1, call
12413 try_font_list with PREFER_FACE_FAMILY 1.
12414
124152002-09-21 Richard M. Stallman <rms@gnu.org>
12416
12417 * window.c (select_window_1): Don't select frame.
12418 Set frame's selected window only when frame itself is selected.
12419 (Fselect_window): Doc fix.
12420
124212002-09-18 Kim F. Storm <storm@cua.dk>
12422
12423 * process.c (make-network-process): Doc fix (there is no
12424 network-server-log-function hook).
12425
124262002-09-18 Richard M. Stallman <rms@gnu.org>
12427
12428 * print.c (print): Clear out the unused parts of Vprint_number_table.
12429 (syms_of_print): Doc fix for `print-number-table'.
12430
12431 * unexelf.c (unexec): Undo previous change.
12432
124332002-09-17 Andreas Schwab <schwab@suse.de>
12434
12435 * m/alpha.h [LINUX]: Don't define DATA_START.
12436
124372002-09-16 Dave Love <fx@gnu.org>
12438
12439 * unexelf.c (unexec): Deal with .got, reinstating change from
12440 25-08-1999.
12441
124422002-09-13 Richard M. Stallman <rms@gnu.org>
12443
12444 * s/sol2-6.h (UNEXEC): Comment out definition.
12445
12446 * unexsol.c (unexec): Don't downcase first letter of error msg.
12447
12448 * xfaces.c (Fcolor_supported_p): Just one arg is required.
12449
124502002-09-12 Markus Rost <rost@math.ohio-state.edu>
12451
12452 * unexsol.c: Include buffer.h, charset.h, coding.h.
12453
124542002-09-11 Richard M. Stallman <rms@gnu.org>
12455
12456 * unexsol.c: Don't use report_file_error; do it by hand
12457 using dlerror.
12458
12459 * process.c (wait_reading_process_input, both versions):
12460 Before calling turn_on_atimers, call stop_polling.
12461
12462 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
12463
12464 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
12465 we go to too_near_end, call clear_glyph_matrix.
12466 (redisplay_window): After make_cursor_line_fully_visible,
12467 call clear_glyph_matrix and bypass `goto done'.
12468
12469 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
12470 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
12471
124722002-09-10 Richard M. Stallman <rms@gnu.org>
12473
12474 * fileio.c (Fdo_auto_save): Catch error making directory.
12475 Only call push_message if we need to.
12476 At the same time, make an unwind-protect to pop it.
12477 Rename local message_p to old_message_p.
12478 (do_auto_save_make_dir, do_auto_save_eh): New functions.
12479 (do_auto_save_unwind): Don't call pop_message.
12480
12481 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
12482
12483 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
12484
12485 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
12486
12487 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
12488
124892002-09-10 Stefan Monnier <monnier@cs.yale.edu>
12490
12491 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
12492 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
12493 (re_match_2_internal): Be more careful with infinite loops.
12494
124952002-09-10 Kim F. Storm <storm@cua.dk>
12496
12497 * macros.c (end_kbd_macro): New function.
12498 (Fend_kbd_macro): Use it.
12499
12500 * macros.h (end_kbd_macro): Declare extern.
12501
12502 * keyboard.c (Fdiscard_input): If defining keyboard macro,
12503 end and save it instead of discarding it.
12504
125052002-09-09 Markus Rost <rost@math.ohio-state.edu>
12506
12507 * s/sol2-6.h: Fix typo. Add comment.
12508
125092002-09-09 Richard M. Stallman <rms@gnu.org>
12510
12511 * regex.c (regnum_t): Use signed int, not unsigned int.
12512
12513 * s/sol2-6.h: New file.
12514
12515 * s/sol2-5.h (UNEXEC): Definition deleted.
12516
125172002-09-08 Kim F. Storm <storm@cua.dk>
12518
12519 * macros.c (executing_macro_index): Change type to EMACS_INT.
12520 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
12521
12522 * macros.h (executing_macro_index): Change type to EMACS_INT.
12523
125242002-09-06 Richard M. Stallman <rms@gnu.org>
12525
12526 * casetab.c (set_case_table): Make canon table point to eqv table.
12527
125282002-09-06 Juanma Barranquero <lektu@terra.es>
12529
12530 * coding.c (syms_of_coding): Fix spacing.
12531
12532 * composite.c (Fcompose_region_internal)
12533 (Fcompose_string_internal): Likewise.
12534
12535 * data.c (Flsh): Likewise.
12536
12537 * fontset.c (Fset_fontset_font): Likewise.
12538
12539 * macfns.c (Fx_server_max_request_size): Likewise.
12540
12541 * w16select.c (syms_of_win16select): Likewise.
12542
12543 * w32select.c (syms_of_w32select): Likewise.
12544
12545 * xselect.c (syms_of_xselect): Likewise.
12546
125472002-09-05 Richard M. Stallman <rms@gnu.org>
12548
12549 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
12550 call EXTEND_RANGE_TABLE and return a proper value.
12551 (set_image_of_range): Don't call set_image_of_range_1
12552 if no TRANSLATE or if range includes all of Latin-1.
12553 Only call it for the Latin-1 part of the range.
12554 For other cases, make two separate ranges,
12555 one for the original specified characters and one for
12556 their case-conversions.
12557
125582002-09-04 Richard M. Stallman <rms@gnu.org>
12559
12560 * s/sol2-5.h (UNEXEC): Use unexsol.o.
12561
12562 * window.c (displayed_window_lines): Correct for one-off bug
12563 in HEIGHT on non-window displays.
12564
12565 * regex.c (set_image_of_range_1): New function.
12566 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
12567 Return a value to indicate running out of memory.
12568 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
12569 (extend_range_table_work_area): New subroutine.
12570 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
12571 Different calling conventions, and used from set_image_of_range{,_1}.
12572 (IMMEDIATE_QUIT_CHECK): Definitions moved.
12573
125742002-09-04 Juanma Barranquero <lektu@terra.es>
12575
12576 * makefile.w32-in: All dependencies updated.
12577
125782002-09-01 Richard M. Stallman <rms@gnu.org>
12579
12580 * unexsol.c: New file.
12581
12582 * xfns.c (Qbox): Declare external, don't define.
12583
12584 * xdisp.c (redisplay_window) <force-start case>:
12585 If point is on semi-visible last line, reposition
12586 it at previous line.
12587
12588 * alloc.c (display_malloc_warning): Use display-warning.
12589 (malloc_warning_1): Function deleted.
12590
12591 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
12592
12593 * lread.c (read1): Handle #! by skipping the line.
12594
125952002-08-31 Richard M. Stallman <rms@gnu.org>
12596
12597 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
12598 Don't include LDFLAGS.
12599 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
12600
126012002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
12602
12603 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
12604 member of x_display_info unless we compile for some window system.
12605
126062002-08-31 Kim F. Storm <storm@cua.dk>
12607
12608 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
12609 (get_window_cursor_type): Don't use them.
12610 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
12611
126122002-08-30 Kenichi Handa <handa@etl.go.jp>
12613
12614 * xdisp.c (get_next_display_element): Fix previous change.
12615
126162002-08-30 Andrew Choi <akochoi@shaw.ca>
12617
12618 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
12619 (expose_window): Use it to fix the display of overlapping
12620 rows (merge code from xterm.c).
12621
12622 * macfns.c (Qbox): Add extern declaration.
12623
126242002-08-30 Juanma Barranquero <lektu@terra.es>
12625
12626 * w32fns.c (Qbox): Make extern.
12627 (syms_of_w32fns): Remove initialization of Qbox.
12628
126292002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
12630
12631 * xfns.c (Fx_open_connection): Fix error message.
12632
126332002-08-30 Kim F. Storm <storm@cua.dk>
12634
12635 The following changes consolidates the handling of the cursor
12636 type in xdisp.c, moving duplicate code and functionality from
12637 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
12638
12639 * frame.h (enum text_cursor_kinds): Consolidated here.
12640 Added DEFAULT_CURSOR value.
12641 (struct frame) <desired_cursor, cursor_width>
12642 <blink_off_cursor, blink_off_cursor_width>: New fields.
12643 Consolidated from output_x, output_w32 and output_mac structs.
12644 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12645 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
12646
12647 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
12648 Variables consolidated here.
12649 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
12650 (Vcursor_in_non_selected_windows): Renamed from
12651 cursor_in_non_selected_windows and changed to Lisp_Object.
12652 (syms_of_xdisp): Define and staticpro new and moved variables.
12653 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
12654 consolidated here. Recognize Qhollow setting.
12655 (set_frame_cursor_types): New function to set frame cursor types
12656 based on the frame parameters.
12657 (get_window_cursor_type): New function to calculate new cursor
12658 type and width for the specified window. Based on duplicated
12659 code consolidated here.
12660 Enhancements: cursor-in-non-selected-windows may be a cursor type,
12661 check buffer-local alternate-cursor-type and blink-cursor-alist
12662 before using built-in blink off methods.
12663
12664 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
12665
12666 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
12667 (get_specified_cursor_type, get_window_cursor_type)
12668 (set_frame_cursor_types): Added prototypes.
12669
12670 * macfns.c (x_specified_cursor_type): Removed.
12671 (x_set_cursor_type): Use set_frame_cursor_types.
12672 (Qbar, Qbox): Removed.
12673 (syms_of_macfns): Don't intern or staticpro them.
12674
12675 * macterm.c (x_specified_cursor_type): Remove prototype.
12676 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12677 (x_display_and_set_cursor): Use get_window_cursor_type.
12678 Remove unused local variables cursor_non_selected, active_cursor.
12679 Redraw cursor if hbar cursor width changes.
12680 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
12681
12682 * macterm.h (enum text_cursor_kinds): Removed.
12683 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
12684 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12685 (FRAME_DESIRED_CURSOR): Macro removed.
12686
12687 * w32fns.c (Vblink_cursor_alist): Removed.
12688 (Qbar, Qhbar, Qbox, Qhollow): Removed.
12689 (syms_of_w32fns): Don't intern, staticpro, or define them.
12690 (x_specified_cursor_type): Removed.
12691 (x_set_cursor_type): Use set_frame_cursor_types.
12692
12693 * w32term.c (x_specified_cursor_type): Remove prototype.
12694 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12695 (x_display_and_set_cursor): Use get_window_cursor_type.
12696 Remove unused local variables cursor_off_state.
12697 Redraw cursor if hbar cursor width changes.
12698 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
12699
12700 * w32term.h (enum text_cursor_kinds): Removed.
12701 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
12702 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12703 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12704 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
12705 (struct w32_display_info) <x_highlight_frame>: Renamed member from
12706 w32_highlight_frame.
12707
12708 * xfns.c (Vblink_cursor_alist): Removed.
12709 (Qbar, Qhbar, Qbox, Qhollow): Removed.
12710 (syms_of_xfns): Don't intern, staticpro, or define them.
12711 (x_specified_cursor_type): Removed.
12712 (x_set_cursor_type): Use set_frame_cursor_types.
12713
12714 * xterm.c (x_specified_cursor_type): Remove prototype.
12715 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12716 (x_display_and_set_cursor): Use get_window_cursor_type.
12717 Remove unused local variables cursor_off_state.
12718 Redraw cursor if hbar cursor width changes.
12719
12720 * xterm.h (enum text_cursor_kinds): Removed.
12721 (struct output_x) <current_cursor, desired_cursor, cursor_width>
12722 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12723 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12724 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
12725 (x_specified_cursor_type): Remove prototype.
12726
127272002-08-28 Richard M. Stallman <rms@gnu.org>
12728
12729 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
12730 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
12731 (Vblink_cursor_alist): New variable.
12732 (syms_of_w32fns): Initialize and defvar it.
12733 (x_specified_cursor_type): Recognize Qbox for filled box.
12734 Exceptions are hollow boxes.
12735 (Qbox, Qhollow): New variables.
12736 (syms_of_w32fns): Initialize and staticpro them.
12737
12738 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
12739 New macros.
12740 (struct w32_output): New fields blink_off_cursor,
12741 blink_off_cursor_width.
12742 (FRAME_CURSOR_WIDTH): New macro.
12743
12744 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
12745 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
12746
12747 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
12748 for bar cursor.
12749
12750 * w32term.c (expose_overlaps): New function.
12751 (expose_window): Use it to fix the display of overlapping rows.
12752
127532002-08-28 Simon Josefsson <jas@extundo.com>
12754
12755 * xfns.c (Fx_open_connection): Improve help when X connection
12756 fails, xhost is insecure and xauth is better.
12757
127582002-08-28 Juanma Barranquero <lektu@terra.es>
12759
12760 * makefile.w32-in: Add missing dependencies on w32term.h and
12761 composite.h.
12762
12763 * emacs.c (USAGE1): Add missing newline.
12764
127652002-08-27 Andrew Choi <akochoi@shaw.ca>
12766
12767 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
12768
127692002-08-27 Richard M. Stallman <rms@gnu.org>
12770
12771 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
12772 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
12773 (Vblink_cursor_alist): New variable.
12774 (syms_of_xfns): Initialize and defvar it.
12775 (x_specified_cursor_type): Recognize Qbox for filled box.
12776 Exceptions are hollow boxes.
12777 (Qbox, Qhollow): New variables.
12778 (syms_of_xfns): Initialize and staticpro them.
12779
12780 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
12781 New macros.
12782 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
12783
12784 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
12785 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
12786
12787 * emacs.c (main): Handle --script.
12788 (USAGE1): Mention --script.
12789 (standard_args): Define sort order for --script.
12790
127912002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
12792
12793 * xdisp.c (redisplay_updating_p): Variable removed.
12794 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
12795 New variables.
12796 (init_iterator): Don't free realized faces if
12797 inhibit_free_realized_faces is set.
12798 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
12799 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
12800 initialize Qinhibit_free_realized_faces.
12801
12802 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
12803 when iterator is adding glyphs to a glyph matrix.
12804
128052002-08-27 Kenichi Handa <handa@etl.go.jp>
12806
12807 * xdisp.c (get_next_display_element): In unibyte case, don't use
12808 octal form for such eight-bit characters that can be converted to
12809 multibyte char.
12810
128112002-08-26 Kim F. Storm <storm@cua.dk>
12812
b6189c3b
KS
12813 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
12814 foreground and background colors. From Joe Buehler.
048addec
JD
12815
128162002-08-26 Miles Bader <miles@gnu.org>
12817
12818 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
12819
128202002-08-25 Andrew Choi <akochoi@shaw.ca>
12821
12822 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
12823 defined instead of MAC_OSX.
12824
12825 * s/darwin.h (select): Define select to sys_select only if
12826 HAVE_CARBON is defined.
12827 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
12828 (DONT_REOPEN_PTY): #def it.
12829
12830 * macterm.c (XTread_socket): Remove code to call
12831 SendEventToEventTarget for keys with command modifiers when
12832 mac_command_key_is_meta is nil.
12833
128342002-08-24 Andreas Schwab <schwab@suse.de>
12835
12836 * eval.c (Fdefvar): Fix last change.
12837
128382002-08-23 Richard M. Stallman <rms@gnu.org>
12839
12840 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
12841 Record variables in load history as (defvar . VAR).
12842 (Fdefvar): Don't record in load history if no initial value.
12843 (Qdefvar): New variable.
12844 (syms_of_eval): Init and staticpro it.
12845
12846 * lread.c (syms_of_lread): Doc fix.
12847 (build_load_history): Use Fmember to see if a definition
12848 is already in the Vload_history element.
12849
12850 * process.c (Fstart_process): Remove /: from program name.
12851
12852 * emacs.c (decode_env_path): Don't add /: if file name handler
12853 has a `safe-magic' property.
12854
12855 * callproc.c (Fcall_process): Remove /: from program name.
12856
128572002-08-23 Stefan Monnier <monnier@cs.yale.edu>
12858
12859 * regex.c (PATFETCH): Remove the translating fetch.
12860 (PATFETCH_RAW): Rename to PATFETCH.
12861 (set_image_of_range): New fun.
12862 (SET_RANGE_TABLE_WORK_AREA): Use it.
12863 (regex_compile): Don't translate the pattern chars so eagerly.
12864 Only do it when inserting an `exactn' bytecode or when handling
12865 a char-range.
12866 (mutually_exclusive_p): Avoid empty statement.
12867
128682002-08-22 Kim F. Storm <storm@cua.dk>
12869
12870 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
12871 end up on a partially visible line; this reverts a specific part
12872 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
12873 display error which has been reported several times now.
12874 However it introduces the problem that changes was supposed to fix.
12875 See my comments in the source if you want to debug this further.
12876
128772002-08-20 Kenichi Handa <handa@etl.go.jp>
12878
12879 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
12880
128812002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
12882
12883 * msdos.c (croak): Add `void' to definition.
12884
c1380aa6 12885 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
12886 Don't define them, they are defined in msdos.c.
12887
12888 * mem-limits.h [MSDOS]: Declare etext.
12889
12890 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
12891 `const' since CORRECT_DIR_SEPS modifies its target.
12892
128932002-08-19 Kim F. Storm <storm@cua.dk>
12894
2fb0ce67 12895 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
12896 KEEP-RECORD to avoid clearing lossage when we just want to clear
12897 the current key sequence (kmacro needs this).
12898
128992002-08-19 Kenichi Handa <handa@localhost>
12900
12901 * composite.c (run_composition_function): Call FUNC if it is fboundp.
12902
12903 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
12904 cons, return Qnil.
12905
129062002-08-17 Richard M. Stallman <rms@gnu.org>
12907
12908 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
12909
12910 * sysdep.c [!VMS]: Include sys/files.h.
12911
12912 * editfns.c (save_restriction_restore): Defend from unchained marker.
12913
12914 * buffer.c (overlays_at): Handle extending vec uniformly.
12915 (overlays_in): Handle extending vec from length 0 as in overlays_at.
12916
129172002-08-15 Andrew Choi <akochoi@shaw.ca>
12918
12919 * mac.c (init_mac_osx_environment): New function.
12920
12921 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
12922
129232002-08-14 Kim F. Storm <storm@cua.dk>
12924
12925 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
12926 executing macro before appending to it (when used from Lisp).
12927 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
12928 which is called prior to each iteration of macro (for kmacro.el).
12929 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
12930
12931 * lisp.h (Fexecute_kbd_macro): Update prototype.
12932
12933 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
12934
129352002-08-14 Kenichi Handa <handa@etl.go.jp>
12936
12937 * xselect.c (QUTF8_STRING): New variable.
12938 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
12939 (x_atom_to_symbol): Likewise.
12940 (x_get_local_selection): New argument local_request. If it is
12941 nonzero, call handler_fn with the second arg nil.
12942 (x_handle_selection_request): Call x_get_local_selection with
12943 local_request 0.
12944 (lisp_data_to_selection_data): Don't encode the string here.
12945 (Fx_get_selection_internal): Call x_get_local_selection with
12946 local_request 1.
12947 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
12948
12949 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
12950
12951 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
12952
129532002-08-13 Richard M. Stallman <rms@gnu.org>
12954
12955 * minibuf.c (Fminibufferp): New function.
12956 (syms_of_minibuf): Defsubr it.
12957 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
12958
129592002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
12960
12961 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
12962
129632002-08-12 Richard M. Stallman <rms@gnu.org>
12964
12965 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
12966 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
12967 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
12968 already.
12969
12970 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
12971
129722002-08-11 Andrew Choi <akochoi@shaw.ca>
12973
12974 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
12975 (Vmac_pass_command_to_system): New variable.
12976 (Vmac_pass_control_to_system): New variable.
12977 (do_mouse_moved): Check wp with is_emacs_window.
12978 (XTread_socket): Check window_ptr with is_emacs_window.
12979 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
12980 events back to Mac Toolbox for processing, depending on values of
12981 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
12982 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
12983 Vmac_pass_control_to_system.
12984
129852002-08-10 Kenichi Handa <handa@etl.go.jp>
12986
12987 * coding.c (unencodable_char_position): New function.
12988 (Funencodable_char_position): New function.
12989 (syms_of_coding): Defsubr Funencodable_char_position.
12990
129912002-08-10 Andrew Choi <akochoi@shaw.ca>
12992
12993 * mac.c (sys_select) [MAC_OSX]: New function.
12994
12995 * macterm.c (MakeMeTheFrontProcess): New function.
12996 (mac_initialize): Call MakeMeTheFrontProcess.
12997
12998 * s/darwin.h: Define select to sys_select.
12999
130002002-08-09 Richard M. Stallman <rms@gnu.org>
13001
13002 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
13003
130042002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
13005
13006 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
13007 end of the buffer.
13008
130092002-08-08 Ken Raeburn <raeburn@mit.edu>
13010
13011 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
13012
13013 * puresize.h (BASE_PURESIZE): Increase to 910000.
13014
130152002-08-08 Kenichi Handa <handa@etl.go.jp>
13016
13017 * coding.c (Ffind_operation_coding_system): For write-region, if
13018 VISIT is a filename, make it the target.
13019
130202002-08-07 Richard M. Stallman <rms@gnu.org>
13021
13022 * alloc.c (mark_object): Detect long lists for debugging.
13023 (mark_object_loop_halt): New variable.
13024
13025 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
13026
13027 * data.c (Fmake_variable_frame_local): Doc fix.
13028
130292002-08-01 David Ponce <david@dponce.com>
13030
13031 * w32menu.c (local_heap, local_alloc, local_free): New macros.
13032 (malloc_widget_value, free_widget_value)
13033 (w32_free_submenu_strings): Use them.
13034
13035 (push_submenu_start, push_submenu_end, push_left_right_boundary)
13036 (push_menu_pane, push_menu_item, single_keymap_panes)
13037 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
13038 (single_submenu, set_frame_menubar)
13039 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
13040
13041 (Fx_popup_menu): Don't show pop up menu until preceding one is
13042 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
13043
13044 * w32menu.c: Changes adapted from xmenu.c
13045 (set_frame_menubar): First parse all submenus,
13046 then make widget_value trees from them.
13047 Don't allocate any widget_value objects
13048 until we are done with the parsing.
13049 (parse_single_submenu): New function.
13050 (digest_single_submenu): New function.
13051 (single_submenu): Function deleted, replaced by those two.
13052
130532002-08-04 Andrew Choi <akochoi@shaw.ca>
13054
13055 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
13056 returns a valid window pointer before proceeding for keyDown and
13057 autoKey events.
13058
130592002-08-03 Andrew Choi <akochoi@shaw.ca>
13060
13061 * macterm.c (USE_CARBON_EVENTS): New macro.
13062 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
13063 (x_iconify_frame): Call CollapseWindow.
13064 (Vmac_reverse_ctrl_meta): New variable.
13065 (Vmac_wheel_button_is_mouse_2): New variable.
13066 (init_mac_drag_n_drop): New function.
13067 (mac_do_receive_drag): New function.
13068 (mac_handle_service_event): New function.
13069 (init_service_handler): New function.
13070 (mac_to_emacs_modifiers): New function.
13071 (mac_event_to_emacs_modifiers): New function.
13072 (mac_get_mouse_btn): New function.
13073 (mac_convert_event_ref): New function.
13074 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
13075 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
13076 mac_get_mouse_btn.
13077 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
13078
13079 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
13080 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
13081 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
13082 TOOL_BAR_EVENT for MAC_OS as well.
13083 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
13084 as for WINDOWS_NT.
13085 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
13086
13087 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
13088
130892002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
13090
13091 * xdisp.c (forward_to_next_line_start): Fix a condition that
13092 lead to a newline being skipped.
13093
130942002-08-02 Andrew Choi <akochoi@shaw.ca>
13095
13096 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
13097
130982002-08-01 Richard M. Stallman <rms@gnu.org>
13099
13100 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
13101
131022002-07-31 Andrew Choi <akochoi@shaw.ca>
13103
13104 * macfns.c: #undef init_process before #define-ing it.
13105
13106 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
13107 HAVE_CARBON is defined.
13108
131092002-07-31 Richard M. Stallman <rms@gnu.org>
13110
13111 * xmenu.c (set_frame_menubar): First parse all submenus,
13112 then make widget_value trees from them.
13113 Don't allocate any widget_value objects
13114 until we are done with the parsing.
13115 (parse_single_submenu): New function.
13116 (digest_single_submenu): New function.
13117 (single_submenu): Function deleted, replaced by those two.
13118
131192002-07-30 Juanma Barranquero <lektu@terra.es>
13120
13121 * w32proc.c (syms_of_ntproc): Fix docstring of
13122 `w32-get-true-file-attributes'.
13123
131242002-07-28 Richard M. Stallman <rms@gnu.org>
13125
13126 * s/hpux8.h (HPUX8): Define this before including hpux.h.
13127 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
13128
13129 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
13130
13131 * keyboard.c (make_lispy_event):
13132 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
13133 Explicitly clear up_modifier in event->modifiers.
13134
131352002-07-27 Richard M. Stallman <rms@gnu.org>
13136
13137 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
13138
13139 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
13140 for bar cursor.
13141
131422002-07-26 Kenichi Handa <handa@etl.go.jp>
13143
13144 * coding.c (detect_coding_iso2022): While checking a byte sequence
13145 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
13146 it in the normal loop.
13147
131482002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
13149
13150 * xterm.c (expose_overlaps): New function.
13151 (expose_window): Use it to fix the display of overlapping rows.
13152
13153 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
13154
131552002-07-23 Ken Raeburn <raeburn@gnu.org>
13156
13157 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
13158 since it only depends on XUINT.
13159
13160 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
13161 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
13162 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
13163 Macros deleted.
3947677c 13164
77d1daf2
AS
13165 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
13166 its value over other approaches.
13167 * sysdep.c (start_of_data): Don't define the function if a macro
13168 form has been defined.
8a8e19a3 13169
048addec
JD
131702002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
13171
13172 * xdisp.c (redisplay_updating_p): New variable.
13173 (init_iterator): Don't free realized faces when
13174 redisplay_updating_p is set.
13175 (redisplay_internal): Set redisplay_updating_p while updating
13176 the display.
13177
131782002-07-23 Richard M. Stallman <rms@gnu.org>
13179
13180 * editfns.c (Fmessage): Treat "" like nil.
13181
131822002-07-23 Kenichi Handa <handa@etl.go.jp>
13183
13184 * xdisp.c (face_before_or_after_it_pos):
13185 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
13186
131872002-07-22 Juanma Barranquero <lektu@terra.es>
13188
13189 * callproc.c (init_callproc) [DOS_NT]:
13190 Initialize Vshared_game_score_directory to nil.
13191 (syms_of_callproc) [DOS_NT]: Likewise.
13192
131932002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
13194
13195 * xdisp.c (display_line): Replace an abort with xassert.
13196
131972002-07-21 Richard M. Stallman <rms@gnu.org>
13198
13199 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
13200 and END_UNCHANGED when setting buffer_unchanged_p.
13201 Use current_matrix_up_to_date_p to decide whether to use
13202 try_cursor_movement.
13203
13204 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
13205
13206 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
13207
13208 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
13209 Set to nil if dir does not exist.
13210 (syms_of_callproc): Init unconditionally and simply.
13211
13212 * buffer.c (Fbuffer_list): Doc fix.
13213
132142002-07-21 Ken Raeburn <raeburn@gnu.org>
13215
13216 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
13217
13218 * buffer.c (mmap_realloc): When shrinking, make sure number of
13219 pages to unmap is rounded towards zero.
13220
13221 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
13222 (XSETINT): Deleted.
13223
13224 * m/att3b.h (XINT): Don't define.
13225 (VALBITS, VALMASK, XTYPE): Deleted.
13226 (DATA_SEG_BITS): Define.
13227 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
13228 ARRAY_MARK_FLAG): Deleted.
13229 (DATA_SEG_BITS): Define.
13230 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
13231 (DATA_SEG_BITS): Define.
13232
132332002-07-20 Richard M. Stallman <rms@gnu.org>
13234
13235 * print.c (print_error_message): New args CONTEXT and CALLER.
13236 Calls changed.
13237
13238 * lisp.h (print_error_message): Declare new args.
13239
13240 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
13241 and CONTEXT to print_error_message, don't print them here.
13242 For a Quit, don't use Vsignaling_function.
13243 Call message_log_maybe_newline.
13244
13245 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
13246
132472002-07-20 Kim F. Storm <storm@cua.dk>
13248
13249 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
13250
132512002-07-19 Ken Raeburn <raeburn@gnu.org>
13252
13253 * bytecode.c (struct byte_stack): Pointers into byte string now
13254 point to const.
13255 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
13256 const.
13257 * charset.h (BCOPY_SHORT): Source pointer now points to const.
13258 * coding.c (encode_eol, detect_coding, detect_eol):
13259 (decode_coding, encode_coding, detect_coding_system):
13260 Source strings now treated as const.
13261 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
13262 modify Lisp string contents.
13263 * coding.h (decode_coding, encode_coding, detect_coding,
13264 detect_eol): Declarations updated.
13265 * composite.c (compose_chars_in_text): Treat Lisp string contents
13266 as const.
13267 * dispnew.c (safe_bcopy): Source pointer now points to const.
13268 * lisp.h (STRING_COPYIN): New macro.
13269 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
13270 (internal_with_output_to_temp_buffer): Declarations updated.
13271 * print.c (temp_output_buffer_setup):
13272 (internal_with_output_to_temp_buffer): Buffer name argument is now
13273 pointer to const.
13274 * sound.c (struct sound_device): Function pointer field "write"
13275 buffer argument now points to const.
13276 (vox_write): Buffer argument points to const.
13277 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
13278 contents as const.
13279 * sysdep.c (emacs_write): Buffer pointer now const.
13280 * term.c (encode_terminal_code): Buffer pointer now const.
13281 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
13282 (x_face_list_fonts, x_update_menu_appearance):
13283 (hash_string_case_insensitive): Treat Lisp string contents as const.
13284
132852002-07-19 Juanma Barranquero <lektu@terra.es>
13286
048addec
JD
13287 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
13288
13289 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
13290 (Ffile_name_as_directory): Fix argument name in docstring.
13291 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
13292
132932002-07-18 Richard M. Stallman <rms@gnu.org>
13294
13295 * data.c (Fdefalias): Doc fix.
13296
132972002-07-17 Dave Love <fx@gnu.org>
13298
13299 * intervals.h (text_property_stickiness): Use P_.
13300
13301 * ccl.c: Remove `emacs' conditionals.
13302 (ccl_backtrace_table): Fix size spec.
13303 (ccl_driver): Fix type errors.
13304
133052002-07-16 Ken Raeburn <raeburn@gnu.org>
13306
13307 * alloc.c (xstrdup, make_string, make_unibyte_string)
13308 (make_multibyte_string, build_string): String pointer args now
13309 point to const.
13310 * charset.c (find_charset_in_text, c_string_width):
13311 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
13312 * fileio.c (report_file_error):
13313 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
13314 (count_combining_before, count_combining_after, insert_1_both):
13315 (insert, insert_and_inherit, insert_string):
13316 (insert_before_markers, insert_before_markers_and_inherit):
13317 * lread.c (intern, oblookup, hash_string):
13318 * minibuf.c (temp_echo_area_glyphs):
13319 * search.c (fast_c_string_match_ignore_case):
13320 * sysdep.c (emacs_open, set_file_times):
13321 * xfaces.c (xstricmp):
13322 * xdisp.c (store_frame_title, string_char_and_length):
13323 (message_dolog, message2, message2_nolog, set_message): Likewise.
13324 (set_message_1): Cast message string argument to const pointer.
13325 * editfns.c (general_insert_function): Insertion function now
13326 takes pointer to const for input data.
13327 * charset.h (find_charset_in_text, c_string_width):
13328 (parse_str_as_multibyte): Declarations updated.
13329 * dispextern.h (xstricmp): Declaration updated.
13330 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
13331 (count_size_as_multibyte, count_combining_before):
13332 (count_combining_after, insert_1, insert_1_both, message_dolog):
13333 (insert, insert_and_inherit, insert_before_markers)
13334 (insert_before_markers_and_inherit, set_message, message2):
13335 (message2_dolog, build_string, make_string, make_unibyte_string):
13336 (make_multibyte_string, intern, oblookup, report_file_error):
13337 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
13338 (emacs_open, xstrdup): Declarations updated.
13339 * systime.h (set_file_times): Declaration updated.
13340
13341 * charset.c (find_charset_in_text, lisp_string_width): Use const
13342 for pointer to lisp string data.
13343 * charset.h (FETCH_STRING_CHAR_ADVANCE):
13344 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
13345 * coding.c (Ffind_coding_systems_region_interval):
13346 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
13347 (Fmake_directory_internal, Fdelete_directory):
13348 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
13349 * fontset.c (font_family_registry, fs_query_fontset):
13350 (list_fontsets):
13351 * frame.c (Fframe_parameter):
13352 * keyboard.c (cmd_error_internal):
13353 * keymap.c (Fdescribe_buffer_bindings):
13354 * lread.c (complete_filename_p, openp):
13355 * minibuf.c (Fminibuffer_complete_word):
13356 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
13357 (face_before_or_after_it_pos, next_element_from_string):
13358 (get_overlay_arrow_glyph_row, display_mode_element):
13359 (decode_mode_spec_coding):
13360 * xterm.c (same_x_server): Likewise.
13361
13362 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
13363 settings of non-existent fields.
13364
13365 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
13366 copy a lisp value.
13367
13368 * lread.c (Fintern_soft): Use string macros instead of
13369 Lisp_String fields.
13370 * keyboard.c (echo_char, parse_modifiers_uncached):
13371 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
13372 * textprop.c (validate_interval_range, interval_of): Likewise.
13373
13374 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
13375
13376 * charset.h (FETCH_STRING_CHAR_ADVANCE)
13377 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
13378 XSTRING()->size_byte.
13379
13380 * lisp.h (SDATA, SREF): Produce rvalue.
13381 (SSET): New macro.
13382 * alloc.c (make_event_array): Use SSET for storing into a string.
13383 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
13384 a string.
13385 * casefiddle.c (casify_object): Use SSET.
13386 * charset.h (FETCH_STRING_CHAR_ADVANCE)
13387 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
13388 address of string contents.
13389 * data.c (Faref): Use SDATA.
13390 (Faset): Use SDATA, SSET.
13391 * dired.c (directory_files_internal): Use SSET.
13392 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
13393 (Fread_file_name): Use SREF, SSET.
13394 * fns.c (concat): Use SSET.
13395 (concat, Fdelete): Use SDATA.
13396 * insdel.c (insert_from_string_1): Use SDATA.
13397 * keyboard.c (Fevent_convert_list): Use SREF.
13398 * lread.c (Fload): Use SDATA, SSET.
13399 * macfns.c (validate_x_resource_name): Use SSET.
13400 * process.c (status_message): Use SSET.
13401 * search.c (wordify): Use SDATA.
13402 (Freplace_match): Use SREF.
13403 * w32fns.c (validate_x_resource_name): Use SSET.
13404 * xfns.c (validate_x_resource_name): Use SSET.
13405 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
13406
134072002-07-16 Richard M. Stallman <rms@gnu.org>
13408
13409 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
13410
13411 * xdisp.c (reconsider_clip_changes):
13412 Don't test prevent_redisplay_optimizations_p.
13413 (redisplay_internal): Test prevent_redisplay_optimizations_p
13414 along with clip_changed in some cases.
13415 (try_window_id): Likewise.
13416 (redisplay_window): New local var buffer_unchanged_p.
13417
13418 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
13419
13420 * process.c (create_process): Test USG_SUBTTY_WORKS.
13421 (process_send_signal): Clean up handling of GID.
13422 Detect errors in ioctls meant to set GID.
13423
13424 * window.c (temp_output_buffer_show):
13425 Don't set prevent_redisplay_optimizations_p.
13426
134272002-07-15 Juanma Barranquero <lektu@terra.es>
13428
13429 * eval.c (Fdefvaralias): Add docstring argument.
13430
134312002-07-15 Ken Raeburn <raeburn@gnu.org>
13432
13433 * lisp.h (STRING_INTERVALS): Produce rvalue.
13434 (STRING_SET_INTERVALS): New macro.
13435 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
13436 * fns.c (Fstring_as_multibyte): Likewise.
13437 * intervals.c (balance_possible_root_interval, delete_interval)
13438 (create_root_interval, copy_intervals_to_string): Likewise.
13439 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
13440 instead of 0.
13441
134422002-07-14 Ken Raeburn <raeburn@gnu.org>
13443
13444 * lisp.h (STRING_SET_CHARS): New macro.
13445 (SCHARS, SBYTES): Produce rvalues.
13446 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
13447 * fns.c (concat): Likewise.
13448 * lread.c (read_vector): Likewise.
13449
3419757d 13450 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
048addec 13451 (STRING_SET_UNIBYTE): New macro.
3419757d 13452 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
048addec
JD
13453 length of -1) changed to use STRING_SET_UNIBYTE.
13454 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13455 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
13456 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
13457 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
13458 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
13459 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
13460 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
13461 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
13462 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
13463 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
13464 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
13465 STRING_BYTES or indirection changed to SCHARS, SBYTES,
13466 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
13467 unchanged for now.
13468
134692002-07-13 Kim F. Storm <storm@cua.dk>
13470
13471 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
13472
134732002-07-12 Richard M. Stallman <rms@gnu.org>
13474
13475 * fileio.c (Fwrite_region): Doc fix.
13476
13477 * print.c (print_error_message): Don't handle Vsignaling_function here.
13478
13479 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
13480 (command_loop_1): Avoid certain actions after memory-full error.
13481
13482 * eval.c (Fsignal): Don't call cancel_hourglass.
13483 For a memory-full error, don't call Vsignal_hook_function
13484 and don't set Vsignaling_function.
13485
13486 * process.c (process_send_signal): Add abort call.
13487
134882002-07-11 Markus Rost <rost@math.ohio-state.edu>
13489
13490 * keymap.c (Fkey_binding): Fix typo.
13491
134922002-07-11 Richard M. Stallman <rms@gnu.org>
13493
13494 * alloc.c (Vmemory_full): New variable.
3419757d 13495 (Vmemory_signal_data): Rename from memory_signal_data.
048addec
JD
13496 Uses changed.
13497 (syms_of_alloc): Defvar them.
13498 (memory_full, buffer_memory_full): Set Vmemory_full.
13499
13500 * lisp.h (Vmemory_full): Add declaration.
13501 (current_column, indented_beyond_p): Change declaration.
13502
13503 * indent.c (last_known_column): Declare as double, not float.
13504 (current_column, current_column_1, string_display_width)
13505 (position_indentation): Return `double'.
13506 (indented_beyond_p): Arg `column' is `double'. Callers changed.
13507
13508 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
13509 (back_to_previous_visible_line_start)
13510 (reseat_at_next_visible_line_start, next_element_from_buffer):
13511 Use `double', not `float', when calling indented_beyond_p.
13512
3419757d 13513 * s/hpux11.h (BROKEN_SA_RESTART): Define.
048addec
JD
13514
13515 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
13516
135172002-07-11 Juanma Barranquero <lektu@terra.es>
13518
13519 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
13520 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
13521 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
13522 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
13523 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
13524 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
13525
135262002-07-10 Juanma Barranquero <lektu@terra.es>
13527
d814862a
JB
13528 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
13529 All callers changed.
048addec
JD
13530
135312002-07-09 Stefan Monnier <monnier@cs.yale.edu>
13532
13533 * data.c (Fdefalias): Add an optional `docstring' argument.
13534 (set_internal, Fsetq_default): Use XCAR/XCDR.
13535
13536 * composite.c (HASH_VALUE, HASH_KEY):
13537 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
13538
135392002-07-09 Kenichi Handa <handa@etl.go.jp>
13540
13541 * callproc.c (Fcall_process): Fix previous change.
13542
135432002-07-07 Stefan Monnier <monnier@cs.yale.edu>
13544
13545 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
13546 Add support for hash-tables.
13547 (Ftry_completion): Return t even if the string appears multiple times.
13548
13549 * fns.c (Fnconc): Use XCDR.
13550 (Fprovide): Use CONSP and XCDR.
13551 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
13552 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
13553 (Fmake_hash_table): Accept `:size nil'.
13554 (Fmakehash): Delete: moved to subr.el.
13555 (syms_of_fns): Don't defsubr makehash.
13556
13557 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
13558 (HASH_TABLE_SIZE): Move from fns.c.
13559
135602002-07-07 Richard M. Stallman <rms@gnu.org>
13561
13562 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
13563 Instead just return 0 when there is something to be done.
13564 (try_scrolling): If make_cursor_line_fully_visible returns 0,
13565 retry scrolling as if cursor were off the bottom.
13566 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
13567 return CURSOR_MOVEMENT_MUST_SCROLL.
13568 (redisplay_window): If make_cursor_line_fully_visible returns 0,
13569 go to try_to_scroll.
13570
13571 * buffer.c (Fbuffer_local_value): Store current value into its binding
13572 so we get the up-to-date value for the binding that is loaded.
13573
13574 * eval.c (Fdefmacro): Doc fix.
13575
135762002-07-05 Dave Love <fx@gnu.org>
13577
13578 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
13579 correctly.
13580
13581 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
13582 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
13583 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
13584 CCL_LookupCharConstTbl.
13585 (syms_of_ccl): Defvar translation-hash-table-vector.
13586
135872002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13588
13589 * xdisp.c: Remove unused variable `face'.
13590
135912002-07-04 Juanma Barranquero <lektu@terra.es>
13592
13593 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
13594 obsolescence information.
13595
135962002-07-03 Andrew Choi <akochoi@shaw.ca>
13597
13598 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
13599 pattern. Search cache first.
13600 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
13601 for Japanese font.
13602 (XLoadQueryFont): Use it.
13603
136042002-07-02 Richard M. Stallman <rms@gnu.org>
13605
13606 * keymap.c (Fdefine_key): Doc fix.
13607
13608 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
13609
136102002-07-02 Juanma Barranquero <lektu@terra.es>
13611
13612 * keymap.c (syms_of_keymap): Fix typo.
13613
136142002-07-01 Andrew Choi <akochoi@shaw.ca>
13615
13616 * s/darwin.h: Define POSIX_SIGNALS.
13617
13618 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
13619 and FSRefMakePath to convert FSSpec returned with Apple Event to
13620 Posix pathname.
13621 (mac_initialize) [TARGET_API_MAC_CARBON]:
13622 Call init_required_apple_events and disable the `Quit' menu item
13623 provided automatically by the Carbon Toolbox.
13624
136252002-07-01 Dave Love <fx@gnu.org>
13626
13627 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
13628 for K&R.
13629
13630 * xterm.c: Fix prototype for K&R.
13631
13632 * term.c (costs_set): Declare static, non-initialized for pcc.
13633
136342002-07-01 Richard M. Stallman <rms@gnu.org>
13635
13636 * keyboard.c (timer_last_idleness_start_time): New variable.
13637 (timer_start_idle): Set that.
13638 (read_key_sequence): Use that to reset timer_idleness_start_time
13639 to previous value.
13640
13641 * window.c (Frecenter): With arg, set optional_new_start.
13642
13643 * xdisp.c (redisplay_internal): Make optional_new_start really work.
13644
13645 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
13646 buffer for completion.
13647
136482002-06-29 Ken Raeburn <raeburn@gnu.org>
13649
13650 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
13651
136522002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13653
13654 * keyboard.c (readable_filtered_events): New function that filters
13655 FOCUS_IN_EVENT depending on parameter.
13656 (readable_events): Calls readable_filtered_events, not filtering
13657 FOCUS_IN_EVENT.
13658 (get_filtered_input_pending): New function, filtering parameter passed
13659 to readable_filtered_events.
13660 (get_input_pending): Calls get_filtered_input_pending, not filtering
13661 FOCUS_IN_EVENT.
13662 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
13663 FOCUS_IN_EVENT.
13664
13665 * xterm.h (struct x_output): Add focus_state.
13666
13667 * xterm.c (x_focus_changed): New function.
13668 (x_detect_focus_change): New function.
13669 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
13670 EnterNotify and LeaveNotify to track X focus changes.
13671
136722002-06-28 Andreas Schwab <schwab@suse.de>
13673
13674 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
13675
136762002-06-27 Kim F. Storm <storm@cua.dk>
13677
13678 * xdisp.c: (mode_line_string_list, mode_line_string_face)
13679 (mode_line_string_face_prop): New variables.
13680 (store_mode_line_string): New function.
13681 (display_mode_element): Use store_mode_line_string to
13682 add mode-line string elements to mode_line_string_list
13683 when mode_line_string_list is non-nil.
13684 (Fformat_mode_line): Now returns propertized string by
13685 default. New arg NO-PROPS to ignore properties.
13686 (decode_mode_spec): Only add two dashes for %- in propertized
13687 mode-line string.
13688 (syms_of_xdisp): Init and staticpro mode_line_string_list.
13689
136902002-06-27 Stefan Monnier <monnier@cs.yale.edu>
13691
13692 * minibuf.c (minibuffer_completion_contents): Add return type.
13693
136942002-06-27 Juanma Barranquero <lektu@terra.es>
13695
13696 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
13697
136982002-06-26 Juanma Barranquero <lektu@terra.es>
13699
13700 * fileio.c (read_file_name_cleanup): Add missing return.
13701
137022002-06-26 Richard M. Stallman <rms@gnu.org>
13703
13704 * window.c (Frecenter): Don't set force_start flag.
13705
13706 * minibuf.c (do_completion, Fminibuffer_complete_word)
13707 (Fminibuffer_completion_help): Complete just the text before point.
13708 (minibuffer_completion_contents): New function.
13709
13710 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
13711
13712 * frame.c (frames_bury_buffer): Function deleted.
13713
137142002-06-25 Miles Bader <miles@gnu.org>
13715
13716 * callint.c (Fcall_interactively): When checking to see if doprnt hit
13717 the end of callint_message, allow for a terminating '\0'.
13718
137192002-06-24 Juanma Barranquero <lektu@terra.es>
13720
13721 * w32select.c: Include composite.h
13722
13723 * w16select.c: Likewise.
13724
137252002-06-24 Kenichi Handa <handa@etl.go.jp>
13726
13727 * callproc.c (Fcall_process): If code detection is necessary,
13728 call detect_coding directly here.
13729
13730 * coding.c (detect_eol): Preserve coding->cmp_data.
13731
13732 * w16select.c (Fw16_get_clipboard_data):
13733 * w32fns.c (w32_to_x_font):
13734 * w32select.c (Fw32_get_clipboard_data):
13735 * xselect.c (selection_data_to_lisp_data):
13736 * xterm.c (XTread_socket): Disable composition handling.
13737
137382002-06-24 Stefan Monnier <monnier@cs.yale.edu>
13739
13740 * print.c (temp_output_buffer_setup): Kill all local variables.
13741
137422002-06-22 Stefan Monnier <monnier@cs.yale.edu>
13743
13744 * lread.c (Fread): Remove redundant and imprecise declaration.
13745
13746 * xfns.c (check_x_display_info): Use check_x_frame.
13747
13748 * .gdbinit (xprintsym): Use the new `xname' field.
13749 (xsymbol): Use it.
13750
137512002-06-22 Jason Rumney <jasonr@gnu.org>
13752
13753 * w32fns.c (file_dialog_callback): New function.
13754 (Fx_file_dialog): Allow selecting directories as well as files.
13755
137562002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13757
13758 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 13759 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
13760
137612002-06-17 Andrew Choi <akochoi@shaw.ca>
13762
13763 * macterm.c (mac_scroll_area): Set foreground and backcolor to
13764 black and white before scrolling. Restore frame background and
13765 foreground color after scrolling.
13766 (do_window_update): Call XClearWindow before calling expose_frame.
13767 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
13768 FRAME_FOREGROUND_PIXEL of frame.
13769
13770 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
13771 test Mac command key as <ALT> key.
13772
137732002-06-17 Stefan Monnier <monnier@cs.yale.edu>
13774
13775 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
13776
13777 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
13778 Lookup keys in function-key-map immediately so that key-translation-map
13779 can be applied earlier.
13780 Remove function_key_possible and key_translation_possible, replaced
13781 by checking `keytran_start < t'.
13782
13783 * .gdbinit (xsymbol): Use the new `xname' field.
13784
137852002-06-17 Andrew Choi <akochoi@shaw.ca>
13786
13787 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
13788 test Mac command key as <ALT> key.
13789
13790 * mac.c (do_applescript): Call initialize_applescript if necessary
13791 when first called. Dispose of result_desc only when there is no error.
13792 (Fdo_applescript): Use %d format specifier instead of %ld.
13793
137942002-06-16 Andrew Choi <akochoi@shaw.ca>
13795
13796 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
13797 of FrontWindow for cases keyDown and autoKey.
13798
13799 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
13800 Vdefault_fontset to Monaco with mac-roman coding.
13801
13802 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
13803 init_process before and after inclusion of Carbon/Carbon.h, resp.
13804
13805 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
13806 cursor_gc.
13807 (add_font_name_table_entry): New function.
13808 (init_font_name_table): Use add_font_name_table_entry; add italic,
13809 bold, and bold-italic entries for truetype fonts.
13810
13811 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
13812 for Mac too.
13813 (try_font_list) [MAC_OS]: If no font matches given registry, try
13814 fonts with any registry matching face_family.
13815 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
13816
13817 * s/darwin.h: If autoconf detects the Ncurses library, define
13818 LIBS_TERMCAP to -lncurses to use it.
13819
138202002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
13821
13822 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
13823
138242002-06-15 Richard M. Stallman <rms@gnu.org>
13825
13826 * window.c (Fset_window_configuration): Explicitly preserve
13827 the point value that new_current_buffer had at the start.
13828
138292002-06-14 Juanma Barranquero <lektu@terra.es>
13830
13831 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
13832 Fix typos.
13833
138342002-06-14 Kim F. Storm <storm@cua.dk>
13835
13836 * insdel.c (insert_1_both, insert_from_string_1)
13837 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
13838 insert happened in the end_unchanged region. Otherwise, the
13839 redisplay may be confused and duplicate the last line in the
13840 buffer [seen after save-buffer when require-final-newline==t].
13841
138422002-06-13 Jason Rumney <jasonr@gnu.org>
13843
13844 * w32.c (init_environment): Remove EMACSLOCKDIR.
13845 (stat): Swap _S_IFDIR and _S_IFREG.
13846
138472002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13848
13849 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
13850 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
13851 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
13852 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
13853 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
13854 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
13855 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
13856 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
13857 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
13858 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
13859 SELECTION_REQUEST_EVENT, selection_clear_event to
13860 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
13861 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
13862 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
13863 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
13864 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
13865 no_event to NO_EVENT.
13866
138672002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13868
13869 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
13870
138712002-06-12 Stefan Monnier <monnier@cs.yale.edu>
13872
13873 * intervals.c (textget): Don't forget to `return'.
13874 (lookup_char_property): Use XCAR/XCDR.
13875
138762002-06-12 Juanma Barranquero <lektu@terra.es>
13877
13878 * xdisp.c (Fformat_mode_line): Fix typo.
13879
138802002-06-12 Kim F. Storm <storm@cua.dk>
13881
13882 * xdisp.c (Fformat_mode_line): New function.
13883 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
13884 (store_frame_title_char, store_frame_title): Use unconditionally.
13885 (init_xdisp): Defsubr Fformat_mode_line.
13886 Initialize frame_title_buf etc. unconditionally.
13887
138882002-06-11 Stefan Monnier <monnier@cs.yale.edu>
13889
13890 * keyboard.c (read_key_sequence):
13891 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
13892 things through those maps after downcasing events.
13893 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
13894 applies after function-key-map.
13895 Make sure that keytran can be done in the middle in the sequence.
13896 Be careful not to throw away events past the one we downcase.
13897
13898 * lread.c (read_integer): Remove unused var `tem'.
13899 (read1): Fix int/Lisp_Object mixup.
13900
13901 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
13902
139032002-06-11 Richard M. Stallman <rms@gnu.org>
13904
13905 * keyboard.c (readable_events): Ignore any number of
13906 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
13907
139082002-06-09 Miles Bader <miles@gnu.org>
13909
13910 * xfaces.c (Ftty_supports_face_attributes_p): New function.
13911 (parse_rgb_list, tty_lookup_color): New functions.
13912 (tty_defined_color): Use `tty_lookup_color' to do all the work.
13913 (color_distance, Fcolor_distance): New functions.
13914 (TTY_SAME_COLOR_THRESHOLD): New macro.
13915 (Qtty_color_standard_values): New variable.
13916 (syms_of_xfaces): Initialize new vars & functions.
13917
139182002-06-08 Colin Walters <walters@verbum.org>
13919
13920 * textprop.c (Vchar_property_alias_alist): New variable.
13921 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
13922
13923 * intervals.c (lookup_char_property): New function for looking up
13924 overlay and text properties, created from textget.
13925 (textget): Use it.
13926
13927 * intervals.h (lookup_char_property): Declare.
13928 (Vchar_property_alias_alist): Declare.
13929
13930 * buffer.c (Foverlay_get): Use lookup_char_property.
13931
139322002-06-07 Sam Steingold <sds@gnu.org>
13933
13934 * xselect.c (lisp_data_to_selection_data): Fix last change:
13935 *data_ret is not a Lisp string, while unibyte_string is.
13936
139372002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
13938
13939 * xselect.c (lisp_data_to_selection_data): Fix last change:
13940 set size_ret.
13941
139422002-06-07 Andreas Schwab <schwab@suse.de>
13943
13944 * m/amdx86-64.h: New file.
13945
139462002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
13947
13948 * fns.c (Fstring_make_unibyte): Doc fix.
13949
13950 * xselect.c (lisp_data_to_selection_data): If the requested type
13951 is STRING, call string_make_unibyte to encode the selected text
13952 as a string.
13953
13954 * window.c (Fset_window_hscroll): Doc fix.
13955
139562002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13957
13958 * fileio.c (choose_write_coding_system):
13959 Call select-safe-coding-system properly.
13960
139612002-06-03 Richard M. Stallman <rms@gnu.org>
13962
13963 * xdisp.c (message_with_string): Error if STRING is not a string.
13964
13965 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
13966
13967 * fileio.c (choose_write_coding_system): Pass FILE arg to
13968 Vselect_safe_coding_system_function.
13969
139702002-06-03 Ken Raeburn <raeburn@gnu.org>
13971
13972 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
13973
139742002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
13975
13976 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
13977 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
13978 * keymap.c (describe_command): Likewise.
13979 * minibuf.c (read_minibuf): Likewise.
13980
13981 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
13982 Cast `current_column' return value to int.
13983 (back_to_previous_visible_line_start)
13984 (reseat_at_next_visible_line_start, next_element_from_buffer):
13985 Cast `indented_beyond_p' 3rd arg to float.
13986
13987 * indent.c (last_known_column): Now a float.
13988 (current_column_1, position_indentation, current_column)
13989 (string_display_width): Return float.
13990 (Fcurrent_column): Cast `current_column' return value to int.
13991 (Fcurrent_indentation): Cast `position_indentation' retval to int.
13992 (indented_beyond_p): Third arg now a float.
13993 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
13994
13995 * lisp.h (current_column): Now returns float.
13996 (indented_beyond_p): 3rd arg now a float.
13997
139982002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
13999
14000 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
14001 is Qcompound_text_with_extensions.
14002
14003 * xselect.c (lisp_data_to_selection_data): Always set selection
14004 type as string if x_encode_text returns streingp non-NULL.
14005
14006 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
14007
140082002-05-30 Richard M. Stallman <rms@gnu.org>
14009
14010 * window.c (Fset_window_configuration): Correct the handling
14011 of point in current buffer, to work with multiple windows.
14012
140132002-05-29 Colin Walters <walters@verbum.org>
14014
14015 * lread.c (Fread_from_string): Don't depend on order of evaluation
14016 for C function parameters.
14017
140182002-05-28 Richard M. Stallman <rms@gnu.org>
14019
14020 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
14021 way for blinked-off state and for a nonselected window.
14022
14023 * window.c (window_scroll_pixel_based): Don't call Fbolp;
14024 instead, see if the new start pos is at beginning of line.
14025
14026 * fileio.c (Fwrite_region): If START is a string, don't
14027 make any annotations.
14028
14029 * eval.c (syms_of_eval): Doc fix.
14030
140312002-05-28 Colin Walters <walters@debian.org>
14032
14033 * emacs.c (USAGE1): Add --no-splash.
14034 (standard_args): Ditto.
14035
140362002-05-28 Colin Walters <walters@gnu.org>
14037
14038 * lread.c (readchar_count): New variable.
14039 (readchar): Increment it.
14040 (unreadchar): Decrement it.
14041 (read_multibyte): Decrement it.
14042 (Vread_with_symbol_positions): New variable.
14043 (Vread_symbol_positions_list): New variable.
14044 (read_internal_start): New function, created from Fread and
14045 Fread_from_string. Handle Vread_symbol_positions_list and
14046 Vread_with_symbol_positions.
14047 (readevalloop, Fread, Fread_from_string): Use it.
14048 (read1): Use readchar_count to add symbol positions to
14049 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
14050 (syms_of_lread): DEFVAR_LISP and initialize them.
14051
14052 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
14053 (substitute_object_recurse, substitute_object_in_subtree)
14054 (substitute_in_interval): Prototype.
14055 (read_multibyte): Return c if it's less than zero.
14056
140572002-05-28 Kim F. Storm <storm@cua.dk>
14058
14059 * fileio.c (Fread_file_name_internal): Added brute-force
14060 speed up for using predicate file-directory-p.
14061
140622002-05-28 Kim F. Storm <storm@cua.dk>
14063
14064 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
14065 New variables.
14066 (syms_of_fileio): DEFVAR_LISP them.
14067 (read_file_name_cleanup): New unwind function.
14068 (Fread_file_name_internal): Only return completions satifying
14069 Vread_file_name_predicate. Temporarily unwind protect and rebind
14070 default-directory while checking completions against the predicate.
14071 (Fread_file_name): Added PREDICATE argument. Specbind it to
14072 Vread_file_name_predicate during completion.
14073 Call Vread_file_name_function to read the file name if non-nil.
14074
14075 * lisp.h (Fread_file_name): Now has 6 args.
14076
14077 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
14078 predicate for Fread_file_name when reading directory name.
14079 Supply Qnil for predicate in other calls to Fread_file_name.
14080
140812002-05-26 Miles Bader <miles@gnu.org>
14082
14083 * term.c (tty_capable_p): New function.
14084 * dispextern.h (tty_capable_p): New function declaration.
14085 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
14086 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
14087
140882002-05-23 Stefan Monnier <monnier@cs.yale.edu>
14089
14090 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
14091 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
14092 (Vwrite_region_annotate_functions): Docstring fix.
14093
140942002-05-23 Kim F. Storm <storm@cua.dk>
14095
14096 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
14097 phys_cursor's hpos is overwritten. This is still not completely
14098 correct, as it doesn't really make sense to use hpos at all to
14099 get the cursor glyph (as that is relative to the width of the
14100 characters on the line, which may have changed during the update).
14101
141022002-05-22 Jason Rumney <jasonr@gnu.org>
14103
14104 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
14105 Lisp_Object.
14106 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
14107 Use modified enumfont_t struct.
14108
14109 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
14110
14111 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
14112 Handle the `hbar' cursor type.
14113 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
14114
14115 * w32fns.c (Qhbar): New variable.
14116 (x_specified_cursor_type): Use it.
14117
141182002-05-21 Ken Raeburn <raeburn@gnu.org>
14119
14120 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
14121 now, when the address is needed.
14122
141232002-05-21 Colin Walters <walters@gnu.org>
14124
14125 * Makefile.in (shortlisp): Add font-core.el.
14126
141272002-05-20 Richard M. Stallman <rms@gnu.org>
14128
14129 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
14130
14131 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
14132 equivalent key bindings here.
14133
141342002-05-20 Ken Raeburn <raeburn@gnu.org>
14135
14136 Change symbol structure to contain a lisp object for the symbol
14137 name:
14138 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
14139 object field named "xname".
14140 (SYMBOL_NAME): New macro.
14141 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
14142 name field.
14143 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
14144 (mark_object, gc_sweep): Use symbol xname field and XSTRING
14145 instead of name field.
14146 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
14147 SYMBOL_NAME instead of XSYMBOL and name field.
14148 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
14149 instead of XSYMBOL and name field.
14150 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
14151 and SYMBOL_NAME instead of XSYMBOL and name field.
14152 * coding.c (Fread_coding_system, code_convert_region1)
14153 (code_convert_string1, code_convert_string_norecord)
14154 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
14155 XSYMBOL and name field.
14156 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
14157 (Fmake_variable_buffer_local, Fmake_local_variable)
14158 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
14159 of XSYMBOL and name field.
14160 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
14161 XSYMBOL and name field.
14162 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
14163 instead of XSYMBOL and name field.
14164 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
14165 XSYMBOL and name field.
14166 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
14167 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
14168 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
14169 instead of XSYMBOL and name field.
14170 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
14171 (parse_modifiers, apply_modifiers, Fevent_convert_list)
14172 (parse_solitary_modifier, Fexecute_extended_command):
14173 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
14174 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
14175 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
14176 of XSYMBOL and name field.
14177 (describe_command, describe_translation): Use SYMBOL_NAME and
14178 assignment instead of XSYMBOL and name field and XSETSTRING.
14179 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
14180 instead of XSYMBOL and name field.
14181 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
14182 name field and XSETSTRING.
14183 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
14184 of XSYMBOL and name field.
14185 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
14186 assignment instead of XSYMBOL and name field and XSETSTRING.
14187 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
14188 XSTRING instead of XSYMBOL and name field.
14189 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
14190 and XSTRING instead of XSYMBOL and name field.
14191 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
14192 and XSTRING instead of XSYMBOL and name field.
14193 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
14194 XSTRING instead of XSYMBOL and name field.
14195 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
14196 of XSYMBOL and name field.
14197 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
14198 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
14199
142002002-05-19 Ken Raeburn <raeburn@gnu.org>
14201
14202 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
14203 and XCDR real rvalues in most configurations.
14204
14205 * buffer.c (fix_overlays_in_range, fix_overlays_before):
14206 Don't take the address of the cdr part of a cons cell; instead, track
14207 the parent cell and call XSETCDR, or set the variable for the head
14208 of the list if we haven't started down the list yet.
14209
142102002-05-19 Richard M. Stallman <rms@gnu.org>
14211
14212 * doc.c (reread_doc_file): Don't ask for confirmation.
14213
142142002-05-18 Jason Rumney <jasonr@gnu.org>
14215
14216 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
14217 (xbm_load_image): Use it.
14218 (xbm_load): Ditto.
14219 (xbm_read_bitmap_data): Reverted to xfns.c version.
14220 From David Ponce <david@dponce.com>.
14221
142222002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
14223
14224 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
14225 2.02 and later.
14226
142272002-05-16 Juanma Barranquero <lektu@terra.es>
14228
14229 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
14230
142312002-05-15 Stefan Monnier <monnier@cs.yale.edu>
14232
14233 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
14234 meaningful test.
14235 (read_char_minibuf_menu_prompt): Fix typo.
14236
142372002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
14238
14239 * eval.c (Fcommandp): Doc fix.
14240
142412002-05-13 Stefan Monnier <monnier@cs.yale.edu>
14242
14243 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
14244 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
14245 (Fset_keymap_parent): Gcpro a bit more.
14246 (access_keymap): Gcpro around meta_map call and around the main loop.
14247 (get_keyelt): Gcpro when following indirect references.
14248 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
14249 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
14250 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
14251 Remove useless ad-hoc remap code.
14252
142532002-05-13 Richard M. Stallman <rms@gnu.org>
14254
14255 * search.c (search_buffer): Give up boyer moore search if inverse
14256 translation change charset_base.
14257
142582002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
14259
14260 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
14261 characters is carried over from the previous block of text, adjust
14262 coding->produced to account for the extra character.
14263
142642002-05-11 Andreas Schwab <schwab@suse.de>
14265
14266 * coding.c (intersection): Keep the elements of the returned list
14267 in the same order as in the first list.
14268
142692002-05-11 Kim F. Storm <storm@cua.dk>
14270
3419757d 14271 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
048addec
JD
14272 only update cmm_size if realloc actually succeeds.
14273 Testing with initial size of 2 elements revealed that using
14274 realloc on GNU/Linux would cause a random trap in xmalloc
14275 later on, so I rewrote the code to use malloc/bcopy/free instead
14276 of realloc.
14277
142782002-05-10 Jason Rumney <jasonr@gnu.org>
14279
14280 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
14281
142822002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
14283
14284 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
14285 parens, to ensure correct evaluation order.
14286
142872002-05-10 Kim F. Storm <storm@cua.dk>
14288
14289 * keymap.c (Vemulation_mode_map_alists): New variable.
14290 (syms_of_keymap): DEFVAR_LISP it.
14291 (current_minor_maps): Process keymap alists in that list before
14292 minor-mode-overriding-map-alist and minor-mode-map-alist.
14293
142942002-05-09 Richard M. Stallman <rms@gnu.org>
14295
14296 * search.c (Freplace_match): Doc fix.
14297
142982002-05-09 Kim F. Storm <storm@cua.dk>
14299
14300 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
14301 Enlarge cursor rectangle drawn around image with non-zero relief.
14302
14303 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
14304 Enlarge cursor rectangle drawn around image with non-zero relief.
14305
14306 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
14307 Enlarge cursor rectangle drawn around image with non-zero relief.
14308
143092002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
14310
14311 * xselect.c (lisp_data_to_selection_data): Don't set selection
14312 type if comes from the Lisp object's car. If the selection
14313 contains a pure ASCII text, always return QSTRING as its type.
14314
143152002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14316
14317 * mac.c (mac-cut-function): Doc fix.
14318
143192002-05-05 Richard M. Stallman <rms@gnu.org>
14320
14321 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
14322
143232002-05-04 Jason Rumney <jasonr@gnu.org>
14324
14325 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
14326 for event-click-count.
14327
14328 * process.c (init_process): Only add server subfeature if we can
14329 use non-blocking I/O.
14330
143312002-05-04 Andrew Choi <akochoi@shaw.ca>
14332
14333 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
14334 repeatedly.
14335
143362002-05-03 Jason Rumney <jasonr@gnu.org>
14337
14338 * process.c (Fmake_network_process): Only support server sockets
14339 when we can make them non-blocking.
14340
14341 * s/ms-w32.h (HAVE_SELECT): Define.
14342
14343 * w32.h (FILE_NDELAY): New flag.
14344
14345 * w32.c (sys_getpeername, fcntl): New functions.
14346 (_sys_read_ahead): Temporarily block on non-blocking sockets.
14347
14348 * w32proc.c: include sys/file.h.
14349
143502002-05-03 Colin Walters <walters@verbum.org>
14351
14352 * callproc.c (Vgame_score_directory): Renamed to
14353 Vshared_game_score_directory.
14354
143552002-04-30 Richard M. Stallman <rms@gnu.org>
14356
14357 * s/gnu.h [emacs]: Include stdio.h.
14358 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
14359
14360 * eval.c (do_autoload): Error if called while preparing to dump.
14361
14362 * fns.c (Frequire): Error if need to load while preparing to dump.
14363
143642002-04-28 Colin Walters <walters@verbum.org>
14365
14366 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
14367 Default to "~/.emacs.d/games".
14368
143692002-04-29 Stefan Monnier <monnier@cs.yale.edu>
14370
14371 * lread.c (openp): Change arg exec_only to predicate.
14372 (build_load_history): Use XCAR/XCDR.
14373 (Flocate_file_internal): New fun.
14374 (syms_of_lread): Defsubr it.
14375 (Fload): Update call to openp.
14376
14377 * lisp.h (openp): Update prototype.
14378
14379 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
14380 * w32proc.c (sys_spawnve):
14381 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
14382 * w32.c (check_windows_init_file):
14383 * sound.c (Fplay_sound_internal):
14384 * process.c (Fstart_process):
14385 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
14386 * mac.c (run_mac_command):
14387 * emacs.c (init_cmdargs):
14388 * callproc.c (Fcall_process): Update call to openp.
14389
14390 * textprop.c (remove_properties): Don't use XCAR without CONSP.
14391
14392 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
14393
143942002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14395
14396 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
14397 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
14398
143992002-04-28 Richard M. Stallman <rms@gnu.org>
14400
14401 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
14402
14403 * eval.c (Fcommandp): New arg for_call_interactively.
14404 * lisp.h (Fcommandp): Declare new arg.
14405
144062002-04-28 Jason Rumney <jasonr@gnu.org>
14407
14408 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
14409
14410 * w32.c (stat, fstat): Use file index information to generate
14411 inodes for directories where available.
14412
144132002-04-26 Andrew Choi <akochoi@shaw.ca>
14414
14415 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
14416 [HAVE_CARBON]: Include Mac object files.
14417
14418 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
14419 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
14420 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
14421 MAC_OSX, and MAC_OS instead of macintosh.
14422
14423 * editfns.c [MAC_OS8]: Include stdio.h.
14424
14425 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
14426
14427 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
14428 Apple Monaco.
14429
78819ebb 14430 * process.c (QCfamily, QCfilte): Declare extern.
048addec
JD
14431 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
14432 calling select.
14433
14434 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
14435
14436 * tparam.c [MAC_OSX]: Don't define BC and UP.
14437
14438 * config.in [HAVE_CARBON]: Add.
14439
14440 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
14441 Move here from mac/src and mac/inc.
14442
14443 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
14444
144452002-04-26 Gerd Moellmann <gerd@gnu.org>
14446
14447 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
14448 Compute phys_cursor_width from the x position returned
14449 by x_draw_glyhs, which is cheaper.
14450 (x_display_and_set_cursor): Compute the buffer-local value
14451 of `cursor-in-non-selected-windows' only when needed.
14452
144532002-04-25 Gerd Moellmann <gerd@gnu.org>
14454
14455 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
14456 cursor on a stretch glyph has a width that depends on
14457 x_stretch_cursor_p.
14458
144592002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14460
14461 * abbrev.c (abbrev-start-location): Doc fix.
14462
14463 * indent.c (Fvertical_motion): Fix last change.
14464
144652002-04-25 Gerd Moellmann <gerd@gnu.org>
14466
14467 * indent.c (Fvertical_motion): Move to the start of the line
14468 containing PT before moving up or down.
14469
144702002-04-24 Gerd Moellmann <gerd@gnu.org>
14471
14472 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
14473 case of writing a whole row, more or less analogous to the case of
14474 writing only parts of a row.
14475
14476 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
14477 0 for NO_CURSOR.
14478
14479 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
14480
144812002-04-23 Colin Walters <walters@verbum.org>
14482
14483 * buffer.c (syms_of_buffer): Doc fix.
14484
144852002-04-23 Gerd Moellmann <gerd@gnu.org>
14486
14487 * xterm.c (notice_overwritten_cursor): Handle the special case
14488 of the cursor being in the first blank non-text line at the
14489 end of a window.
14490
14491 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14492 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14493 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
14494 bar cursors only, to make phys_cursor_width contain what its name
14495 suggests.
14496 (notice_overwritten_cursor): Consider the cursor image erased if
14497 the output area intersects the cursor image in y-direction.
14498
144992002-04-23 Simon Marshall <simon@gnu.org>
14500
14501 * xfns.c (x_set_mouse_color): Change default for cross_cursor
14502 to XC_hand2.
14503
145042002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14505
14506 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
14507
145082002-04-22 Kim F. Storm <storm@cua.dk>
14509
14510 * textprop.c (remove_properties): Fixed trap for malformed plist.
14511
145122002-04-22 Richard M. Stallman <rms@gnu.org>
14513
14514 * cmds.c (Fend_of_line): Handle intangible text in mid line.
14515
14516 * window.c (make_window): Initialize height_fixed_p,
14517 last_cursor_off_p, and p->cursor_off_p slots.
14518
145192002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14520
14521 * fns.c (use-dialog-box): Doc fix.
14522
145232002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14524
14525 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
14526 variables `row', `i' and `area'.
14527 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
14528 toolkit library.
14529
145302002-04-19 Stefan Monnier <monnier@cs.yale.edu>
14531
14532 * xfaces.c (clear_font_table): Don't free the default font of
14533 a frame even if it's on another display.
14534 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
14535 that could be Qt.
14536
145372002-04-19 Juanma Barranquero <lektu@terra.es>
14538
14539 * indent.c (Fmove_to_column): Remove unused local variable
14540 `next_boundary_byte'.
14541 (current_column_1): Likewise.
14542
145432002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
14544
14545 * msdos.c (Qhbar): New variable.
14546 (syms_of_msdos): Intern and staticpro it.
14547 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
14548 cursor type.
14549
145502002-04-19 Dave Lambert <dlambert@acm.org>
14551
14552 Theses change implement an underscore-like (`hbar') cursor.
14553
14554 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
14555
14556 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
14557 Handle the `hbar' cursor type.
14558 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
14559
14560 * xfns.c (Qhbar): New variable.
14561 (syms_of_xfns): Intern and staticpro it.
14562 (x_specified_cursor_type): Handle `hbar' cursor.
14563
14564 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
14565 not defined.
14566
145672002-04-18 Richard M. Stallman <rms@gnu.org>
14568
14569 * textprop.c (remove_properties): New arg LIST allows scanning
14570 either a list or a plist.
14571 (interval_has_some_properties_list): New function, like
14572 interval_has_some_properties using list instead of plist.
14573 All callers changed.
14574 (Fremove_list_of_text_properties): New function.
14575 (syms_of_textprop): Defsubr it.
14576
145772002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
14578
14579 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
14580
145812002-04-17 Juanma Barranquero <lektu@terra.es>
14582
14583 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
14584
145852002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
14586
14587 * window.c (coordinates_in_window): Don't report on margin area
14588 if its width is zero.
14589
145902002-04-16 Jason Rumney <jasonr@gnu.org>
14591
14592 * w32fns.c (Fx_file_dialog): Decode file name before using.
14593
14594 * w32term.c (construct_drag_n_drop): Likewise.
14595
145962002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
14597
14598 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
14599 store load-history in pure space.
14600
14601 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
14602
146032002-04-16 Stefan Monnier <monnier@cs.yale.edu>
14604
14605 * xterm.c (Qlatin_1, Qutf_8): New vars.
14606 (syms_of_xterm): Initialize them.
14607 (XTread_socket): Eliminate incorrect optimization that tried to avoid
14608 decoding the output of X*LookupString.
14609 Always use latin-1 to decode the output of XLookupString.
14610 Try Xutf8LookupString if XmbLookupString failed.
14611
14612 * region-cache.c (new_region_cache): Use BEG.
14613
146142002-04-16 Gerd Moellmann <gerd@gnu.org>
14615
14616 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
14617 configuration files.
14618 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
14619 returns 0.
14620
146212002-04-15 Andreas Schwab <schwab@suse.de>
14622
14623 * config.in: Regenerated using autoheader.
14624
14625 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
14626 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
14627 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
14628 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
14629 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
14630 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
14631 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
14632 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
14633 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
14634 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
14635 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
14636 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
14637 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
14638 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
14639 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
14640 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
14641 STACK_DIRECTION, now set by autoconf.
14642
146432002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14644
14645 * dispnew.c (marginal_area_string): Sort arguments.
14646
14647 * dispextern.h (marginal_area_string): Add prototype.
14648
146492002-04-13 Richard M. Stallman <rms@gnu.org>
14650
14651 * fileio.c (Finsert_file_contents):
14652 Don't call temp_output_buffer_setup--do just part, by hand.
14653
14654 * coding.c (run_pre_post_conversion_on_str):
14655 Don't call temp_output_buffer_setup--do just part, by hand.
14656
14657 * keyboard.c (command_loop_1): Don't call start_hourglass
14658 or cancel_hourglass when executing a macro.
14659
14660 * marker.c (count_markers): New function.
14661
14662 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
14663 grow without limit. Move recently used elements to the front.
14664
146652002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
14666
14667 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
14668
146692002-04-12 Gerd Moellmann <gerd@gnu.org>
14670
14671 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
14672 rows marginal areas.
14673 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
14674 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
14675
14676 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
14677
146782002-04-12 Dave Love <fx@gnu.org>
14679
14680 * dispnew.c (marginal_area_string): New.
14681
14682 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
14683 (Qleft_margin, Qright_margin): Declare.
14684 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
14685
14686 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
14687 note_mode_line_highlight and extended.
14688
14689 * keyboard.c (Qleft_margin, Qright_margin): Declare.
14690 (make_lispy_event): Deal with mouse events in margins.
14691
146922002-04-12 Stefan Monnier <monnier@cs.yale.edu>
14693
14694 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
14695
14696 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
14697 than deactivating the mark if tmm is set to `lambda'.
14698 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
14699 Use a single event for HELP_EVENT.
14700 (Fexecute_extended_command): Save last_point_position.
14701
147022002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14703
14704 * lisp.h (Fpropertize): Add prototype.
14705
14706 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
14707
147082002-04-10 Colin Walters <walters@verbum.org>
14709
14710 * config.in: Add HAVE_SHARED_GAME_DIR.
14711
14712 * callproc.c: (Vgame_score_directory): New variable.
14713 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
14714
147152002-04-10 Richard M. Stallman <rms@gnu.org>
14716
14717 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
14718
147192002-04-09 Stefan Monnier <monnier@cs.yale.edu>
14720
14721 * minibuf.c (read_minibuf): Use empty_string.
14722 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
14723 Short-circuit the search as soon as it "failed".
14724 (Fall_completions): Allow lambda forms and lists of strings for alist.
14725 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
14726 when require_match is nil.
14727 (Ftest_completion): Rename from `test_completion' and export to elisp.
14728 Call the predicate also when alist is a list.
14729 Obey Vcompletion_regexp_list.
14730 (do_completion, Fminibuffer_complete_and_exit): Use it.
14731 (Fassoc_string): Rename from `assoc_for_completion'.
14732 Allow list of strings as well and export to elisp.
14733
147342002-04-08 Stefan Monnier <monnier@cs.yale.edu>
14735
14736 * puresize.h (BASE_PURESIZE): Increase to 900KB.
14737
147382002-04-08 Juanma Barranquero <lektu@terra.es>
14739
14740 * w32.c (sys_accept): Don't hide variable `s'.
14741
147422002-04-05 Gerd Moellmann <gerd@gnu.org>
14743
14744 * callint.c (Fcall_interactively): Use INTEGERP instead of
14745 NUMBERP for checking Vhistory_length.
14746
147472002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14748
14749 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
14750 Doc fix to reflect it.
14751
147522002-04-04 Richard M. Stallman <rms@gnu.org>
14753
14754 * xdisp.c (display_mode_element): New arg RISKY.
14755 Disregard text props found or specified within a variable
14756 that isn't marked risky-local-variable.
14757 (Qrisky_local_variable): New variable.
14758 (syms_of_xdisp): Init and staticpro it.
14759
147602002-04-04 Stefan Monnier <monnier@cs.yale.edu>
14761
14762 * undo.c (record_point): New fun.
14763 (record_delete, record_insert): Use it.
14764
147652002-04-03 Juanma Barranquero <lektu@terra.es>
14766
14767 * doc.c (Fdocumentation): Add missing parentheses.
14768 (Fdocumentation_property): Likewise.
14769
147702002-04-03 Stefan Monnier <monnier@cs.yale.edu>
14771
14772 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
14773 data is 0, just return nil.
14774
147752002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
14776
14777 * msdos.c (syms_of_msdos): Fix last change with
14778 mouse_autoselect_window.
14779
147802002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14781
14782 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
14783 mouse_autoselect_window.
14784
147852002-04-02 Stefan Monnier <monnier@cs.yale.edu>
14786
14787 * keyboard.c (make_lispy_event): Handle unknown keysyms together
14788 with system-specific keysyms. Use it also for unknown function keys.
14789
14790 * doc.c (reread_doc_file): Return whether reload was attempted.
14791 (Fdocumentation, Fdocumentation_property): Don't try to reload
14792 if the doc is 0 and only ask once.
14793
14794 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
14795
147962002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
14797
14798 * keyboard.c (read_char): If the event was Qselect_window,
14799 restore timer_idleness_start_time to its previous value.
14800
14801 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
14802
148032002-04-01 Stefan Monnier <monnier@cs.yale.edu>
14804
14805 * region-cache.c (new_region_cache): Use BEG.
14806
14807 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
14808 Use BEG and BEG_BYTE.
14809
14810 * doc.c (get_doc_string): Return nil if the location is wrong.
14811 (reread_doc_file): New fun.
14812 (Fdocumentation, Fdocumentation_property):
14813 Call it if get_doc_string fails.
14814 (Fsnarf_documentation): Make it work for a dumped Emacs.
14815
14816 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
14817 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
14818
14819 * charset.c (Fstring): Allow 0 arguments.
14820
14821 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
14822
14823 * process.c (DATAGRAM_CONN_P, list_processes_1)
14824 (Fprocess_datagram_address, Fset_process_datagram_address)
14825 (Fset_network_process_options, server_accept_connection):
14826 Fix some int/Lisp_Object confusions (thank you union types).
14827
148282002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14829
14830 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
14831
14832 * w32term.c: Likewise.
14833 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
14834
14835 * keyboard.c (Qselect_window): New symbol.
14836 (head_table): Use it.
14837 (keys_of_keyboard): Bound select-window event to handle-select-window.
14838 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
14839
14840 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
14841 (last_window): New variable.
14842 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
14843 (note_mouse_movement): Remove reimplemented code in #if 0.
14844 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
14845 Emacs windows.
14846
14847 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
14848
148492002-03-31 Gerd Moellmann <gerd@gnu.org>
14850
14851 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
14852 Callers changed.
14853
148542002-03-30 Richard M. Stallman <rms@gnu.org>
14855
14856 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
14857 loop whenever it stops making progress.
14858
14859 * widget.c (set_frame_size): Don't call change_frame_size.
14860
148612002-03-30 Gerd Moellmann <gerd@gnu.org>
14862
14863 * dispnew.c (direct_output_for_insert):
14864 Call mark_window_display_accurate.
14865
148662002-03-29 Jason Rumney <jasonr@gnu.org>
14867
14868 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
14869
148702002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
14871
14872 * Makefile.in (lread.o): Depend on coding.h.
14873
14874 * lread.c (openp, Fload): Encode the file name before passing it
14875 to `stat', `access', and `emacs_open'.
14876 (openp): GCPRO the encoded file name. Don't recompute Lisp
14877 strings unnecessarily.
14878
148792002-03-29 Kim F. Storm <storm@cua.dk>
14880
14881 * fns.c (Flax_plist_put): Doc fix.
14882
148832002-03-28 Miles Bader <miles@gnu.org>
14884
14885 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
14886
148872002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14888
14889 * process.c (set-network-process-options): Add usage.
14890 (make-network-process): Doc fix.
14891
148922002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
14893
14894 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
14895
148962002-03-26 Richard M. Stallman <rms@gnu.org>
14897
14898 * fns.c (Fsubstring_no_properties): New function.
14899 (Flax_plist_get, Flax_plist_put): New functions.
14900 (syms_of_fns): defsubr them.
14901
14902 * xdisp.c (update_menu_bar): Test only update_mode_lines;
14903 don't test or alter w->update_mode_line.
14904
14905 * window.c (Fdisplay_buffer): Doc fix.
14906
149072002-03-24 Richard M. Stallman <rms@gnu.org>
14908
14909 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
14910
149112002-03-24 Gerd Moellmann <gerd@gnu.org>
14912
14913 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
14914 (Fdefmacro): Handle `(declare ...)'.
14915 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
14916 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
14917
149182002-03-24 Jason Rumney <jasonr@gnu.org>
14919
14920 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
14921 (xbm_file_p): Add prototypes.
14922 (xbm_format, xbm_image_p): Sync with xfns.c.
14923 (reflect_byte): New function.
14924 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
14925 (xbm_load_image): Create bitmaps with a depth of 1.
14926 (init_xfns): Enable XBM images.
14927
149282002-03-23 Jason Rumney <jasonr@gnu.org>
14929
14930 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
14931 correctly. Do not pass up_modifier to keyboard buffer.
14932
14933 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
14934
149352002-03-22 Stefan Monnier <monnier@cs.yale.edu>
14936
14937 * Makefile.in (bootstrapclean): New target.
14938 (bootstrap-temacs, bootstrap-doc): Remove.
14939 (bootstrap-emacs): Use a bog-standard `temacs'.
14940 Don't bother to build a DOC file.
14941
14942 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
14943
14944 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
14945 in temacs even if !CANNOT_DUMP.
14946 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
14947
14948 * alloc.c (check_pure_size): Only output a warning.
14949
149502002-03-22 Jason Rumney <jasonr@gnu.org>
14951
14952 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
14953 supported.
14954
14955 * w32term.c (zv_bits): Declare as short, for word alignment.
14956 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
14957 (syms_of_w32term): Define x-use-underline-position-properties.
14958
14959 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
14960 (clear_image_cache): Block input, fix logic, clear matrices in
14961 all frames that share this cache.
14962
149632002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
14964
14965 * emacs.c (main): Update the Copyright year in the blurb printed
14966 by "emacs --version".
14967
14968 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
14969
14970 * xterm.c (XTread_socket): If XK_ISO_Lock and
14971 XK_ISO_Last_Group_Lock are defined, handle keysyms between
14972 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
14973
149742002-03-21 Kim F. Storm <storm@cua.dk>
14975
14976 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
14977 menu-bar bindings in keymap and local-map properties _are_ used.
14978 But try keymap property first in accordance with 2002-01-03 patch.
14979 Added comment describing why this is not always reliable.
14980 (tool_bar_items): Ditto for tool-bar.
14981
149822002-03-21 Jason Rumney <jasonr@gnu.org>
14983
14984 * w32fns.c (x_clear_image_1): Disable color table code.
14985
149862002-03-21 Kim F. Storm <storm@cua.dk>
14987
14988 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
14989 removed the wrong version of the DEFUN macro; fixed it.
14990
14991 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
14992 Fmember rather than Fmemq).
14993 (Fprovide): Check that subfeatures is a list.
14994
14995 * process.c (QCfeature, QCdatagram): Removed variables.
14996 (QCtype, Qdatagram): New variables.
14997 (network_process_featurep): Removed function.
14998 (Fmake_network_process): Removed :feature check.
14999 Use :type 'datagram instead of :datagram t to create a datagram
15000 socket. This allows us to add other connection types (e.g. raw
15001 sockets) later in a consistent manner.
15002 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
15003 supported subfeatures for feature make-network-process.
15004 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
15005 Intern and staticpro QCtype and Qdatagram.
15006 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
15007
15008 * xfns.c: (QCtype): Remove duplicate declaration and
15009 initialization (is now declared in process.c).
15010
15011 * w32fns.c: (QCtype): Remove duplicate declaration and
15012 initialization (is now declared in process.c).
15013
150142002-03-21 Richard M. Stallman <rms@gnu.org>
15015
15016 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
15017 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
15018 when jumping to `fail' to avoid undoing reg changes in the
15019 last iteration of the loop.
15020 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
15021
15022 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
15023 Depend on process.h.
15024
150252002-03-20 Jason Rumney <jasonr@gnu.org>
15026
15027 Most of the following changes are still conditional on HAVE_IMAGES
15028 which is not set by default on Windows.
15029
15030 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
15031
15032 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
15033 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
15034 (four_corners_best, x_clear_image_1, x_clear_image)
15035 (x_alloc_image_color, postprocess_image)
15036 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
15037 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
15038 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
15039
15040 * w32gui.h (struct XImage): Define.
15041
15042 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
15043 extract mouse co-ordinates.
15044
150452002-03-20 Jason Rumney <jasonr@gnu.org>
15046
15047 * w32.c (init_winsock): Dynamically load new server and UDP
15048 socket functions.
15049 (socket_to_fd): New function.
15050 (sys_socket): Use it.
15051 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
15052 (sys_recvfrom, sys_sendto): New wrapper functions.
15053
15054 * process.c (QCfamily, QCfilter): Remove duplicate declaration
15055 and initialization.
15056
15057 * makefile.w32-in (LIBS): Remove $(WSOCK32).
15058
150592002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
15060
15061 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
15062 Don't use "sun" as a variable, it's a predefined constant on Sun
15063 machines.
15064
150652002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15066
15067 * bytecode.c (Fbyte_code): Revert last change.
15068
150692002-03-19 Kim F. Storm <storm@cua.dk>
15070
15071 * makefile.w32-in (LIBS): Add $(WSOCK32).
15072 From David Ponce <dponce@voila.fr>.
15073
150742002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15075
15076 * process.c (wait_reading_process_input): Move variables `pname'
15077 and `pnamelen' down where they are used.
15078
15079 * bytecode.c (Fbyte_code): Discard unused computed value to
15080 prevent gcc warning.
15081
15082 * lisp.h (Fplist_member): Add prototype.
15083
150842002-03-18 Kim F. Storm <storm@cua.dk>
15085
15086 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
15087 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
15088
15089 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
15090 Remove explicit GNU_LINUX settings for datagram support.
15091
150922002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15093
15094 * process.c (Fmake_network_process): Remove unused variable `sa'.
15095 Doc fix. Add usage:.
15096 (set_socket_options): Remove unused variables `optnum' and `opttype'.
15097
150982002-03-17 Richard M. Stallman <rms@gnu.org>
15099
15100 * xdisp.c (cursor_type_changed): New variable.
15101 (redisplay_internal): Redisplay all windows if cursor_type_changed.
15102 Clear it when clearing windows_or_buffers_changed.
15103 (try_cursor_movement, redisplay_window, try_window_id)
15104 (try_window_reusing_current_matrix): Test cursor_type_changed
15105 along with windows_or_buffers_changed.
15106
15107 * window.h (cursor_type_changed): New variable.
15108
15109 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
15110 not update_mode_lines, and always set it to 1.
15111
15112 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
15113 if no frames needed redrawing.
15114
151152002-03-17 Kim F. Storm <storm@cua.dk>
15116
15117 The following changes add support for network server processes,
15118 datagram connections, and local (unix) sockets.
15119
15120 * process.h (struct Lisp_Process): New member log.
15121 Doc fix: Member command used to indicate stopped network process.
15122 Doc fix: Member childp contains plist for network process.
15123 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
15124
15125 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
15126 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
15127 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
15128 New variables.
15129 (NETCONN1_P): New macro.
15130 (DATAGRAM_SOCKETS): New conditional symbol.
15131 (datagram_address): New array.
15132 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
15133 (status_message): Use concat3.
15134 (Fprocess_status): Add `listen' status to doc string. Return `stop'
15135 for a stopped network process.
15136 (Fset_process_buffer): Update contact plist for network process.
15137 (Fset_process_filter): Ditto. Don't enable input for stopped
15138 network processes. Server must listen, even if filter is t.
15139 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
15140 New functions.
15141 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
15142 (Fprocess_contact): Added KEY argument. Handle datagrams.
15143 (list_processes_1): Optionally show only processes with the query
15144 on exit flag set. Dynamically adjust column widths. Omit tty
15145 column if not needed. Report stopped network processes.
15146 Identify server and datagram network processes.
15147 (Flist_processes): New optional arg `query-only'.
15148 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
15149 (conv_lisp_to_sockaddr, set_socket_options)
15150 (network_process_featurep, unwind_request_sigio): New helper functions.
15151 (Fprocess_datagram_address, Fset_process_datagram_address):
15152 (Fset_network_process_options): New lisp functions.
15153 (Fopen_network_stream): Removed. Now defined in simple.el.
15154 (Fmake_network_process): New lisp function. Code is based on previous
15155 Fopen_network_stream, but heavily reworked with new property list based
15156 argument list, support for datagrams, server processes, and local
15157 sockets in addition to old client-only functionality.
15158 (server_accept_connection): New function.
15159 (wait_reading_process_input): Use it to handle incoming connects.
15160 Do not enable input on a new connection if process is stopped.
f63fd14e 15161 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
15162 (send_process): Handle datagram sockets.
15163 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
15164 network process is indicated by setting command field to t .
15165 (Fprocess_send_eof): No-op if datagram connection.
15166 (Fstatus_notify): Don't read input for a stream server socket or a
15167 stopped network process.
15168 (init_process): Initialize datagram_address array.
15169 (syms_of_process): Intern and staticpro new variables, defsubr new
15170 functions.
15171
151722002-03-16 Jason Rumney <jasonr@gnu.org>
15173
15174 * w32fns.c (w32_to_all_x_charsets): Return correct type in
15175 startup case.
15176
151772002-03-16 Richard M. Stallman <rms@gnu.org>
15178
15179 * xdisp.c (redisplay_internal, redisplay_windows):
15180 Use list_of_error to call internal_condition_case_1.
15181 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
15182 so as to catch all errors with no possibility of debugger redisplay.
15183 (list_of_error): New variable.
15184 (syms_of_xdisp): Init and staticpro it.
15185
15186 * print.c (print_object): Delete `\ ' from printed rep of frame.
15187
151882002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
15189
15190 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
15191 until its implementation is fixed.
15192
151932002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15194
15195 * xfns.c (png_load): Remove unused variable `gamma_str'.
15196
151972002-03-14 Richard M. Stallman <rms@gnu.org>
15198
15199 * xfns.c (x_real_positions): Handle failure in XQueryTree.
15200
152012002-03-14 Miles Bader <miles@gnu.org>
15202
15203 * intervals.c (adjust_for_invis_intang): New function.
15204 (set_point_both): Use `adjust_for_invis_intang' to do most of the
15205 work for dealing with invisible+intangible regions. Do so before
15206 and after both forward and backward movements, to handle both
15207 front-sticky and rear-sticky cases.
15208 * textprop.c (text_property_stickiness): Function moved here from
15209 `editfns.c'.
15210 * intervals.h (text_property_stickiness): New declaration.
15211 * editfns.c (char_property_eq): Function removed.
15212 (text_property_stickiness): Function moved to `textprop.c'.
15213
152142002-03-13 Jason Rumney <jasonr@gnu.org>
15215
15216 * config.in: Add STRFTIME_NO_POSIX2.
15217
15218 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
15219 and %OX when underlying strftime does not.
15220
152212002-03-13 Stefan Monnier <monnier@cs.yale.edu>
15222
15223 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
15224 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
15225 line) to avoid annoying flicker.
15226 (xm_scroll_callback): Get rid of the now unnecessary kludge.
15227 (XTread_socket): Mark it static.
15228
15229 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
15230
152312002-03-13 Kim F. Storm <storm@cua.dk>
15232
15233 * puresize.h (BASE_PURESIZE): Increase to 775000.
15234
152352002-03-12 Juanma Barranquero <lektu@terra.es>
15236
15237 * editfns.c (syms_of_editfns): Fix typo.
15238
152392002-03-12 Gerd Moellmann <gerd@gnu.org>
15240
15241 * xsmfns.c: Include stdio.h because termhooks.h needs it.
15242 Include termopt.h for interrupt_input.
15243
152442002-03-11 Andreas Schwab <schwab@suse.de>
15245
15246 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
15247
152482002-03-11 Gerd Moellmann <gerd@gnu.org>
15249
15250 * xterm.c (note_mouse_movement): Put code for
15251 x_autoselect_window_p in #if 0.
15252
15253 * lread.c (Fload): Don't assume that message_with_string uses the
15254 string it is given like a C string.
15255
152562002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15257
78819ebb 15258 * xterm.h (x_session_check_input, x_session_initialize): Declare.
048addec
JD
15259
15260 * xterm.c: (XTread_socket): Add call to x_session_check_input and
15261 x_session_have_connection.
15262 (x_initialize): Add call to x_session_initialize.
15263
15264 * termhooks.h (enum event_kind): Add save_session_event.
15265
15266 * keyboard.c: Add Emacs event save_session_event.
15267
15268 * emacs.c (main): Add call to syms_of_xsmfns.
15269
78819ebb 15270 * lisp.h (syms_of_xsmfns): Declare extern.
048addec
JD
15271
15272 * config.in: Add HAVE_X_SM.
15273
15274 * Makefile.in (LIBXT): Add -lSM -lICE
15275 if HAVE_X_SM and not USE_X_TOOLKIT.
15276 (XOBJ): New file xsmfns.c added.
15277
15278 * xsmfns.c: New file for X session management.
15279
152802002-03-09 Jason Rumney <jasonr@gnu.org>
15281
15282 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
15283 read-only when setting modified time.
15284
152852002-03-08 Gerd Moellmann <gerd@gnu.org>
15286
15287 * xdisp.c (move_it_vertically_backward): At the end of the function,
15288 when moving forward by lines, treat terminal frames specially.
15289
15290 * keyboard.c (echo_char): Make sure to add a separator between
15291 keys even if echo_dash hasn't been called.
15292
15293 * xdisp.c: Use new string macros.
15294 (update_echo_area): Pass number of bytes to message3 instead of
15295 number of chars.
15296 (set_message_1): Don't access a string's size_byte directly.
15297 (decode_mode_spec_coding): Use number of bytes of eoltype string
15298 instead number of chars.
15299
15300 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
15301
153022002-03-08 Juanma Barranquero <lektu@terra.es>
15303
15304 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
15305 24-bit.
15306
153072002-03-06 Jason Rumney <jasonr@gnu.org>
15308
15309 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
15310
153112002-03-06 Gerd Moellmann <gerd@gnu.org>
15312
15313 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
15314 (cancel_echoing, echo_length, echo_truncate): Changed to
15315 work with new kboard definition.
15316 (echo_now): Use message3_nolog instead of message2_nolog.
15317
15318 * alloc.c (mark_kboards): Mark echo_string.
15319
15320 * keyboard.h (ECHOBUFSIZE): Removed.
15321 (struct kboard): Member echoptr removed, member echobuf renamed
15322 to echo_string.
15323
15324 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
15325 message3 instead of message2 to display the message using STRING's
15326 text properties.
15327
153282002-03-05 Andreas Schwab <schwab@suse.de>
15329
15330 * xdisp.c (hscroll_margin): Change to EMACS_INT.
15331
153322002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
15333
15334 * frame.c (default-frame-alist): Explain that setting it doesn't
15335 affect existing frames.
15336
153372002-03-05 Stefan Monnier <monnier@cs.yale.edu>
15338
15339 * indent.c (skip_invisible): Fix my brain fart.
15340
15341 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
15342
153432002-03-04 Stefan Monnier <monnier@cs.yale.edu>
15344
15345 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
15346 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
15347 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
15348 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
15349 and variables to use EMACS_INT instead of just int.
15350
15351 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
15352
153532002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
15354
15355 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
15356 environment, pass it down with corrected value.
15357
153582002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15359
15360 * lread.c (read_filtered_event): Do not call start_hourglass
15361 before returning.
15362
153632002-03-04 Juanma Barranquero <lektu@terra.es>
15364
15365 * w32term.c (x_display_and_set_cursor): Fix typo.
15366
153672002-03-03 Richard M. Stallman <rms@gnu.org>
15368
15369 * fileio.c (Fmake_temp_name): Doc fix.
15370
153712002-03-03 Gary Wong <gtw@gnu.org>
15372
15373 * termcap.c [!emacs]: Replace ospeed for building standalone
15374 libtermcap, for binary compatibility.
15375
15376 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
15377
153782002-03-03 Richard M. Stallman <rms@gnu.org>
15379
15380 * xrdb.c (file_p): Rename arg `path' to `filename'.
15381
15382 * abbrev.c (Fexpand_abbrev): Increment plist as use count
15383 only if it is an integer.
15384
15385 * xfns.c (png_load): Set screen_gamma based on f->gamma.
15386 If png_get_sRGB gives an answer, call png_set_gamma
15387 using the default image gamma value.
15388
15389 * lread.c (read1): When reading from a file, default string to
15390 multibyte only if it has some multibyte characters.
15391
15392 * print.c (print_object): Output multibyte chars 128...255
15393 using \x even if ! print_escape_multibyte.
15394
15395 * xdisp.c (display_mode_element): Move the places where
15396 bytepos, charpos, this, and lisp_string are set.
15397 Use lisp_string to set bytepos.
15398
15399 * xdisp.c (redisplay_internal):
15400 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
15401
15402 * xdisp.c (display_mode_element): Merge properties specified with
15403 :propertize onto those that come with the string.
15404
154052002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
15406
15407 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
15408 automatic-hscrolling. Users changed.
15409 <hscroll-margin>: Renamed from automatic-hscroll-margin.
15410 Users changed.
15411 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
15412
154132002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
15414
15415 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
15416
154172002-03-02 Kim F. Storm <storm@cua.dk>
15418
15419 * window.c (Fminibuffer_selected_window): New function.
15420 (syms_of_window): Defsubr it.
15421
154222002-03-01 Kim F. Storm <storm@cua.dk>
15423
15424 * window.h (struct window): New member phys_cursor_width.
15425
15426 * window.c (make_window, replace_window): Init phys_cursor_width.
15427
15428 * xterm.c (x_display_and_set_cursor): Blink box cursor using
15429 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
15430
15431 * w32term.c (x_display_and_set_cursor): Blink box cursor using
15432 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
15433
15434 * lisp.h (GCPRO6): New macro.
15435
15436 * process.c (Fopen_network_stream): Use GCPRO6.
15437
154382002-03-01 Kim F. Storm <storm@cua.dk>
15439
15440 * process.c (Qconnect, Qfailed): New variables.
15441 (syms_of_process): Intern and staticpro them.
15442 (Fprocess_status): Document connect and failed return values.
15443 [NON_BLOCKING_CONNECT]: New conditional.
15444 (connect_wait_mask, num_pending_connects): New variables.
15445 (status_message): Convert Qfailed status.
15446 (Fopen_network_stream): Added support for non-blocking connect.
15447 New optional args: filter, sentinel, non_blocking. Doc updated.
15448 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
15449 (deactivate_process): Handle pending non-blocking connect.
15450 (wait_reading_process_input): Poll for status of non-blocking
15451 connects. Exec sentinel directly when connect succeeds.
15452 (status_notify): Don't read process output if not yet connected.
15453
154542002-02-28 Kim F. Storm <storm@cua.dk>
15455
15456 * window.c: (minibuf_selected_window): Renamed from
15457 Vminibuf_selected_window. Users changed.
15458 (syms_of_window): Staticpro it.
15459
154602002-02-26 Kim F. Storm <storm@cua.dk>
15461
15462 The following changes add a new Vminibuf_selected_window variable
15463 which is similar to Vminibuf_scroll_window, but which is only set
15464 on entry to the minibuffer (from a non-minibuffer window):
15465
15466 * window.c: (Vminibuf_selected_window): New variable.
15467 (struct save_window_data): New member minibuf_selected_window.
15468 (Fset_window_configuration): Restore Vminibuf_selected_window.
15469 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
15470 Set minibuf_scroll_window member to nil if minibuf_level is 0.
15471 (compare_window_configurations): Compare minibuf_selected_window.
15472
15473 * window.h: (Vminibuf_selected_window): Declare extern.
15474
15475 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
15476 entry to minibuffer or on entry from a non-minibuffer window.
15477
15478 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
15479 Vminibuf_selected_window instead of Vminibuf_scroll_window.
15480
15481 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
15482 instead of Vminibuf_scroll_window when deciding in which window
15483 the region should be highlighted. Consequently, the region remains
15484 highlighteded even when a completion buffer is also displayed.
15485
154862002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
15487
15488 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
15489
15490 * xselect.c (Qcompound_text_with_extensions): Renamed from
15491 Qcompound_text_no_extensions.
15492 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
15493
154942002-02-26 Juanma Barranquero <lektu@terra.es>
15495
15496 * w32proc.c (syms_of_ntproc): Doc fix.
15497
154982002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15499
15500 * intervals.h: Include "dispextern.h" unconditionally.
15501
155022002-02-24 Jason Rumney <jasonr@gnu.org>
15503
15504 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
15505 and disp-table.elc.
15506 (lisp): Add emacs-lisp/backquote.elc.
15507
155082002-02-24 Kim F. Storm <storm@cua.dk>
15509
3419757d 15510 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
048addec
JD
15511 The validation of the event type was too strict as it didn't
15512 allow string events; buffer names are used in bindings for
15513 menu-bar-select-buffer (see `menu-bar-update-buffers').
15514
155152002-02-23 Kim F. Storm <storm@cua.dk>
15516
15517 The following changes rework my patch of 2002-02-06 which
15518 added command remapping by entering the commands directly into
15519 the keymaps. Now, command remapping uses an explicit `remap'
15520 prefix in the keymaps, i.e. [remap COMMAND].
15521
15522 * keymap.c (Qremap, remap_command_vector): New variables.
3419757d 15523 (is_command_symbol): Remove function.
048addec
JD
15524 (Fdefine_key): No longer accept a symbol for KEY.
15525 Added validation of [remap COMMAND] argument for KEY.
15526 The DEF is no longer required to be a symbol when remapping a command.
15527 (Fremap_command): New function to remap command through keymaps.
15528 (Flookup_key): Perform command remapping initiated by
15529 Fremap_command directly for speed.
15530 (Fkey_binding): Use Fremap_command for command remapping.
15531 (where_is_internal): Handle new command remapping representation.
15532 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
15533 staticpro them. Defsubr Fremap_command.
15534
15535 * keymap.h (Fremap_command): Declare extern.
15536 (is_command_symbol): Remove extern.
15537
15538 * keyboard.c (command_loop_1): Use Fremap_command for command
15539 remapping; now try command remapping for all symbols.
15540
155412002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
15542
15543 * coding.h (run_pre_post_conversion_on_str): Add prototype.
15544
155452002-02-23 Jason Rumney <jasonr@gnu.org>
15546
15547 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
15548 on the string before encoding it.
15549 (Fw32_get_clipboard_data): Run post-read-conversion on the string
15550 after decoding it.
15551
15552 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
15553
155542002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15555
15556 * w32term.c (enter_timestamp): Remove unused static variable to
15557 prevent warning.
15558
15559 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
15560
155612002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
15562
15563 * w16select.c (Fw16_get_clipboard_data): Fix last change.
15564
15565 * xselect.c (selection_data_to_lisp_data): Fix last change.
15566
155672002-02-22 Jason Rumney <jasonr@gnu.org>
15568
15569 * w32term.h (struct w32_output): New member menu_command_in_progress.
15570
15571 * w32menu.c (menubar_selection_callback): Free the menu and
15572 clear the menu_command_in_progress flag.
15573
15574 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
15575 (menu_free_timer): New variable.
15576 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
15577 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
15578 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
15579 menu command is in progress.
15580 <WM_COMMAND>: Set the menu_command_in_progress flag.
15581 Kill any menu_free_timer that is running.
15582
15583 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
15584 Call ExtTextOutA rather than ExtTextOut.
15585
155862002-02-22 Eli Zaretskii <eliz@gnu.org>
15587
15588 * puresize.h (BASE_PURESIZE): Increase to 755000.
15589
155902002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
15591
15592 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
15593 on the string before encoding it.
15594 (Fw16_get_clipboard_data): Run post-read-conversion on the string
15595 after decoding it.
15596
155972002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
15598
15599 Support for ICCCM Extended Segments in X selections:
15600
15601 * xselect.c <Qcompound_text_no_extensions>: New variable.
15602 (syms_of_xselect): Intern and staticpro it.
15603 (selection_data_to_lisp_data): Run post-read-conversion on decoded
15604 selection text.
15605 (lisp_data_to_selection_data): If next-selection-coding-system is
15606 compound-text-no-extensions, set the type of selection to be
15607 compound-text.
15608
15609 * xterm.h (x_encode_text): Update prototype.
15610
15611 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
15612 callers changed. If SELECTIONP is non-zero, run the
15613 pre-write-conversion function before encoding the selection text.
15614
156152002-02-21 Kim F. Storm <storm@cua.dk>
15616
15617 * frame.c (syms_of_frame): Change mouse-highlight default to t.
15618
15619 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
15620 Correct composing of language-change event.
15621
156222002-02-20 Kim F. Storm <storm@cua.dk>
15623
15624 * keyboard.c (menu_bar_items): Don't include keymap or local-map
15625 bindings at PT when building menu (the menu is not updated often
15626 enough for this to work reliable).
15627 (tool_bar_items): Likewise.
15628 (current_active_maps): Removed unused (and buggy) function.
15629
156302002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15631
15632 * xfns.c (gif_load): Use correct width and height for GIF images.
15633
156342002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
15635
15636 * floatfns.c (Fatan): Accept an optional second arg and call
15637 atan2 if passed 2 args.
15638
156392002-02-18 Jason Rumney <jasonr@gnu.org>
15640
15641 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
15642
156432002-02-17 Jason Rumney <jasonr@gnu.org>
15644
15645 * w32term.c (x_autoselect_window_p): New variable.
15646 (syms_of_w32term): DEFVAR_BOOL and initialize it.
15647 (note_mouse_movement): Use it.
15648
15649 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
15650
15651 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
15652
15653 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
15654 New variables.
15655 (syms_of_w32fns): Intern and staticpro them.
15656 (x_frame_parms) <"fullscreen">: New parameter.
15657 (x_fullscreen_move, x_set_fullscreen): New functions.
15658 (x_set_frame_parameters): Support Qfullscreen.
15659 (x_real_positions): Save x/y_pixels_diff frame params.
15660 (x_figure_window_size): Support full-screen frames.
15661 (Fx_create_frame): Default the fullscreen parameter.
15662
15663 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
15664 (x_fullscreen_adjust): New functions.
15665 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
15666 fullscreen. Call x_check_fullscreen_move, and set the
15667 want_fullscreen member of output_data.w32
15668 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
15669
15670 * w32term.h: New enum for FULLSCREEN_* constants.
15671 (struct w32_output): New members want_fullscreen, x_pixels_diff,
15672 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
15673 (x-fullscreen-adjust): New prototype.
15674
156752002-02-17 Kim F. Storm <storm@cua.dk>
15676
15677 * frame.c: (Vmouse_highlight): New variable.
15678 (syms_of_frame): DEFVAR_LISP it.
15679
15680 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 15681
048addec 15682 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 15683
048addec
JD
15684 * xterm.c (disable_mouse_highlight): Removed variable.
15685 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
15686 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15687 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
15688 and on after keyboard input.
15689 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 15690
048addec 15691 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 15692
048addec
JD
15693 * msdos.c (disable_mouse_highlight): Removed variable.
15694 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15695 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
15696 (internal_terminal_init): Initialize mouse_face_hidden.
15697 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
15698 and on after keyboard input.
4f1b1854 15699
048addec 15700 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 15701
048addec
JD
15702 * w32term.c (disable_mouse_highlight): Removed variable.
15703 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
15704 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15705 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
15706 and on after keyboard input.
15707 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 15708
048addec 157092002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 15710
048addec
JD
15711 * msdos.c (last_mouse_window): New variable.
15712 (dos_rawgetc): Fix last change--if the mouse is in the same window
15713 as recorded in last_mouse_window, don't select this window.
5cb6905d 15714
048addec 15715 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 15716
048addec
JD
15717 * msdos.c (x_autoselect_window_p): New variable.
15718 (syms_of_msdos): Defvar it.
15719 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
15720 which the last mouse movement occured, unless it is already selected.
437dfb9f 15721
048addec
JD
15722 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
15723 New variables.
15724 (syms_of_xdisp): DEVFAR them.
15725 (hscroll_window_tree): Use automatic_hscroll_margin and
15726 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 15727
048addec 157282002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 15729
048addec
JD
15730 * xterm.c (x-autoselect-window): New variable.
15731 (note_mouse_movement): Use it.
9f696a00 15732
048addec 15733 * keyboard.c: Do not include "systime.h" twice.
d57966d7 15734
048addec 157352002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 15736
bfa02563 15737 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 15738
048addec 15739 * alloc.c (NSTATICS): Increase to 1280.
74779f52 15740
048addec 157412002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 15742
048addec 15743 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 15744
048addec
JD
15745 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
15746 (Vx_super_keysym): New variables.
15747 (syms_of_xterm): DEFVAR_LISP them.
15748 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
15749 variables to determine which keys to use for the various modifiers.
a474d59c 15750
048addec 157512002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 15752
048addec
JD
15753 * window.c: (Vmode_line_in_non_selected_windows): Removed.
15754 (mode_line_in_non_selected_windows): New variable.
15755 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 15756
048addec
JD
15757 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
15758 Use mode_line_in_non_selected_windows.
15759 (mode_line_in_non_selected_windows): Declare extern.
15760 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 15761
048addec 157622002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 15763
048addec
JD
15764 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
15765 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
15766 (Fclear_this_command_keys): Doc fixes.
2d10309f 15767
048addec
JD
15768 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
15769 (update_face_from_frame_parameter): Increment face_change_count
15770 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 15771
048addec
JD
15772 * xdisp.c (QCpropertize): New variable.
15773 (mode_line_proptrans_alist): New variable.
15774 (display_mode_element): New arg PROPS; all calls changed.
15775 Implement this, for strings.
15776 Handle literal output of strings by sharing the
15777 main-line code for strings, using local var `literal'.
15778 Handle :propertize feature.
15779 (syms_of_xdisp): Initialze and staticpro QCpropertize and
15780 mode_line_proptrans_alist.
0b1e6b54 15781
048addec 157822002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 15783
048addec
JD
15784 * window.c: (Vmode_line_in_non_selected_windows): New variable.
15785 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 15786
048addec
JD
15787 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
15788 (CURRENT_MODE_LINE_FACE_ID): Use it.
15789 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 15790
048addec
JD
15791 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
15792 to get mode line face.
e17144de 15793
048addec 157942002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 15795
048addec
JD
15796 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
15797 variables; cus-start.el doesn't need them anymore.
44368f8f 15798
048addec 157992002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 15800
048addec
JD
15801 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
15802 reduction. This fixes a display problem where stray newlines were
15803 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 15804
048addec 158052002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 15806
048addec 15807 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 15808
048addec 15809 * xdisp.c (display_mode_lines): Fix last change.
453c5510 15810
048addec 158112002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 15812
048addec
JD
15813 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
15814 match each other.
15815 (w32_load_system_font): Prevent Cleartype fonts from loading.
15816 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 15817
048addec 158182002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 15819
048addec
JD
15820 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
15821 (CURRENT_MODE_LINE_HEIGHT): Use it.
15822 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 15823
048addec
JD
15824 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
15825 (pos_visible_p, handle_face_prop): Likewise.
15826 (display_mode_lines): Likewise, but for the real selected window.
15827 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 15828
048addec
JD
15829 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
15830 in non-selected windows.
15831 (realize_basic_faces): Realize it.
15832 (syms_of_term): Intern and staticpro it.
308dd672 15833
048addec 158342002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 15835
048addec
JD
15836 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
15837 Changed mail addresses to emacs-devel@gnu.org.
308dd672 15838
048addec 158392002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 15840
048addec
JD
15841 * fileio.c (Fsubstitute_in_file_name): If the file name includes
15842 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 15843
048addec 15844 * floatfns.c (Fround): Doc fix.
3c1e6b46 15845
048addec 158462002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 15847
048addec 15848 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 15849
048addec 158502002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 15851
048addec 15852 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 15853
048addec 158542002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 15855
048addec
JD
15856 * keymap.c (where_is_internal): Only check whether definition is
15857 remapped if it fulfills is_command_symbol.
0065bb74 15858
048addec 158592002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 15860
048addec 15861 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 15862
048addec 15863 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 15864
048addec 158652002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 15866
048addec
JD
15867 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
15868 defining command remapping. Doc updated.
15869 (Flookup_key): Remap command through keymap if KEY is a symbol.
15870 (is_command_symbol): New function.
15871 (Fkey_binding): Use it. New optional argument NO-REMAP.
15872 Doc updated. Callers changed. Perform command remapping via
15873 recursive call unless that arg is non-nil.
15874 (where_is_internal): New argument no_remap. Callers changed.
15875 Call recursively to find original key bindings for a remapped
15876 comand unless that arg is non-nil.
15877 (Fwhere_is_internal): New optional argument NO-REMAP.
15878 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 15879
048addec 15880 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
3419757d 15881 (is_command_symbol): Add prototype.
0d8466cc 15882
048addec
JD
15883 * keyboard.c (Vthis_original_command): New variable.
15884 (syms_of_keyboard): DEFVAR_LISP it.
15885 (command_loop_1): Set it, and perform command remapping.
15fff01d 15886
048addec 158872002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 15888
048addec 15889 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 15890
048addec 158912002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 15892
048addec 15893 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 15894
048addec 158952002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 15896
048addec 15897 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 15898
048addec 158992002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 15900
048addec 15901 * filelock.c (S_ISLNK): Define if not defined.
3a232704 15902
048addec 159032002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 15904
048addec 15905 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 15906
048addec
JD
15907 * lread.c (read1): Redesign strategy for force_multibyte and
15908 force_singlebyte. Now is_multibyte records whether read_buffer
15909 is multibyte. Encountering any multibyte character makes it so.
4e02881b 15910
048addec 159112002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 15912
048addec
JD
15913 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
15914 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 15915
048addec 159162002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 15917
048addec
JD
15918 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
15919 latter never being defined on GNU/Linux.
749f499f 15920
048addec 159212002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 15922
048addec
JD
15923 * xfaces.c (realize_default_face): Don't set the weight and slant of
15924 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 15925
048addec 159262002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 15927
048addec
JD
15928 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
15929 Call cancel_hourglass unconditionally.
d0fd26dd 15930
048addec
JD
15931 * eval.c (Fsignal): Remove duplicated declaration of
15932 the variable `display_hourglass_p'.
b4c45162 15933
048addec 159342002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 15935
048addec 15936 * editfns.c (region_limit): Nicer error message.
c95eaa61 15937
048addec
JD
15938 * coding.c (decode_composition_emacs_mule):
15939 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 15940
048addec
JD
15941 * callint.c (check_mark): New arg to specify clearer error message.
15942 Callers changed.
c95eaa61 15943
048addec 159442002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 15945
048addec 15946 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 15947
048addec 159482002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 15949
048addec
JD
15950 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
15951 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
15952 Fix doc-strings.
c95eaa61 15953
048addec 159542002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 15955
048addec 15956 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 15957
048addec
JD
15958 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
15959 and scroll_up_aggressively.
c95eaa61 15960
048addec 159612002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 15962
048addec 15963 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 15964
048addec 159652002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 15966
048addec
JD
15967 * textprop.c (Fnext_property_change, Fnext_single_property_change)
15968 (Fprevious_property_change, Fprevious_single_property_change):
15969 Stay within the narrowed-buffer boundaries.
e2c3786a 15970
048addec 159712002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 15972
048addec
JD
15973 * term.c (Ftty_display_color_cells): New function.
15974 (syms_of_term): Defsubr it.
15975 (Ftty_display_color_cells, Ftty_display_color_p): Change the
15976 argument name to DISPLAY. Doc fix.
bf794306 15977
048addec
JD
15978 * dispextern.h: Add prototype for set_tty_color_mode and
15979 tty_setup_colors.
bf794306 15980
048addec 159812002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 15982
048addec
JD
15983 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
15984 If region left to draw is not what was expected, mark the frame as
15985 garbaged.
62582985 15986
048addec
JD
15987 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
15988 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 15989
048addec 159902002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 15991
048addec
JD
15992 * w32term.c (x_update_window_begin): Only hide caret if
15993 w32_use_visible_system_caret is set.
15994 (x_update_window_end): Only show caret if
15995 w32_use_visible_system_caret is set.
15996 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 15997
048addec 15998 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 15999
048addec 160002002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 16001
048addec
JD
16002 * unexelf.c (unexec): Define n so as to cause compilation error
16003 for the code where people have often written n instead of nn.
1e9a6186 16004
048addec 16005 * .gdbinit (hookpost-run): Defined.
1e9a6186 16006
048addec 160072002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 16008
048addec 16009 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 16010
048addec 160112002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 16012
048addec
JD
16013 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
16014 if fullscreen is being set.
7c75be36 16015
048addec 160162002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 16017
048addec
JD
16018 * minibuf.c (Fminibuffer_contents)
16019 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
16020 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 16021
048addec 160222002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 16023
048addec 16024 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 16025
048addec 160262002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 16027
048addec
JD
16028 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
16029 height before comparison.
16030 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 16031
048addec 160322002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 16033
048addec
JD
16034 * w32term.c (w32_system_caret_width): Remove.
16035 (w32_use_visible_system_caret): New user flag.
16036 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
16037 Windows reports a screen reader running.
16038 (x_update_window_begin): Hide the system caret.
16039 (x_update_window_end): Show the system caret.
16040 (x_display_and_set_cursor): Don't draw a cursor when
16041 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 16042
048addec
JD
16043 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
16044 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
16045 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
16046 the user requests it. Use system default width when creating.
16047 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 16048
048addec
JD
16049 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
16050 New window messages.
905cc05a 16051
048addec 160522002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 16053
048addec 16054 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 16055
048addec 160562002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 16057
048addec 16058 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 16059
048addec 160602002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 16061
048addec 16062 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 16063
048addec 160642002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 16065
048addec
JD
16066 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
16067 that Windows returns. If a double check fails, try to guess how
16068 ExtTextOut is going to act.
4d0fa4f3 16069
048addec
JD
16070 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
16071 in place of stricmp.
16072 (w32_list_synthesized_fonts): Removed.
16073 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
16074 (struct enumfont_t): New element; list.
16075 (enum_font_cb2): List all style and charset variations of a font.
16076 (Fw32_select_font): New optional argument; include_proportional.
16077 Exclude vertical fonts. Exclude proportional fonts unless
16078 include_proportional is non-nil.
16079 (w32_enable_synthesized_fonts): Change to a boolean.
16080 (Fw32_send_sys_command): Doc fix.
493faf20 16081
048addec 160822002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 16083
048addec
JD
16084 * dispnew.c (update_frame): Move the variable `tem' to the block
16085 where it is used.
4971e491 16086
048addec 160872002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 16088
048addec
JD
16089 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
16090 call to face-set-after-frame-default.
4971e491 16091
048addec 160922002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 16093
048addec
JD
16094 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
16095 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 16096
048addec 160972002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 16098
048addec
JD
16099 * window.c (enlarge_window): When exceeding size of parent,
16100 directly delete all the siblings instead of trying to resize it.
201c831a 16101
048addec 161022002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 16103
048addec 16104 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 16105
048addec 161062002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 16107
048addec 16108 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 16109
048addec 161102002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 16111
048addec
JD
16112 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
16113 is invisible. This can happen if cursor is on top line of a
16114 window, and we switch to a buffer with a header line.
d77fbc16 16115
048addec 16116 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 16117
048addec 161182002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 16119
048addec
JD
16120 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
16121 `dont_resize' only when used.
61e3b944 16122
048addec 16123 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 16124
048addec 161252002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 16126
048addec
JD
16127 * xdisp.c (display_mode_element): When computing charpos, depend
16128 on multibyteness of elt, not the text in field.
8af01033 16129
048addec 161302002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 16131
048addec
JD
16132 * buffer.c (Fkill_all_local_variables):
16133 Increment `update_mode_lines' only once.
7363986a 16134
048addec 161352002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 16136
048addec
JD
16137 * lisp.h (adjust_after_replace_noundo)
16138 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 16139
048addec 16140 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 16141
048addec 161422002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 16143
048addec
JD
16144 Support for the --color command-line argument and tty-color-mode
16145 frame parameter:
f1a85b89 16146
048addec
JD
16147 * term.c (tty_default_color_capabilities, tty_setup_colors)
16148 (set_tty_color_mode): New functions.
16149 (term_init): Call tty_default_color_capabilities.
16150 (Qtty_color_mode_alist): New variable.
16151 (syms_of_term): Intern and staticpro it.
f1a85b89 16152
048addec
JD
16153 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
16154 frames.
16155 (do_switch_frame): For termcap frames, switch the tty
16156 color mode as specified by the frame's parameters.
16157 (Qtty_color_mode): New variable.
16158 (syms_of_frame): Intern and staticpro it.
3a62677f 16159
048addec
JD
16160 * emacs.c (USAGE2): Add the --color option.
16161 (standard_args): Ditto.
72244db2 16162
048addec
JD
161632002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16164
16165 * xterm.h (struct x_output): New members want_fullscreen,
16166 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
16167 y_pixels_outer_diff.
16168 New enum for FULLSCREEN_* constants.
16169 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
16170 is NULL.
16171 (x_fullscreen_adjust): Add prototype.
3a62677f 16172
048addec
JD
16173 * emacs.c (USAGE2): Add the new full-screen arguments.
16174 (standard_args): Ditto.
3a62677f 16175
048addec
JD
16176 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
16177 New variables.
16178 (syms_of_xfns): Intern and staticpro them.
16179 (x_frame_parms) <"fullscreen">: New parameter.
16180 (x_fullscreen_move, x_set_fullscreen): New functions.
16181 (x_set_frame_parameters): Support for Qfullscreen.
16182 (x_real_positions): More accurate computation of the frame position.
16183 (x_figure_window_size): Support full-screen frames.
16184 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 16185
048addec
JD
16186 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
16187 (XTread_socket) <Expose>: Call x_check_fullscreen.
16188 <ConfigureNotify>: Don't resize to fullscreen.
16189 Call x_check_fullscreen_move, and set the want_fullscreen member of
16190 output_data.x.
3a62677f 16191
048addec 161922002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 16193
048addec
JD
16194 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
16195 for mice with more than 3 buttons.
b8523839 16196
048addec
JD
16197 * w32term.c (parse_button): New parameter xbutton. Callers changed.
16198 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 16199
048addec
JD
16200 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
16201 (syms_of_w32fns): DEFVAR_BOOL it.
16202 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 16203
048addec 162042002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 16205
048addec 16206 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 16207
048addec 162082002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 16209
048addec 16210 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 16211
048addec 162122002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 16213
048addec
JD
16214 * .gdbinit (xbuffer): Remove address operator since data is now a
16215 pointer.
c93674bb 16216
048addec 162172002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 16218
048addec 16219 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 16220
048addec 16221 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 16222
048addec 162232002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 16224
048addec
JD
16225 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
16226 when checking for multiple frames.
91175673 16227
048addec 162282002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 16229
048addec
JD
16230 * window.c (delete_window): Rewrite the code for changing the
16231 selected window to handle the case where WINDOW is not a leaf.
91175673 16232
048addec 162332002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 16234
048addec
JD
16235 * process.c (send_process): Set src_multibyte to 1 after the call
16236 top setup_coding_system, not before the call.
e0fead5d 16237
048addec 162382002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 16239
048addec
JD
16240 * xmenu.c (set_frame_menubar, xmenu_show):
16241 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 16242
048addec
JD
16243 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
16244 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 16245
048addec 162462002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 16247
048addec 16248 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 16249
048addec 16250 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 16251
048addec 16252 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 16253
048addec 162542002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 16255
048addec
JD
16256 * insdel.c (make_gap_larger): Make sure buffer size does not
16257 overflow range of int.
62854fe2 16258
048addec 162592002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 16260
048addec
JD
16261 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
16262 OVERLAPS_P.
656f46bb 16263
048addec 16264 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 16265
048addec
JD
16266 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
16267 to the left or to the right of the pointer, put it against
16268 the left screen edge.
16269 (x_frame_parms): Add missing braces around initializer.
036e218d 16270
048addec
JD
16271 * w32term.c (x_setup_relief_colors): Don't compute an image's
16272 background color if it doesn't have a Pixmap.
16273 (notice_overwritten_cursor): Don't depend on
16274 output_cursor and updated_area. Compare pixel coordinates with
16275 window's cursor pixel coordinates.
16276 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
16277 Call notice_overwritten_cursor with new arg list.
16278 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
16279 unconditionally.
16280 (x_draw_image_relief): Use predefined macro instead of
16281 constant when the value of `tool_bar_button_relief' is negative.
036e218d 16282
048addec 16283 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 16284
048addec 162852002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 16286
048addec 16287 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 16288
048addec 162892002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 16290
048addec
JD
16291 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
16292 (Fkey_binding): Try the `keymap' property map first.
16293 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
16294 minor mode bindings.
90647b07 16295
048addec 162962002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 16297
3419757d 16298 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
ace9b298 16299
048addec 163002002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 16301
048addec
JD
16302 * keyboard.c (read_key_sequence): Handle the keymap property
16303 before minor mode maps.
9fbc32aa 16304
048addec
JD
16305 * editfns.c (Fformat): Update thissize from field_width
16306 based on the actual width, in the string case.
036e218d 16307
048addec 163082002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 16309
048addec
JD
16310 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
16311 when used as truth value to prevent gcc warnings.
9fbc32aa 16312
048addec
JD
16313 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
16314 * w32proc.c: Include <config.h>.
9fbc32aa 16315
048addec 163162002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 16317
048addec
JD
16318 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
16319 not EMACS_INT, to make them compatible with DEFVAR_INT.
16320 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 16321
048addec 163222002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 16323
048addec
JD
16324 * print.c (print_object): Test print_escape_nonascii only for
16325 unibyte strings.
16326 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
16327 when outputting to a multibyte buffer.
9fbc32aa 16328
048addec 163292001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 16330
048addec
JD
16331 * print.c (print_object): In multibyte string, use hex escapes.
16332 Use octal only for unibyte strings.
16333 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 16334
048addec
JD
16335 * lread.c (read_escape): New arg BYTEREP for reporting whether
16336 escape forces unibyte or multibyte.
16337 (read1): When reading a string, take note of that info.
0142178a 16338
048addec 163392001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 16340
048addec
JD
16341 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
16342 comparison to test lisp value returned by Fget.
d4824a5d 16343
048addec 163442001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 16345
048addec 16346 * lisp.h (max_specpdl_size): Add declaration.
b1356234 16347
048addec 16348 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 16349
048addec
JD
16350 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
16351 Handle modifier bits. Correct typo in error message.
99e380ee 16352
048addec 163532001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 16354
048addec
JD
16355 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
16356 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
16357 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
16358 Update calls to Fdefine_abbrev.
16359 (write_abbrev): Update for changed data format.
16360 Don't list "system" abbrevs.
16361 (Fexpand_abbrev): Update use count with new data format.
16362 (describe_abbrev): Update for changed data format.
16363 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 16364
048addec 16365 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 16366
048addec 16367 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 16368
048addec
JD
16369 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
16370 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 16371
048addec
JD
16372 * keymap.c (Flookup_key): Error message if key has wrong data type.
16373 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
16374 (exclude_key): New variable.
59a86c99 16375
048addec 163762001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 16377
048addec
JD
16378 * xterm.c (x_setup_relief_colors): Don't compute an image's
16379 background color if it doesn't have a Pixmap.
eb77a5f4 16380
048addec
JD
16381 * xterm.c (notice_overwritten_cursor): Don't depend on
16382 output_cursor and updated_area. Compare pixel coordinates with
16383 window's cursor pixel coordinates.
16384 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
16385 Call notice_overwritten_cursor with new arg list.
16386 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
16387 unconditionally.
eb77a5f4 16388
048addec
JD
16389 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
16390 height of the cursor line to the amount to scroll.
eb77a5f4 16391
048addec 163922001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 16393
048addec
JD
16394 * intervals.c (set_point_both): The position after an invisible,
16395 intangible character is not an acceptable stopping point.
bb313871 16396
048addec 163972001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 16398
048addec
JD
16399 * window.c (enlarge_window): In new preserve_before code, convert
16400 CURBEG from lisp object to integer before doing arithmetic.
6052529b 16401
048addec 164022001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 16403
048addec 16404 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 16405
048addec 164062001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 16407
048addec
JD
16408 * keyboard.c (record_char): Ignore duplicate help-echo events only
16409 separated by mouse-movement. When tracking mouse, only record
16410 first and last mouse-movement event in same window.
16411 Don't record mouse-movement events in keyboard macros.
3ce081f5 16412
048addec 164132001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 16414
048addec
JD
16415 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
16416 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 16417
048addec
JD
16418 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
16419 instead of Fstring_as_unibyte.
9fabb2f5 16420
048addec 164212001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 16422
048addec 16423 The following changes remove mocklisp support:
9fabb2f5 16424
048addec 16425 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 16426
048addec
JD
16427 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
16428 `Qmocklisp' and `Qmocklisp_arguments'.
16429 Remove prototype of syms_of_mocklisp.
2fa0eedf 16430
048addec 16431 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 16432
048addec
JD
16433 * callint.c: Do not include mocklisp.h.
16434 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 16435
048addec
JD
16436 * eval.c: Remove variables `Qmocklisp_arguments',
16437 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
16438 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
16439 Do not test for mocklisp case.
16440 (Fwhile): Remove unused variable `tem'.
16441 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 16442
048addec 16443 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 16444
048addec 16445 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 16446
048addec 16447 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 16448
048addec 164492001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 16450
048addec
JD
16451 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
16452 to the left or to the right of the pointer, put it against
16453 the left screen edge.
6108b49c 16454
048addec 164552001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 16456
048addec
JD
16457 * Makefile.in (distclean): Remove .gdbinit if we are building
16458 outside the source tree.
5eea19a4 16459
048addec 164602001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 16461
048addec 16462 * w32.c (emacs_root_dir): New function.
5eea19a4 16463
048addec 16464 * msdos.c (emacs_root_dir): New function.
5eea19a4 16465
048addec
JD
16466 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
16467 of the current drive as the fallback for default_directory.
438e57dd 16468
048addec
JD
16469 * dired.c (file_name_completion): Run the elements of
16470 completion-ignored-extensions through ENCODE_FILE.
438e57dd 16471
048addec
JD
16472 * lisp.h (scmp): Remove prototype, since it's now a static
16473 function private to dired.c.
c88e5347 16474
048addec 164752001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 16476
048addec
JD
16477 * dired.c (scmp): Function moved from minibuf.c.
16478 Delete multibyte handling--used only on encoded strings.
59ce1461 16479
048addec 16480 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 16481
048addec 16482 * fns.c (merge): Add QUIT call.
59ce1461 16483
048addec 164842001-12-18 Dave Love <fx@gnu.org>
8727d588 16485
048addec
JD
16486 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
16487 language/georgian.el.
8727d588 16488
048addec 164892001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 16490
048addec
JD
16491 * Makefile.in (lisp, shortlisp): Synchronize with changes to
16492 lisp/Makefile.in:DONTCOMPILE.
cc63037e 16493
048addec 164942001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 16495
048addec
JD
16496 * xdisp.c (window_box_height): Do not return negative values.
16497 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 16498
048addec 16499 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 16500
048addec 16501 * term.c (keys): Likewise.
deece6f5 16502
048addec 16503 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 16504
048addec 165052001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 16506
048addec
JD
16507 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
16508 patch (COMPOSING_P, not COMPOSING).
28ff4293 16509
048addec 165102001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 16511
048addec 16512 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 16513
048addec
JD
16514 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
16515 before calling decode_coding.
9b46de40 16516
048addec 16517 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 16518
048addec
JD
16519 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
16520 instead of only for COMPOSITION_DISABLED.
9b46de40 16521
048addec 165222001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 16523
048addec 16524 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 16525
048addec 16526 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 16527
048addec
JD
16528 * buffer.h (struct buffer): New field `display_error_modiff'.
16529 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 16530
048addec 16531 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 16532
048addec
JD
16533 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
16534 Call redisplay_window, but not if display_error_modiff field says no.
16535 (redisplay_window_error): New function.
16536 (displayed_buffer): New variable.
16537 (redisplay_internal, redisplay_windows): Call the new functions
16538 instead of redisplay_window directly.
2cd23960 16539
048addec 165402001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 16541
048addec 16542 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 16543
048addec 165442001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 16545
048addec 16546 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 16547 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 16548 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 16549
048addec 165502001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 16551
048addec
JD
16552 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
16553 parameter have a numeric value all the time.
f6fa0866 16554
048addec 16555 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 16556
048addec 165572001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 16558
048addec 16559 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 16560
048addec
JD
16561 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
16562 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 16563
048addec 165642001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 16565
048addec
JD
16566 * xdisp.c (move_it_vertically_backward): Change heuristic
16567 for the case that we didn't move far enough initially.
91c153e2 16568
048addec
JD
16569 * window.c (Frecenter): Simplify computation in the case of window
16570 system frames and ARG < 0; use window_box_height.
65b7d3e7 16571
048addec 165722001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 16573
048addec
JD
16574 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
16575 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 16576
048addec 165772001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 16578
048addec
JD
16579 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
16580 arg is negative.
be676094 16581
048addec 165822001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 16583
048addec
JD
16584 * m/hp800.h: Split the __hpux conditional into the parts
16585 that are right for GNU/Linux too and the parts that are not.
16586 Use the former if GNU_LINUX.
16587 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 16588
048addec 16589 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 16590
048addec 165912001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 16592
048addec
JD
16593 * macros.c, msdos.c, w16select.c: Change doc-string comments to
16594 `new style' [w/`doc:' keyword].
032a857d 16595
048addec 165962001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 16597
048addec
JD
16598 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
16599 before using.
b6270150 16600
048addec 166012001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 16602
048addec
JD
16603 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
16604 keyword].
98cbb9fa 16605
048addec 166062001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 16607
048addec 16608 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 16609
048addec 16610 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 16611
048addec 166122001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 16613
048addec 16614 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
78819ebb 16615 Add comment to explain where the struct came from.
048addec
JD
16616 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
16617 (add_menu_item): Process pop-up menus first to avoid memory leak.
16618 (add_menu_item, w32_menu_display_help): Use `help' field as
16619 Lisp_Object.
16620 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 16621
048addec 166222001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 16623
048addec 16624 * COPYING: Moved back.
fa336b91 16625
048addec
JD
16626 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
16627 Add parentheses around && within ||.
077907d4 16628
048addec 16629 * indent.c (compute_motion): Likewise.
aa2af83a 16630
048addec 16631 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 16632
048addec
JD
16633 * coding.c (setup_coding_system, shrink_encoding_region)
16634 (Fdecode_sjis_char): Likewise.
60a653f1 16635
048addec 166362001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 16637
048addec
JD
16638 * xdisp.c (display_mode_element): Don't read past end of string if
16639 it ends with '%'.
60a653f1 16640
048addec
JD
16641 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
16642 can hold.
60a653f1 16643
048addec
JD
16644 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
16645 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
16646 type changed to Lisp_Object.
16647 (syms_of_data): DEFVAR_LISP them.
60a653f1 16648
048addec 166492001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 16650
048addec
JD
16651 * callproc.c (init_callproc): Set Vdata_directory based on the source
16652 location whenever Emacs was run uninstalled.
60a653f1 16653
048addec 166542001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 16655
048addec
JD
16656 * config.in (HAVE_WORKING_VFORK): New #undefs.
16657 * process.c (create_process):
16658 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
16659 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
16660 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
16661 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
16662 * m/intel386.h (HAVE_VFORK): Likewise.
16663 * m/mips-siemens.h (HAVE_VFORK): Likewise.
16664 * m/mips.h (HAVE_VFORK): Likewise.
16665 * s/freebsd.h (vfork): Remove #define.
16666 * s/lynxos.h (HAVE_VFORK): Remove #undef.
16667 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 16668
048addec 166692001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 16670
048addec
JD
16671 * s/hpux10.h (random): Add undef.
16672 (HAVE_RANDOM): Define it just once.
60a653f1 16673
048addec 166742001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16675
048addec 16676 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 16677
048addec 166782001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 16679
048addec
JD
16680 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
16681 scroll bars of the frame before deleting the frame itself. If the
16682 frame has a widget, delete the frame with XtDestroyWidget, and do
16683 not call XDestroyWindow before that.
60a653f1 16684
048addec 166852001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 16686
048addec 16687 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 16688
048addec 16689 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 16690
048addec 166912001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 16692
048addec
JD
16693 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
16694 excessively large.
60a653f1 16695
048addec
JD
16696 * insdel.c (make_gap_larger): New function.
16697 (make_gap_smaller): New function.
16698 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
16699 Call make_gap_smaller if arg is negative.
60a653f1 16700
048addec 167012001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16702
048addec
JD
16703 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
16704 Pass a dummy argument when calling interrupt_signal.
16705 (parse_menu_item): Mark disabled items before checking for empty def.
16706 (read_char_minibuf_menu_prompt): Make safety more visible.
16707 (read_key_sequence): Add a `first_unbound' variable.
16708 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
16709 unbound prefix as soon as we can detect it.
60a653f1 16710
048addec
JD
16711 * doc.c (Fsnarf_documentation): Add prototype.
16712 (get_doc_string): Handle negative arguments.
16713 (Fdocumentation): Use AREF and ASIZE.
16714 Move the calls to get_doc_string to a single place.
16715 Don't confuse an interactive-spec for a docstring reference.
16716 (Fdocumentation_property): Take advantage of the fact that
16717 get_doc_string now ignores the sign of the docstring position.
60a653f1 16718
048addec 16719 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 16720
048addec 167212001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16722
a64387ee 16723 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 16724
048addec 167252001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16726
048addec
JD
16727 * xterm.c (x_draw_image_relief): Use predefined macro instead of
16728 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 16729
048addec 167302001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 16731
048addec
JD
16732 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
16733 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 16734
048addec 16735 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 16736
048addec 167372001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16738
048addec 16739 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 16740
048addec 167412001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 16742
048addec 16743 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 16744
048addec 167452001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 16746
f63fd14e 16747 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 16748
048addec
JD
16749 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
16750 [!WM_MOUSELEAVE]: Define.
60a653f1 16751
048addec
JD
16752 * w32menu.c (current_popup_menu, get_menu_item_info):
16753 (set_menu_item_info): New vars.
16754 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
16755 (w32_menu_show): Set current_popup_menu.
16756 (add_menu_item): Allocate new strings for owner-drawn menu items
16757 and help strings.
16758 Use owner-draw for disabled menu items again.
16759 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
16760 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 16761
048addec
JD
16762 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
16763 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
16764 <WM_EXITMENULOOP>: Free menu strings.
16765 <WM_MOUSELEAVE>: Stop tracking mouse.
16766 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 16767
048addec
JD
16768 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
16769 and mouse face.
60a653f1 16770
048addec 167712001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 16772
048addec
JD
16773 The following changes add left-fringe and right-fringe
16774 frame parameters to adjust fringe widths, or remove one or
16775 both fringes.
60a653f1 16776
048addec
JD
16777 * frame.h (struct frame): Remove trunc_area_pixel_width and
16778 trunc_area_cols fields.
16779 (Qleft_fringe, Qright_fringe): Declare.
16780 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 16781
048addec
JD
16782 * frame.c (Qleft_fringe, Qright_fringe): New vars.
16783 (syms_of_frame): Initialize them.
60a653f1 16784
048addec
JD
16785 * window.c (coordinates_in_window): Handle separate left and right
16786 fringe widths.
60a653f1 16787
048addec
JD
16788 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
16789 and fringe_cols fields.
16790 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
16791 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
16792 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
16793 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
16794 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
16795 (x_compute_fringe_widths): Add prototype.
60a653f1 16796
048addec
JD
16797 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
16798 fill fringe evenly with small dashes.
f63fd14e 16799 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
16800 clip the new ZV bitmap to avoid jitter between rows.
16801 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
16802 background. Don't draw fringe bitmaps if fringe width is zero.
16803 (x_compute_fringe_widths): New function.
16804 (x_new_font, x_set_window_size_1): Use it.
60a653f1 16805
048addec
JD
16806 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
16807 (x_set_frame_parameters): Process `font' parameter before other
16808 parameters as fringe widths depend on it.
16809 (x_set_fringe_width): New function.
16810 (x_figure_window_size): Use x_compute_fringe_widths.
16811 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
16812 parameters.
60a653f1 16813
048addec
JD
16814 * widget.c (set_frame_size): Use x_compute_fringe_widths.
16815 (EmacsFrameSetCharSize): Ditto.
60a653f1 16816
048addec
JD
16817 * w32term.h: Merged changes from xterm.h.
16818 * w32term.c: Merged changes from xterm.c.
16819 * w32fns.c: Merged changes from xfns.c.
60a653f1 16820
048addec 168212001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16822
048addec 16823 * COPYING: Removed.
60a653f1 16824
048addec 168252001-11-29 Dave Love <fx@gnu.org>
60a653f1 16826
048addec
JD
16827 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
16828 extra extra slot.
16829 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 16830
048addec 168312001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16832
048addec
JD
16833 * fileio.c (file-name-coding-system)
16834 (default-file-name-coding-system): Doc fix (links to referenced
16835 variables added).
60a653f1 16836
048addec 168372001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16838
048addec
JD
16839 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
16840 Add dummy uses of gcproN variables.
60a653f1 16841
048addec
JD
16842 * category.c (describe_category, describe_category_1)
16843 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
16844 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 16845
048addec 168462001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 16847
048addec 16848 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 16849
048addec
JD
16850 * Makefile.in (lispdir): New variable, referring to build dir.
16851 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 16852
048addec 168532001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 16854
048addec
JD
16855 * w32menu.c (w32_menu_display_help): Actually add the new argument
16856 OWNER.
60a653f1 16857
048addec 168582001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 16859
048addec
JD
16860 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
16861 menu items. From David Ponce <dponce@wanadoo.fr>.
16862 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
16863 conditionally.
f63fd14e 16864 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 16865 help event in the owner frame's keyboard buffer.
60a653f1 16866
048addec
JD
16867 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
16868 (Fx_show_tip): Don't subtract last width from row width.
16869
16870 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
16871 (w32_read_socket): Use EQ to compare frames.
60a653f1 16872
048addec 168732001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 16874
048addec
JD
16875 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
16876 OVERLAPS_P.
60a653f1 16877
048addec 168782001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16879
048addec
JD
16880 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
16881 `gcpro3' and `gcpro4'.
60a653f1 16882
048addec 16883 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 16884
048addec 168852001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16886
048addec 16887 * ccl.c: Use AREF and ASIZE.
60a653f1 16888
048addec 168892001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16890
048addec
JD
16891 * lisp.h (run_hook_list_with_args): Remove.
16892 (LIST_END_P): Fix call to wrong_type_argument.
16893 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 16894
048addec 168952001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16896
048addec
JD
16897 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
16898 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 16899
048addec
JD
16900 * eval.c: Use AREF and ASIZE.
16901 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 16902
048addec
JD
16903 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
16904 which match the end of the file-name.
16905 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
16906 is not a valid env var, but leave it as is instead.
60a653f1 16907
048addec
JD
16908 * keymap.c (access_keymap): Handle t bindings like nil bindings.
16909 Make nil bindings in char-tables transparent.
16910 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 16911
048addec 169122001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 16913
048addec
JD
16914 * textprop.c (set_text_properties_1): Allow START, END in either order.
16915 Do nothing if range is empty.
60a653f1 16916
048addec 16917 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 16918
048addec
JD
16919 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
16920 (clean): Not here.
60a653f1 16921
048addec 169222001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16923
048addec
JD
16924 * textprop.c (set_text_properties_1): Clearly mark that the
16925 interval should not be empty.
60a653f1 16926
048addec
JD
16927 * intervals.c (graft_intervals_into_buffer):
16928 Don't call set_text_properties_1 on an empty interval.
60a653f1 16929
048addec 169302001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 16931
048addec 16932 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 16933
048addec
JD
16934 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
16935 don't lose the data in it.
60a653f1 16936
048addec 169372001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 16938
048addec 16939 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 16940
c62aec78 16941 * buffer.c (Fkill_buffer): Likewise.
60a653f1 16942
c62aec78 16943 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 16944
048addec 169452001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16946
048addec 16947 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 16948
048addec 169492001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 16950
048addec
JD
16951 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
16952 Niemitalo <kon@iki.fi>.
60a653f1 16953
048addec 169542001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 16955
048addec 16956 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 16957
048addec
JD
16958 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
16959 (Fx_show_tip): Block input during frame creation.
16960 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 16961
048addec 169622001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 16963
048addec
JD
16964 * lread.c (Fload): Detect recursive load error for more than 3
16965 nestings of the same file.
16966 (Vrecursive_load_depth_limit): Variable deleted.
16967 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 16968
048addec 169692001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 16970
048addec
JD
16971 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
16972 mouse position if either left or top is not specified.
60a653f1 16973
048addec
JD
16974 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
16975 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
16976 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
16977 (my_create_tip_window): Assign tip_window.
16978 (x_create_tip_frame): Use same defaults as X.
16979 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 16980 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 16981
048addec
JD
16982 * w32term.c (x_after_update_window_line): Doc fix.
16983 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
16984 frames.
16985 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 16986
048addec
JD
16987 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
16988 for all Windowed systems.
60a653f1 16989
048addec 169902001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 16991
048addec
JD
16992 * msdos.c (IT_clear_screen): If the frame's faces are not yet
16993 realized, use the initial screen colors to clear the screen.
60a653f1 16994
048addec 169952001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16996
048addec
JD
16997 * textprop.c (Fset_text_properties): Remove unused variables
16998 `unchanged', `prev_changed', `s' and `len'.
60a653f1 16999
048addec
JD
17000 * search.c (Freplace_match): Remove unused variable `inslen'.
17001
17002 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
17003
170042001-11-22 Jason Rumney <jasonr@gnu.org>
17005
17006 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
17007 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
17008 (my_create_tip_window): New function.
17009 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
17010 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
17011
170122001-11-20 Jason Rumney <jasonr@gnu.org>
17013
17014 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
17015 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
17016
17017 * w32fns.c (Vw32_system_coding_system): Remove.
17018 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
17019
170202001-11-19 Stefan Monnier <monnier@cs.yale.edu>
17021
17022 * fileio.c (Fwrite_region): Move choose_write_coding_system to
17023 after build_annotations.
17024
17025 * syntax.c (describe_syntax): Add dummy arg.
17026 (describe_syntax_1): Update call to describe_vector.
17027
17028 * category.c (describe_category): Add dummy arg.
17029 (describe_category_1): Update call to describe_vector.
17030
17031 * keymap.c (Fdescribe_vector): Add `describer' parameter.
17032 (describe_command, describe_translation): Add dummy second param.
17033 (describe_map): Call elt_describer with two arguments.
17034 (describe_vector_princ): Add `fun' parameter.
17035 Call it instead of the hardcoded `princ'.
17036 (describe_vector): Add arg `args'.
17037 Pass it as a new second argument to elt_describer.
60a653f1 17038
048addec 17039 * keymap.h (describe_vector): Update prototype.
60a653f1 17040
048addec
JD
17041 * frame.c: Don't include keymap.h any more.
17042 (keys_of_frame): Remove.
60a653f1 17043
048addec 17044 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 17045
048addec 17046 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 17047
048addec 170482001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 17049
048addec
JD
17050 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
17051 if defined, 0 otherwise.
17052 (MAP_FAILED): Define if not defined and use it to test mmap failure.
17053 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 17054
048addec 170552001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 17056
048addec 17057 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 17058
048addec 170592001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 17060
048addec
JD
17061 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
17062 (x_draw_bar_cursor): If the background color of the glyph under
17063 the cursor equals the frame's cursor color, use the glyph's
17064 foreground color for drawing the bar cursor.
17065 (x_after_update_window_line): Clear internal border in different
17066 circumstances.
17067 (w32_set_vertical_scroll_bar): Check for width and height > 0.
17068 (w32_draw_relief_rect): Correct relief by 1 pixel.
17069 (x_set_glyph_string_background_width):
17070 Set extends_to_end_of_line_p if the row's fill_line_p is set and
17071 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
17072 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
17073 if cursor_in_non_selected_windows is false.
17074 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
17075 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
17076 Notice if cursor gets overwritten.
17077 (notice_overwritten_cursor): Renamed from
17078 note_overwritten_text_cursor. Rewritten to take glyph widths
17079 into account, and to take X positions as parameters.
17080 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
17081 around call to x_draw_glyphs.
17082 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
17083 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
17084 color to use for image glyph reliefs.
17085 (x_draw_image_relief): Accept zero tool_bar_button_relief.
17086 (glyph_rect): Remove unused variable `area'.
60a653f1 17087
048addec
JD
17088 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
17089 some items.
17090 (x_set_internal_border_width): Set frame garbaged when window
17091 doesn't exist yet.
17092 (Fx_create_frame): Accept zero tool_bar_button_relief.
17093 (x_clear_image_1, four_corners_best, image_background)
17094 (image_background_transparent): New functions.
17095 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
17096 (gs_format): Add `:background' entry.
17097 (lookup_image): Set IMG's background color if specified.
17098 (pbm_load, xbm_load_image, png_load): Set IMG's background field
17099 when appropriate.
17100 (x_clear_image_1): Reset `background_valid' and
17101 `background_transparent_valid' fields.
17102 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
17103 calculating it here. Set IMG's background_transparent field.
17104 (enum xpm_keyword_index): Add XPM_BACKGROUND.
17105 (enum png_keyword_index): Add PNG_BACKGROUND.
17106 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
17107 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
17108 (enum gif_keyword_index): Add GIF_BACKGROUND.
17109 (enum gs_keyword_index): Add GS_BACKGROUND.
17110 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
17111 Pre-calculate image background color where necessary.
17112 (x_create_x_image_and_pixmap, xbm_load, gs_load):
17113 Use display info's n_cbits entry for screen depth.
17114 (Fx_show_tip): Remove unused variables `buffer', `top',
17115 `left', `max_width' and `max_height'.
60a653f1 17116
048addec 17117 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 17118
048addec 171192001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 17120
048addec 17121 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 17122
048addec 171232001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17124
048addec 17125 * frame.c (Fframe_live_p): Doc fix.
60a653f1 17126
048addec 171272001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 17128
048addec
JD
17129 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
17130 (message_dolog_marker3): New static variables hold three markers.
17131 (syms_of_xdisp): Initialize and staticpro them.
17132 (message_dolog): Use message_dolog_marker1..3 instead of
17133 allocating markers each time. Unchain them when done.
60a653f1 17134
048addec 171352001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 17136
048addec 17137 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 17138
048addec 171392001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 17140
048addec 17141 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 17142
048addec 171432001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 17144
048addec 17145 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 17146
048addec 171472001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 17148
048addec 17149 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 17150
048addec 171512001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 17152
048addec
JD
17153 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
17154 with invalid position.
60a653f1 17155
048addec 171562001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 17157
048addec 17158 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 17159
048addec
JD
17160 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
17161 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
17162 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 17163
048addec 17164 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 17165
048addec 171662001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17167
048addec
JD
17168 * fileio.c (build_annotations): Split off the tail.
17169 (build_annotations_2): New fun. Extracted from build_annotations.
17170 (Fwrite_region): Split the call to build_annotations into two
17171 calls to build_annotations and build_annotations_2.
077907d4 17172
048addec 171732001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 17174
048addec
JD
17175 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
17176 clear_waiting_for_input with argument.
1756e2fb 17177
048addec 17178 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 17179
048addec 17180 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 17181
048addec 17182 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 17183
048addec 17184 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 17185
048addec 171862001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 17187
048addec
JD
17188 * fileio.c (choose_write_coding_system): New fun, extracted
17189 from Fwrite_region.
17190 (Fwrite_region): Use it.
fa336b91 17191
048addec
JD
17192 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
17193 (funcall_lambda, run_hook_with_args): Make static and add prototype.
17194 (ml_apply, find_handler_clause): Add prototype.
fa336b91 17195
048addec 171962001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 17197
048addec 17198 * config.in: Add #undef HAVE_COFF_H.
fa336b91 17199
048addec
JD
17200 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
17201 Required for ISC 4.1.
fa336b91 17202
048addec 172032001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 17204
048addec
JD
17205 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
17206 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 17207
048addec 172082001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 17209
048addec
JD
17210 The following changes are made to clean up the various internal
17211 references to the fringes to actually use the term `fringe' for
17212 them. Previously, they were called `flags areas', `bitmap areas',
17213 `left/right side of windows', or implicitly as `flags' or
17214 `bitmaps':
fa336b91 17215
048addec 17216 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 17217 Comments fixed. Use renamed symbols.
06e8f738 17218
f63fd14e 17219 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 17220
048addec
JD
17221 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
17222 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
17223 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 17224
048addec 17225 * msdos.c: Comment fix.
9ce647f4 17226
048addec 17227 * w32fns.c: Use renamed symbols.
9b784ab8 17228
f63fd14e 17229 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
17230 (fringe_bitmap_type): Renamed from bitmap_type.
17231 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
17232 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
17233 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 17234
f63fd14e 17235 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
17236 (fringes_extra): Renamed from flags_areas_extra.
17237 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
17238 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
17239 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
17240 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
17241 (FRAME_X_LEFT_FRINGE_WIDTH):
17242 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
17243 (FRAME_X_RIGHT_FRINGE_WIDTH):
17244 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 17245
048addec 17246 * widget.c: Use renamed symbols.
9f7e52b4 17247
f63fd14e 17248 * window.c: Comment fixes. Use renamed symbols.
048addec 17249 (coordinates-in-window-p): Doc fix.
fa336b91 17250
f63fd14e 17251 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 17252
048addec 17253 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 17254
048addec 17255 * xfns.c: Use renamed symbols.
89512fcd 17256
f63fd14e 17257 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
17258 (fringe_bitmap_type): Renamed from bitmap_type.
17259 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
17260 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
17261 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 17262
f63fd14e 17263 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
17264 (fringes_extra): Renamed from flags_areas_extra.
17265 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
17266 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
17267 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
17268 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
17269 (FRAME_X_LEFT_FRINGE_WIDTH):
17270 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
17271 (FRAME_X_RIGHT_FRINGE_WIDTH):
17272 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
17273
172742001-11-15 Jason Rumney <jasonr@gnu.org>
17275
17276 * w32menu.c (add-menu-item): Make help_echo and radio buttons
17277 work for most menu items. From David Ponce
17278 <david.ponce@wanadoo.fr>.
17279
172802001-11-15 Gerd Moellmann <gerd@gnu.org>
17281
17282 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
17283 Some x_set_* function expect to be called even if old and new
17284 value are equal.
17285
17286 * xdisp.c (build_desired_tool_bar_string): Accept zero
17287 tool_bar_button_relief.
17288
17289 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
17290
17291 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
17292
17293 * xterm.c (x_draw_bar_cursor): If the background color of the
17294 glyph under the cursor equals the frame's cursor color, use
17295 the glyph's foreground color for drawing the bar cursor.
17296
17297 * dispnew.c (direct_output_forward_char): Fix character/byte
17298 position comparison.
7d18891d 17299
048addec 173002001-11-15 Miles Bader <miles@gnu.org>
d2936d21 17301
048addec
JD
17302 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
17303 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
17304 Update arguments to find_field.
17305 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
17306 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
17307 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
17308 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 17309
048addec 173102001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 17311
048addec 17312 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 17313
048addec
JD
17314 * dispextern.h (image_background, image_background_transparent):
17315 Conditionalize on HAVE_X_WINDOWS.
7d18891d 17316
048addec 173172001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 17318
048addec 17319 * print.c (Fprin1_to_string): Doc fix.
7d18891d 17320
048addec 17321 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 17322
048addec 17323 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 17324
048addec 17325 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 17326
048addec 17327 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 17328
048addec 17329 * eval.c (syms_of_eval): Doc fix.
7d18891d 17330
048addec 17331 * coding.c (syms_of_coding): Doc fix.
7d18891d 17332
048addec 17333 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 17334
048addec 17335 * dispnew.c (syms_of_display): Doc fix.
9474c847 17336
048addec 17337 * category.c (Fget_unused_category): Doc fix.
9474c847 17338
048addec 17339 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 17340
048addec 173412001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 17342
048addec 17343 * print.c (prin1, print): Doc fix.
e3059a5d 17344
048addec 173452001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 17346
048addec
JD
17347 * fontset.h: Remove declarations of variables
17348 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 17349
048addec
JD
17350 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
17351 `Vclip_large_size_font'.
eae936e2 17352
048addec 173532001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 17354
048addec 17355 * w32fns.c: Doc fix.
ddb67bdc 17356
048addec 173572001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 17358
048addec 17359 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 17360
048addec 17361 * fns.c: Doc fix.
6e1b91d7 17362
048addec 17363 * emacs.c: Doc fix.
1c1d3d69 17364
048addec 17365 * coding.c: Doc fix.
1c1d3d69 17366
048addec
JD
17367 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
17368 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
17369 `new style' [w/`doc:' keyword].
b6f4c7ba 17370
048addec 173712001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 17372
048addec
JD
17373 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
17374 LeaveNotify events. Only FocusIn and FocusOut do that now.
17375 (x_display_and_set_cursor): Do display hollow cursors in active
17376 minibuffer windows when they are not selected.
b6f4c7ba 17377
048addec 173782001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 17379
048addec 17380 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
17381 * w32term.c: Change doc-string comments to `new style'
17382 [w/`doc:' keyword]. Doc fixes.
a89f435d 17383
048addec
JD
17384 * w32fns.c: Don't define max.
17385 (Fx_open_connection): Only execute once.
a4cd0cd7 17386
048addec 173872001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 17388
048addec
JD
17389 * ccl.c: Change macros to use do-while block instead of if-else.
17390 Use braces to follow GNU Coding Standards.
eafb659a 17391
048addec 173922001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 17393
048addec 17394 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 17395
048addec 17396 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 17397
048addec
JD
17398 * insdel.c (replace_range): Use adjust_markers_for_replace
17399 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 17400
78819ebb 17401 * intervals.h (set_text_properties, set_text_properties_1): Declare.
a4cd0cd7 17402
048addec
JD
17403 * textprop.c (set_text_properties_1): New subroutine
17404 broken out of set_text_properties.
17405 (set_text_properties): Use set_text_properties_1.
91823618 17406
048addec
JD
17407 * intervals.c (graft_intervals_into_buffer):
17408 Use set_text_properties_1 to clear out properties.
91823618 17409
048addec
JD
17410 * search.c (Freplace_match): Use replace_range to insert
17411 and delete. Don't request property inheritance from
17412 surrounding text.
86928dfb 17413
048addec 174142001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 17415
048addec 17416 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 17417 vertical fonts. Allow them if face name is explicitly specified.
048addec 17418 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 17419
048addec 174202001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 17421
048addec
JD
17422 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
17423 instead of malloc/free.
a78e0303 17424
048addec 174252001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 17426
048addec
JD
17427 * xfaces.c (merge_face_vectors): Use braces to follow GNU
17428 Coding Standards.
17429 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 17430
048addec 17431 * buffer.c (Fbury_buffer): Likewise.
0c99b139 17432
048addec 17433 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 17434
048addec
JD
17435 * coding.c (encode_coding): Use precomputed value of `src'.
17436 (encode_coding): Remove unused variable `src_end'.
17437 (code_convert_region): Remove unused variables `count'.
830ddd77 17438
048addec 174392001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 17440
048addec
JD
17441 * w32term.c (x_display_and_set_cursor): Do not move system caret
17442 if cursor_glyph is NULL.
55c6d645 17443
048addec 174442001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 17445
048addec 17446 * keymap.c (access_keymap): Fix compilation error.
5de38842 17447
048addec 174482001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 17449
048addec 17450 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 17451
048addec 174522001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 17453
048addec
JD
17454 * intervals.c (graft_intervals_into_buffer):
17455 Remove #ifdef'd-out code.
17456 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 17457
048addec
JD
17458 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
17459 code (eval-current-buffer).
17460 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 17461
048addec 174622001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 17463
048addec 17464 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 17465
048addec 174662001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 17467
048addec 17468 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 17469
048addec
JD
17470 * keyboard.c (make_lispy_event): Check integerness and fix
17471 Lisp_Object/int mixup.
17893c65 17472
048addec 174732001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 17474
048addec 17475 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 17476
048addec
JD
17477 * fontset.c (fontset_font_pattern): Remove unused variable
17478 `family_registry'.
d5360cc7 17479
048addec 17480 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 17481
048addec 174822001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 17483
048addec 17484 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 17485
048addec
JD
17486 * buffer.c (Fkill_buffer): Don't delete auto save file
17487 if buffer is modified.
d9d54213 17488
048addec 174892001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 17490
048addec
JD
17491 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
17492 CHECK_NUMBER_CDR.
b116830b 17493
048addec 174942001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 17495
048addec 17496 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 17497
048addec 174982001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 17499
048addec 17500 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 17501
048addec 175022001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 17503
048addec 17504 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 17505
048addec 175062001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 17507
048addec
JD
17508 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
17509 the program image directly.
982f6c7e 17510
048addec 175112001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 17512
048addec 17513 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 17514
048addec 175152001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 17516
048addec
JD
17517 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
17518 and CHECK_BUFFER.
d31053f9 17519
048addec
JD
17520 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
17521 (record_char): Likewise.
d31053f9 17522
048addec
JD
17523 * keyboard.c (make_lispy_event): Don't insist a drag event must
17524 move to a different buffer position. Instead, check for moving at
17525 least double_click_fuzz.
982f6c7e 17526
048addec 17527 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 17528
048addec 17529 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 17530
048addec
JD
17531 * indent.c (current_column_1, Fmove_to_column): Separate the code
17532 for display-table glyphs from the code for buffer text, to fix
17533 bugs in the former.
830047fd 17534
048addec 175352001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 17536
048addec
JD
17537 * buffer.c (Fbuffer_local_value): New function.
17538 (syms_of_buffer): Defsubr it.
2df5238c 17539
048addec
JD
17540 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
17541 value of `cursor-in-non-selected-windows'.
4e397688 17542
048addec
JD
17543 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
17544 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
17545 (syms_of_xdisp): Initialize it.
48b0f3ae 17546
048addec 175472001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 17548
048addec 17549 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 17550
048addec
JD
17551 * coding.c: Change doc-string comments to `new style' [w/`doc:'
17552 keyword].
3ecaf7e5 17553
048addec
JD
17554 * eval.c (top_level_value, top_level_set): Remove commented and
17555 #ifdef'd-out code.
17556 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 17557
048addec 175582001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 17559
048addec 17560 * xfns.c: Include unistd.h, if it exists.
8db2e33b 17561
048addec 17562 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 17563
048addec 17564 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 17565
048addec 175662001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 17567
048addec
JD
17568 * lisp.h (CHECK_STRING_CAR): New macro.
17569 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
17570 treating XCAR and XCDR as lvalues.
17571 (openp): Use CHECK_STRING_CAR.
17572 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 17573
048addec 175742001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 17575
048addec
JD
17576 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
17577 (SIGMASKTYPE): Define.
1b1acc13 17578
048addec 17579 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 17580
048addec 175812001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 17582
048addec
JD
17583 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
17584 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
17585 Fix typos in comments.
6cb16f95 17586
048addec
JD
17587 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
17588 and #ifdef'd-out code.
17589 Fix and reindent comments.
6cb16f95 17590
048addec 17591 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 17592
048addec
JD
17593 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
17594 argument `i' in macros.
6cb16f95 17595
048addec
JD
17596 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
17597 `i' in macros.
7e9d3c2f 17598
048addec
JD
17599 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
17600 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
17601 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
17602 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
17603 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
17604 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
17605 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
17606 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
17607 in macros.
7e9d3c2f 17608
048addec
JD
17609 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
17610 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
17611 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
17612 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
17613 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
17614 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
17615 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
17616 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
17617 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
17618 (remove unused second argument).
7e9d3c2f 17619
048addec 176202001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 17621
048addec
JD
17622 * syntax.c (describe_syntax): New wrapper.
17623 (Finternal_describe_syntax_value): Rename from describe_syntax.
17624 Don't insert space at front and \n at the end.
17625 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 17626
048addec
JD
17627 * regex.c (re_wctype): Try to fix some warnings.
17628 (regcomp, regexec): Don't forget the __restrict.
9ba48103 17629
048addec 176302001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 17631
048addec 17632 * textprop.c (Fget_char_property): Doc fix.
9ba48103 17633
048addec 176342001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 17635
048addec 17636 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 17637
048addec 17638 * data.c (Fsetq_default): Ditto.
c22e59e1 17639
048addec 17640 * callint.c (Finteractive): Ditto.
9271ed2c 17641
048addec 176422001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 17643
048addec
JD
17644 * macros.c: Don't include keymap.h any more.
17645
176462001-11-01 Richard M. Stallman <rms@gnu.org>
17647
17648 * data.c (Fmake_local_variable): Doc fix.
17649
17650 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
17651 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 17652
048addec 17653 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
17654 bindings along with or instead of the buffer local map.
17655 Make the overriding maps override what they should.
17656
f00691a3 176572001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
17658
17659 * window.c (grow_mini_window): Fix typo in comment.
17660
27188d11
GM
176612001-11-01 Gerd Moellmann <gerd@gnu.org>
17662
7b49b9d2
GM
17663 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
17664 (XTset_vertical_scroll_bar): Likewise.
17665
43f7c3ea
GM
17666 * xfns.c (x_build_heuristic_mask): Use four_corners_best
17667 instead of IMAGE_BACKGROUND.
c22e59e1 17668
b350c2e5
GM
17669 * xfns.c (four_corners_best): Reindent.
17670
c22e59e1 17671 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
17672 Handle :box so that it is possible to specify sexprs.
17673
bf00d461
EZ
176742001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
17675
17676 * s/hpux11.h: New file.
17677
f00691a3 176782001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 17679
2b209b97
PJ
17680 * emacs.c (USAGE1): Show command line option --no-window-system
17681 instead of --no-windows in usage.
17682 (standard_args): Rename --no-windows to --no-window-system.
17683 (bug_reporting_address): Follow Emacs coding conventions.
17684
9dbc9081
PJ
17685 * eval.c (Fcommandp): Doc fix.
17686 Change doc-string comments to `new style' [w/`doc:' keyword].
17687
4e10df59
PJ
17688 * frame.c (Fframe_live_p): Doc fix.
17689
17690 * buffer.c (selective-display-ellipses): Doc fix.
17691
dd387b25
GM
176922001-10-31 Gerd Moellmann <gerd@gnu.org>
17693
fe957e65
GM
17694 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
17695
dd387b25
GM
17696 * xfaces.c (realize_x_face): If C is not a single-byte character,
17697 set the face's colors_copied_bitwise_p instead of the defaulted_p
17698 members which have a different meaning.
17699 (free_face_colors): Do nothing for a face whose colors have been
17700 copied bitwise.
17701
c22e59e1 17702 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 17703
f00691a3 177042001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 17705
687784e8
PJ
17706 * marker.c, mocklisp.c: Change doc-string comments to `new style'
17707 [w/`doc:' keyword].
2e1280f8 17708
b9d9a9b9
GM
177092001-10-31 Gerd Moellmann <gerd@gnu.org>
17710
17711 * fns.c (require_unwind): Return Lisp_Object.
17712
f00691a3 177132001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 17714
fa1361cb
PJ
17715 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
17716 (last-input-char): Revert doc-string to be the same as the
17717 doc-string of `last-input-event'.
17718
6c465a15 17719 * xdisp.c: Fix typos in comments.
48400103 17720
eafa3196
GM
177212001-10-31 Gerd Moellmann <gerd@gnu.org>
17722
17723 * window.c (grow_mini_window): Handle case that the root
17724 window is already smaller than the nominal mininum height.
17725
747d3f2a
SM
177262001-10-30 Stefan Monnier <monnier@cs.yale.edu>
17727
bf9bb76f
SM
17728 * emacs.c (main): Don't call keys_of_macros any more.
17729
17730 * lisp.h (keys_of_macros): Remove.
17731
17732 * macros.c (keys_of_macros): Remove.
17733
747d3f2a
SM
17734 * xfaces.c (Fface_attribute_relative_p): Declare args.
17735
5e905a57
JR
177362001-10-30 Jason Rumney <jasonr@gnu.org>
17737
17738 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
17739 (enum_font_cb2): Ignore fonts with vertical orientation.
17740
3a426197
RS
177412001-10-30 Richard M. Stallman <rms@gnu.org>
17742
17743 * keyboard.c (Finput_pending_p): Doc fix.
17744
a742d646
GM
177452001-10-30 Gerd Moellmann <gerd@gnu.org>
17746
259cf6bc
GM
17747 * xterm.c (x_after_update_window_line): Don't run the code
17748 clearing in borders for rows whose visible height is 0.
17749
3f99f948
GM
17750 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
17751 resized_p flag is set. If not set, use the much less flickering
17752 method previously used.
17753
17754 * dispnew.c (change_frame_size_1): Set frame's resized_p.
17755
17756 * frame.h (struct frame) <resized_p>: New member.
17757
b4a3be43
GM
17758 * lread.c (to_multibyte): Ensure read_buffer is at least twice
17759 as large as the number of bytes to convert.
747d3f2a 17760
a742d646
GM
17761 * lread.c (to_multibyte): New function.
17762 (read1): Use it.
17763
cacbb9e9
EZ
177642001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
17765
17766 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
17767
99cb6b2f
GM
177682001-10-30 Gerd Moellmann <gerd@gnu.org>
17769
327f42ee 17770 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
17771 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
17772 if the row's fill_line_p is set and drawing the last glyph with
17773 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 17774
99cb6b2f
GM
17775 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
17776
8e8223e2
SM
177772001-10-29 Stefan Monnier <monnier@cs.yale.edu>
17778
17779 * xmenu.c: Include coding.h and charset.h.
17780 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
17781 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
17782 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
17783 Explicitly set wv->help. Use `TRUE' rather than `True'.
17784 (menu_help_callback): Use empty_string.
17785
17786 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
17787 (Fx_popup_dialog): Explicitly init f.
17788 (w32_menu_display_help): Use empty_string.
17789
4d083a8f
RS
177902001-10-29 Richard M. Stallman <rms@gnu.org>
17791
b2304472
RS
17792 * fns.c (Frequire): Detect recursive try to require the same
17793 feature 3 or more levels deep, and get error.
17794 (require_unwind): New subroutine.
17795 (require_nesting_list): New variable.
17796 (syms_of_fns): Init and staticpro it.
17797
4d083a8f
RS
17798 * print.c (print_object): Clarify indication of insertion type.
17799
2fe41216
EZ
178002001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
17801
90480000
EZ
17802 * coding.c (syms_of_coding): Document that locale-coding-system is
17803 used for decoding input on X.
17804
2fe41216
EZ
17805 * window.c (Fscroll_left, Fscroll_right): Doc fix.
17806
f00691a3 178072001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
17808
17809 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
17810 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
17811
60ebcfe8
GM
178122001-10-29 Gerd Moellmann <gerd@gnu.org>
17813
9a7bdceb
GM
17814 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
17815 use NO_CURSOR if cursor_in_non_selected_windows is false.
17816
3f08fcd2
GM
17817 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
17818 the slant attribute if FRAME is t.
17819
0ccfdad2
GM
17820 * xfns.c (x_set_internal_border_width): Set frame garbaged
17821 when X window doesn't exist yet.
17822
ef253080
GM
17823 * xterm.c (x_after_update_window_line): Clear internal border
17824 in different circumstances.
b116830b 17825
60ebcfe8
GM
17826 * xterm.c (XTread_socket) <KeyPress>: Don't use
17827 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
17828 <handa@etl.go.jp>.
17829
73d25f9c
EZ
178302001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
17831
17832 * m/ibms390.h: New file. From Adam Thornton
17833 <athornton@sinenomine.net>.
17834
cac1daf0
GM
178352001-10-28 Gerd Moellmann <gerd@gnu.org>
17836
053b3256 17837 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 17838
cac1daf0
GM
17839 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
17840 a loop counter.
17841
f00691a3 178422001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 17843
f9711de4 17844 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 17845
4707d2d0
PJ
17846 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
17847 keyword].
17848 Fix typos in comments.
b116830b 17849
d883731c
PJ
17850 * emacs.c (bug_reporting_address): New function.
17851 Use it when displaying usage message.
17852
04012254
PJ
17853 * minibuf.c (read_minibuf): Remove unused external declaration of
17854 variable `Qread_only'.
17855
13b1a09c
PJ
17856 * keymap.c (access_keymap): Remove unused variable `charset'.
17857
5bbf4378
MB
178582001-10-28 Miles Bader <miles@gnu.org>
17859
17860 * xfaces.c (merge_face_heights): Handle TO being relative as well.
17861 Remove #ifdef'd-out code.
17862 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
17863 (syms_of_xfaces): Initialize them.
17864
1ce1e4ee
JR
178652001-10-27 Jason Rumney <jasonr@gnu.org>
17866
17867 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
17868 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
17869 position using the system caret.
17870
17871 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
17872 (w32_system_caret_height, w32_system_caret_x)
17873 (w32_system_caret_y): New variables for tracking system caret.
17874 (w32_initialize): Initialize them.
c2d53558 17875 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 17876
c2d53558
SM
17877 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
17878 New messages types.
1ce1e4ee
JR
17879
17880 * w32term.c (note_mouse_highlight): Clear old help_echo.
17881
f00691a3 178822001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 17883
bb4600a4
PJ
17884 * xterm.c: Fix typo in a comment.
17885
7db35a48
PJ
17886 * emacs.c: Fix typos in comments.
17887 Remove unnecessary spaces.
17888 Change doc-string comments to `new style' [w/`doc:' keyword].
17889 (USAGE2): Fix typos in usage string.
17890
a7248e4f
PJ
17891 * xterm.c: Fix typo in a comment.
17892
4e30ce42
PJ
17893 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
17894 emacs.c.
17895
62725a92
GM
178962001-10-27 Gerd Moellmann <gerd@gnu.org>
17897
798dbe1f 17898 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 17899 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
17900 farther backward when target_y was not reached.
17901
62725a92
GM
17902 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
17903 Display errno only if non-zero.
17904 (sound_warning): New function.
17905 (vox_configure): Don't treat failing to set sample rate as error.
17906 (various places): Improve error messages.
17907
d4e34d24
EZ
179082001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
17909
944e6f60
EZ
17910 * fileio.c (Faccess_file): Run the argument filename through
17911 Fexpand_file_name, before using it.
17912
d4e34d24
EZ
17913 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
17914 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
17915
38d2af0c
GM
179162001-10-26 Gerd Moellmann <gerd@gnu.org>
17917
da80a8d5
GM
17918 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
17919
38d2af0c
GM
17920 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
17921 Fix clearing in the case of scroll bars on the right.
c2d53558 17922
45de4a6f 179232001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
17924
17925 * w32gui.h (XImage): Add a dummy typedef.
17926
fbd5ceb2
GM
179272001-10-26 Gerd Moellmann <gerd@gnu.org>
17928
c2d53558 17929 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 17930
b23236fb
EZ
179312001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
17932
17933 * frame.c (Fframe_parameter): Fix last change.
17934
5d991fc4
EZ
17935 * fileio.c: Revert last change (which removed old commented-out
17936 version of expand-file-name). Add a comment that explains why
17937 this old version should not be removed.
17938
879eadc3
GM
179392001-10-25 Gerd Moellmann <gerd@gnu.org>
17940
75700ff2
GM
17941 * frame.c (Fframe_parameter): Fix a bug whereby some
17942 ``artificial'' frame parameters, like `minibuffer' were not
17943 obtained by calling Fframe_parameters.
17944
dfe92a6a
GM
17945 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
17946 cursor differently.
17947
879eadc3
GM
17948 * xdisp.c (move_it_vertically_backward): Compute line height
17949 differently. Add heuristic to try to be more compatible to 20.x.
17950
e1010ebe
SM
179512001-10-25 Stefan Monnier <monnier@cs.yale.edu>
17952
d73a471b
SM
17953 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
17954
d6da5a06
GM
17955 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
17956 boolean.
e1010ebe 17957
f66bd220
MB
179582001-10-25 Miles Bader <miles@gnu.org>
17959
17960 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
17961 BG is a pointer to a structure, not a structure.
17962 (gif_format, png_format): Add missing commas.
17963
d436d538
RS
179642001-10-24 Richard M. Stallman <rms@gnu.org>
17965
17966 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 17967 (syms_of_xfaces): Defsubr it.
d436d538 17968
f00691a3 179692001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
17970
17971 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
17972 variable `area'.
17973
f00691a3 179742001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 17975
c2d53558 17976 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 17977
e2a57b34
MB
179782001-10-25 Miles Bader <miles@gnu.org>
17979
17980 * dispextern.h (struct image): Add `background',
17981 `background_valid', and `background_transparent' fields.
17982 (image_background, image_background_transparent): New declarations.
17983 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
17984 * xfns.c (image_background, image_background_transparent)
17985 (four_corners_best): New functions.
c2d53558 17986 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
17987 (gs_format): Add `:background' entry.
17988 (lookup_image): Set IMG's background color if specified.
17989 (pbm_load, xbm_load_image, png_load): Set IMG's background field
17990 when appropriate.
17991 (x_clear_image_1): Reset `background_valid' and
17992 `background_transparent_valid' fields.
17993 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
17994 calculating it here. Set IMG's background_transparent field.
17995 (enum xpm_keyword_index): Add XPM_BACKGROUND.
17996 (enum png_keyword_index): Add PNG_BACKGROUND.
17997 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
17998 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
17999 (enum gif_keyword_index): Add GIF_BACKGROUND.
18000 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 18001 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
18002 Pre-calculate image background color where necessary.
18003 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
18004 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
18005 color to use for image glyph reliefs.
18006
b547b6e8
GM
180072001-10-24 Gerd Moellmann <gerd@gnu.org>
18008
d9e3b8c6
GM
18009 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
18010 in full-width rows.
c2d53558 18011
b547b6e8
GM
18012 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
18013 Fix clearing of area not covered by scroll bar.
18014
f00691a3 180152001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
18016
18017 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
18018 and `real_start'.
c2d53558 18019 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
18020 (glyph_rect): Remove unused variable `area'.
18021
76cb5e06
GM
180222001-10-24 Gerd Moellmann <gerd@gnu.org>
18023
bdbdebff 18024 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
18025
18026 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
18027 (row_containing_pos): Take additional argument DY.
18028 Treat rows ending in middle of char differently.
62e33982
GM
18029 (display_line): Handle tabs on window systems differently.
18030
18031 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
18032 with additional argument.
18033
18034 * dispextern.h (row_containing_pos): Adjust prototype.
18035
76cb5e06
GM
18036 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
18037 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
18038 (try_window_id, try_window_reusing_current_matrix)
18039 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 18040 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 18041
f00691a3 180422001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 18043
c9e60620
PJ
18044 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
18045 gnuemacs).
18046 (HAVE_BOXES): Fix typo in comment.
18047 (push_menu_pane): Fix typo in comment.
18048
3b552d56
PJ
18049 * xdisp.c: (display_prop_string_p): Remove unused local declaration
18050 of `Qwhen'.
18051 (single_display_prop_string_p): Remove unused local declarations
18052 of `Qwhen' and `Qmargin'.
18053 (string_buffer_position): Remove unused variable `around'.
18054 (store_frame_title): Remove unused variable `width'.
18055
15c565ac
PJ
18056 * window.c: Don't define max.
18057 (coordinates_in_window): Remove unused variable `uy'.
18058
a8818eb9
PJ
18059 * widget.c: Don't define max.
18060
996fee11
PJ
18061 * process.c: Don't define max.
18062 (create_process): Remove unused variable `buffer'.
18063
496e1a5b
GM
180642001-10-23 Gerd Moellmann <gerd@gnu.org>
18065
c2d53558 18066 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 18067
5905ae8b
EZ
180682001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
18069
18070 * xfaces.c (Finternal_set_lisp_face_attribute)
18071 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
18072 frame is on a windowed display.
18073
24db49fb
GM
180742001-10-23 Gerd Moellmann <gerd@gnu.org>
18075
c2d53558
SM
18076 * dispnew.c (sync_window_with_frame_matrix_rows):
18077 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
18078 of marginal areas.
18079
c2d53558 18080 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 18081
f0487f05
EZ
180822001-10-23 Andreas Schwab <schwab@suse.de>
18083
18084 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
18085 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
18086
f0a48a01
GM
180872001-10-23 Gerd Moellmann <gerd@gnu.org>
18088
c2d53558 18089 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
18090 REAL_END. Notice if cursor gets overwritten.
18091 (notice_overwritten_cursor): Take X positions as parameters.
18092 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
18093 around call to x_draw_glyphs.
18094
f00691a3 180952001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 18096
fc11dff0
PJ
18097 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
18098 instead of C) and usage.
a50a10a0 18099
fc11dff0
PJ
18100 * editfns.c (char-to-string): Fix argument names (use CHAR instead
18101 of C) and usage.
a50a10a0
PJ
18102
18103 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
18104 `left', `max_width' and `max_height'.
18105
8738febd
GM
181062001-10-23 Gerd Moellmann <gerd@gnu.org>
18107
18108 * xdisp.c (display_line): For a tab continued to the next line,
18109 set row's ends_in_middle_of_char_p.
18110
653c329b
GM
181112001-10-22 Gerd Moellmann <gerd@gnu.org>
18112
18113 * xdisp.c (display_line): Fix computation of continuation lines
18114 width for TABs.
18115
f00691a3 181162001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 18117
7ba51063
PJ
18118 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
18119 `Qlaplace'.
18120
f958c5ac
PJ
18121 * fileio.c: Remove unused code.
18122
eb360291
MB
181232001-10-22 Miles Bader <miles@gnu.org>
18124
18125 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
18126 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
18127 Remove `DOC_STRINGS_IN_COMMENTS' cases.
18128
98515cf0
JR
181292001-10-21 Jason Rumney <jasonr@gnu.org>
18130
18131 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
18132
93026d88
EZ
181332001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
18134
18135 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
18136 (Finsert_string): Avoid the multi-line string literals warning.
18137
c9a95b79
MB
181382001-10-22 Miles Bader <miles@gnu.org>
18139
18140 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
18141 (Fdocumentation): Don't use it.
18142 (syms_of_doc): Don't initialize it.
18143
18144 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
18145 * print.c (Fwith_output_to_temp_buffer): Likewise.
18146 * window.c (Fsave_window_excursion): Likewise.
c2d53558 18147 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 18148 (Fsave_restriction): Likewise.
c2d53558
SM
18149 * eval.c (Frun_hooks, Frun_hook_with_args)
18150 (Frun_hook_with_args_until_failure)
18151 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
18152 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
18153 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
18154 (Funwind_protect, Fcondition_case): Likewise.
18155 * coding.c (Ffind_operation_coding_system): Likewise.
18156 * keyboard.c (Ftrack_mouse): Likewise.
18157
a3b10252
MB
181582001-10-21 Miles Bader <miles@gnu.org>
18159
c2d53558 18160 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
18161 (Fmake_hash_table): Add usage: string to doc string.
18162 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 18163 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
18164 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
18165 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
18166 (Fml_prefix_argument_loop): Likewise.
18167
f00691a3 181682001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 18169
c2d53558 18170 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 18171
c6f73eec
PJ
18172 * sysdep.c (init_sys_modes): Change doc-string comments to `new
18173 style' [w/`doc:' keyword].
18174
18175 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
18176 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
18177 comments to `new style' [w/`doc:' keyword].
18178
3cf3436e
JR
181792001-10-21 Jason Rumney <jasonr@gnu.org>
18180
18181 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
18182
c169b8f1
JR
18183 * w32term.c (remember_mouse_glyph): New function.
18184 (w32_mouse_position): Use it.
18185 (note_mouse_movement): If the mouse moved off the glyph, remember
18186 its new position.
c2d53558 18187
4fdd691b
JR
18188 * w32term.h (struct w32_output): Correct spelling of x_compatible.
18189 (w32_display_info): Add mouse_face_overlay.
18190
c169b8f1
JR
18191 * w32term.c (notice_overwritten_cursor): Renamed from
18192 note_overwritten_text_cursor. Rewritten to take glyph widths into
18193 account.
18194 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
18195 (fast_find_string_pos): New function.
18196 (fast_find_position): Return the correct vpos. Add parameter
18197 STOP. In the final row, stop before glyphs having STOP as object.
18198 Don't consider glyphs that are not from a buffer.
18199 (fast_find_position) [0]: Add a presumably more correct version
18200 for after 21.1.
18201 (expose_window_tree, expose_frame): Don't compute intersections here.
18202 (expose_window): Do it here instead.
18203 (expose_window_tree, expose_window, expose_line): Return 1 when
18204 overwriting mouse-face.
18205 (expose_window): If W is the window currently being updated, mark
18206 the frame garbaged.
18207 (expose_frame): If mouse-face was overwritten, redo it.
18208 (x_use_underline_position_properties): New variable.
18209 (syms_of_xterm): DEFVAR_BOOL it.
18210 (x_draw_glyph_string): Add comment to use it in future.
18211 (x_draw_glyph_string): Restore clipping after drawing box.
18212 Fix a computation of the underline position.
18213 (w32_get_glyph_string_clip_rect): Minor cleanup.
18214 (x_fill_stretch_glyph_string): Remove an assertion.
18215 (x_produce_glyphs): Don't convert multibyte characters
18216 to unibyte characters in unibyte buffers.
18217 (cursor_in_mouse_face_p): New function.
18218 (x_draw_stretch_glyph_string): Use it to choose a different GC
18219 when drawing a cursor within highlighted text. Don't draw
18220 background again if it has already been drawn.
18221 (x_draw_glyph_string_box): Don't draw a full-width
18222 box just because the glyph row's full_width_p flag is set.
18223 (x_draw_glyphs): Fix computation of rightmost x for
18224 full-width rows.
18225 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
18226 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 18227 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
18228 (x_update_window_end): Handle overwritten mouse face
18229 also for tool bar windows.
18230 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
18231 DRAW is DRAW_IMAGE_RAISED.
18232 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
18233 actually redrawn. Make the function static.
18234 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
18235 optimize away highlighting if we pass over that same overlay again.
18236 (note_mouse_highlight): Call mouse_face_overlay_overlaps
18237 to detect a case where we have to highlight a different region
18238 despite not having left the currently highlighted region.
18239 Set mouse_face_overlay in the x_display_info. Avoid changing the
18240 mouse pointer shape when show_mouse_face has already done it, or
18241 there is no need. Handle mouse-face and help-echo in strings.
18242 (glyph_rect): New function.
18243 (w32_mouse_position): Use it to raise the threshold for mouse
18244 movement event generation.
18245 (w32_initialize_display_info): Initialize the x_display_info's
18246 mouse_face_overlay.
18247 (w32_set_vertical_scroll_bar): Don't clear a zero height
18248 or width area.
18249 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
18250 a widget to zero height.
18251
3cf3436e 18252 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 18253 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
18254 equivalents in menu_items.
18255 (w32_menu_show): Don't overwrite an item's name with its key
18256 description in case the description is a multibyte string.
18257 (single_submenu): Some cleanup.
18258
18259 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
18260 (postprocess_image): New function.
18261 (lookup_image): Call it for all image types except PostScript.
18262 (x_kill_gs_process): Call postprocess_image.
18263 (tiff_error_handler, tiff_warning_handler): New functions.
18264 (tiff_load): Install them as handlers.
18265 (x_kill_gs_process): Recognize if someone has cleared the image
18266 cache under us.
18267 (valid_image_p): Protect better against invalid image
18268 specifications. Previous code could signal an error.
18269 (Fx_hide_tip, Fshow_tip): Doc fix.
18270 (Fv_max_tooltip_size): New variable.
18271 (syns_of_xfns): DEFVAR_LISP it.
18272 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 18273 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
18274 window_width. Use a maximum tooltip size specified by
18275 Vx_max_tooltip_size, if that has valid contents.
18276 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
18277 Make sure the tooltip is completely visible.
18278 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
18279 (Fx_create_frame): Adjust the frame's height for presence
18280 of the tool bar before calling x_figure_window_size.
18281 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
18282 when the window gets smaller.
18283 (x_set_foreground_color): Set frame's cursor_pixel.
18284 (x_set_foreground_color, x_set_background_color): Cleaned up.
18285 (x_set_font): Handle case of x_new_fontset returning the same name
18286 as before, although there was a change in fontsets.
18287
386ca361
MB
182882001-10-21 Miles Bader <miles@gnu.org>
18289
c2d53558 18290 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
18291 (Flogxor): Add usage: string to doc string.
18292 * charset.c (Fstring): Likewise.
18293 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
18294 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
18295
f00691a3 182962001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 18297
03be2694
PJ
18298 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
18299
18300 * alloc.c: Reindent DEFUNs with doc: keywords.
18301
18302 * abbrev.c (Finsert_abbrev_table_description): Reindent.
18303
14ff1ee0
PJ
18304 * frame.c: Change doc-string comments to `new style' [w/`doc:'
18305 keyword].
18306
2f147815 18307See ChangeLog.9 for earlier changes.
6922b018
KH
18308
18309;; Local Variables:
49b3bd82 18310;; coding: iso-2022-7bit
6922b018 18311;; End:
2a34a036 18312
2f147815 18313 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
18314 Copying and distribution of this file, with or without modification,
18315 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
18316
18317;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4