(Enabling Mouse-1 to Follow Links): Rewrite.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
57a230b1
KS
12005-01-10 Kim F. Storm <storm@cua.dk>
2
3 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
4
5 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
6 Callers changed.
7 Add support to merge with lisp face id too (if face_name is t).
8
9 * xdisp.c (get_next_display_element, next_element_from_display_vector):
10 Don't lookup lface_id from display table glyphs here; instead use
11 merge_faces to merge the lisp face id into current face.
12
8ab2c119
KS
132005-01-09 Kim F. Storm <storm@cua.dk>
14
15 * dispextern.h (struct it): New member dpvec_face_id.
16 (merge_into_realized_face): Add prototype.
17
18 * xfaces.c (merge_into_realized_face): New function. Used to
19 merge escape-glyph face or face from display table into current face.
20
21 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
22 (syms_of_xdisp): DEFVAR_LISP it.
23 (escape_glyph_face): Remove var.
24 (redisplay_window): Don't initialize it.
25 (setup_for_ellipsis, get_next_display_element):
26 Set it->dpvec_face_id to -1.
27 (get_next_display_element): Test Vshow_nonbreak_escape.
28 Do not setup escape_glyph_face.
29 Properly merge escape-glyph face or face from display table with
30 current face for escape and control characters. Set
31 it->dpvec_face_id to relevant face id instead of adding it to each
32 element of display vector.
33 (next_element_from_display_vector): If it->dpvec_face_id is set,
34 use that instead of lface_id from glyph itself.
35
e0910857
JD
362005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
37
38 * xterm.h (struct x_output): New member, toolbar_detached.
39
40 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
41 38.
42 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
43 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
44 (xg_create_tool_bar): Initialize toolbar_detached.
45 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
46 toolbar_detached is zero.
47
ff59904a
JD
482005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
49
9b85e63d
JD
50 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
51 gtk_menu_popup if not for_click, so callbacks for the menu are called.
52
ff59904a
JD
53 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
54 (xg_tool_bar_callback, xg_tool_bar_help_callback)
55 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler
56 warning.
57
58 * xselect.c (x_get_foreign_selection, x_fill_property_data)
8ab2c119 59 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
ff59904a
JD
60 XFLOAT_DATA to get extract number from Lisp object.
61
f9a23a6f
KS
622005-01-07 Kim F. Storm <storm@cua.dk>
63
64 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
65 Set stop_charpos to current charpos instead of 0.
66
a6fffcdc
ST
672005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
68
69 * macterm.c (XLoadQueryFont): Correctly handle 0 size
70 font widths that are returned from some Japanese fonts.
71
c35b0c6b
KS
722005-01-06 Kim F. Storm <storm@cua.dk>
73
74 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
75 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
76 (destroy_fringe_bitmap): Set fringe_faces element to nil.
77 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
78 fringe_faces array and init elements to nil.
79 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
80 non-persistent face id.
81 (mark_fringe_data): New function for GC.
82
83 * alloc.c (mark_fringe_data): Declare extern.
84 (Fgarbage_collect): Call mark_fringe_data.
85
86 * alloc.c (overrun_check_free): Invalidate freed memory if
87 XMALLOC_CLEAR_FREE_MEMORY is defined.
88
e0e76ab9
ST
892005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
90
91 * macfns.c: Include sys/param.h.
92 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
93 and function.
94 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
95 of filename string. Set event callback function when creating
96 dialog boxes. Add code conversions for filenames. Don't dispose
97 apple event descriptor record if failed to create it.
98
99 * macterm.c: Include sys/param.h.
100 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
101 kEventWindowUpdate.
102 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
103 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
104 of FSSpec from apple event descriptor record.
105 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
106 size of filename string.
107 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
108 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
109 file dialog is in action.
110 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise. Reject
111 only when there are no filename items. Set background color
112 before (un)highlighting the window below the dragged items.
113 (XTread_socket) [!USE_CARBON_EVENTS]: Don't call do_window_update.
114
043bc640
KH
1152005-01-05 Romain Francoise <romain@orebokech.com>
116
117 * term.c (encode_terminal_code): Fix buffer size computation.
118
dd496df6
RS
1192005-01-04 Richard M. Stallman <rms@gnu.org>
120
121 * xdisp.c (Fformat_mode_line): Doc fix.
122
026cdede
SM
1232005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
124
125 * alloc.c (refill_memory_reserve): Move.
126 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
127 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
128
d57c7572
RS
1292005-01-03 Richard M. Stallman <rms@gnu.org>
130
131 * window.c (window_scroll_pixel_based): Don't correct preserve_y
132 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
133
b14f868c
JR
1342005-01-03 Jason Rumney <jasonr@gnu.org>
135
136 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
137 fontp->space_width to FONT_WIDTH so they are valid.
138
139 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
140 average width. Set fontp->average_width and fontp->space_width to
141 their appropriate values.
142
143 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
144 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
145 fontp->space_width.
146
e169f939
ST
1472005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
148
149 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
150 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
151 metrics for max and min bounds.
152 (x_load_font): Correctly calculate average font width metrics.
153
19996af4
RS
1542005-01-02 Richard M. Stallman <rms@gnu.org>
155
156 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
157
42d02da0
JD
1582004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
159
160 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
161
1db7dd46
RS
1622004-12-31 Richard M. Stallman <rms@gnu.org>
163
b437860a
RS
164 * xdisp.c (setup_for_ellipsis, get_next_display_element):
165 Set it->ellipsis_p to 1 or 0.
166 (display_line): Record whether row ends in mid-ellipsis.
167 (set_cursor_from_row): If ends in ellipsis. find start of it.
168 (cursor_row_p): If PT's at the end of the ellipsis the row
169 ends within, don't display cursor on this row.
170
171 * dispextern.h (struct it): New element ellipsis_p.
172 (struct glyph_row): New element ends_in_ellipsis_p.
173
174 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
175 position if we're reading from something other than the buffer.
176
1db7dd46
RS
177 * window.c (window_scroll_pixel_based): Only look at
178 Vscroll_preserve_screen_position if the old PT can't be kept.
179 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
180
1225f637
KS
1812004-12-30 Kim F. Storm <storm@cua.dk>
182
183 * xdisp.c (get_line_height_property): New function extracted from
184 original calc_line_height_property.
185 (calc_line_height_property): Rework. Handle t and (nil . ratio).
186 (x_produce_glyphs): Use them to handle line-height and
187 line-spacing according to new height spec.
188 (Qtotal): Remove.
33b2f4ea 189 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
1225f637 190
c243063e
KH
1912004-12-30 Kenichi Handa <handa@m17n.org>
192
193 * fileio.c (Finsert_file_contents): Don't use
194 current_buffer->buffer_file_coding_system even if REPLACE is
195 non-nil. Call Qafter_insert_file_set_coding with the second arg
196 VISIT.
197
198 * fontset.h (struct font_info): New members space_width and
199 average_width.
200
201 * frame.h (struct frame): New member space_width.
202 (FRAME_SPACE_WIDTH): New macro.
203
204 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
205
206 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
207 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
b14f868c 208 fontp->space_width.
c243063e
KH
209 (x_load_font): Calculate fontp->space_width and
210 fontp->average_width.
211 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
212
213 * xdisp.c (x_produce_glyphs): Calculate tab width by
214 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
215
456e761b
ST
2162004-12-29 Sanghyuk Suh <han9kin@mac.com>
217
218 * macterm.c (SelectionRange): Add Xcode position apple event struct.
219 (do_ae_open_documents): Handle Xcode-style file position open
220 events.
221
188577ce
LT
2222004-12-29 Luc Teirlinck <teirllm@auburn.edu>
223
224 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
225
99ec74b9
RS
2262004-12-29 Richard M. Stallman <rms@gnu.org>
227
228 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
229
30c92fab
ST
2302004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
231
232 * macfns.c (install_window_handler): Modify extern to return OSErr
233 value.
234 (mac_window): Handle return value of install_window_handler.
235
236 * macterm.c (reflect_byte): Remove function.
237 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
238 Lookup table instead.
239 (mac_do_font_lists): Simplify calculation of the longest
240 nonspecial string.
241 (init_mac_drag_n_drop): Remove function and declaration.
242 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
243 init_mac_drag_n_drop.
244 (mac_do_track_drag): New function and declaration.
245 (install_window_handler): Return OSErr value.
246 (install_window_handler) [TARGET_API_MAC_CARBON]: Register
247 handlers for tracking/receiving drag-and-drop items.
248 (do_ae_open_documents): Generate unibyte strings for filenames.
249 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise. Reject
250 only non-filename items. Set event modifiers. Set return value.
251
4b982924
DN
2522004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
253
254 * coding.c (decode_coding): Fix previous change.
255
93fdf45f
RS
2562004-12-28 Richard M. Stallman <rms@gnu.org>
257
258 * xdisp.c (back_to_previous_visible_line_start):
259 Don't call handle_display_prop.
260
5bdca8af
DN
2612004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
262
263 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
264 (decode_coding_emacs_mule, encode_coding_emacs_mule)
265 (decode_coding_iso2022, encode_designation_at_bol)
266 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
267 (decode_coding): Constify arguments and local vars.
268
33385c6f
JD
2692004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
270
271 * xmenu.c (popup_get_selection): Only pop down dialogs
272 on C-g and Escape.
95bdef2e 273 (popup_get_selection): Remove parameter down_on_keypress.
a2c7e69a 274 (create_and_show_popup_menu, create_and_show_dialog): Remove
95bdef2e 275 parameter down_on_keypress to popup_get_selection.
33385c6f 276
b15325b2
ST
2772004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
278
279 * dispextern.h: Change HAVE_CARBON to MAC_OS.
280 (struct glyph_string): Likewise.
a2c7e69a 281
b15325b2
ST
282 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
283 mac_initialize.
a2c7e69a 284
b15325b2
ST
285 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
286 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
a2c7e69a 287
b15325b2 288 * fns.c (vector): Change MAC_OSX to MAC_OS.
a2c7e69a 289
b15325b2
ST
290 * frame.c (x_set_frame_parameters, x_report_frame_params)
291 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
292 (x_set_border_width, Vdefault_frame_scroll_bars): Change
293 HAVE_CARBON to MAC_OS.
a2c7e69a 294
b15325b2
ST
295 * image.c [MAC_OS]: Include sys/stat.h.
296 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
297 QuickTimeComponents.h.
a2c7e69a 298
b15325b2
ST
299 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
300 [!MAC_OSX] (select): Use mac_wait_next_event.
301 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to
302 Vexec_suffixes.
303 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
304 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
305 (mac_clear_font_name_table): Add extern.
306 (Fmac_clear_font_name_table): New defun.
307 (syms_of_mac): Defsubr it.
308 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
309 [MAC_OSX] (select_and_poll_event): New function.
310 [MAC_OSX] (sys_select): Use it.
311 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
312 [MAC_OSX && SELECT_USE_CFSOCKET]
313 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
314 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
315 RunLoop for simultaneously monitoring two kinds of inputs, window
316 events and process outputs, without periodically polling.
a2c7e69a 317
b15325b2
ST
318 * macfns.c (mac_initialized): Remove extern.
319 (stricmp): Put in #if 0. All callers changed to use xstricmp in
320 xfaces.c.
321 (strnicmp): Decrement `n' at the end of each loop, not the
322 beginning.
323 (check_mac): Use the term "Mac native windows" instead of "Mac
324 OS".
325 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
326 (mac_get_rdb_resource): New function (from w32reg.c).
327 (x_get_string_resource): Use it.
328 (install_window_handler): Add extern.
329 (mac_window): New function.
330 (Fx_create_frame): Use it instead of make_mac_frame. Set
331 parameter for Qfullscreen. Call x_wm_set_size_hint.
332 (Fx_open_connection, Fx_close_connection): New defuns.
333 (syms_of_macfns): Defsubr them.
334 (x_create_tip_frame) [TARGET_API_MAC_CARBON]: Add
335 kWindowNoUpdatesAttribute to the window attribute.
336 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
337 (x_create_tip_frame): Don't call ShowWindow.
338 (Fx_show_tip): Call ShowWindow.
339 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
340 TARGET_API_MAC_CARBON'.
341 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
342 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
a2c7e69a 343
b15325b2
ST
344 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include
345 Windows.h.
346 (Window): Typedef to WindowPtr and move outside `#if
347 TARGET_API_MAC_CARBON'.
348 (XSizeHints): New struct.
a2c7e69a 349
b15325b2
ST
350 * macterm.c (x_update_begin, x_update_end)
351 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
352 frame.
353 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
354 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
355 (construct_mouse_click): Put in #if 0.
356 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
357 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
358 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
359 (activate_scroll_bars, deactivate_scroll_bars)
360 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
361 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
362 if the position is neither user-specified nor program-specified.
363 (x_free_frame_resources): Free size_hints.
364 (x_wm_set_size_hint): Allocate size_hints if needed. Set
365 size_hints.
366 (mac_clear_font_name_table): New function.
367 (mac_do_list_fonts): Initialize font_name_table if needed.
368 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
369 around mac_do_list_fonts.
370 (mac_unload_font): New function.
371 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
372 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
373 and definitions with #if TARGET_API_MAC_CARBON.
374 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
375 (install_window_handler): Add decl.
376 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
377 window. Use UpdateControls. Get the rectangle that should be
378 updated and restrict the target of expose_frame to it.
379 (do_grow_window): Set minimum height/width according to
380 size_hints.
381 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
382 (do_zoom_window): Don't use x_set_window_size.
383 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
384 (install_window_handler): New function.
385 [!USE_CARBON_EVENTS] (mouse_region): New variable.
386 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
387 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
388 GetEventDispatcherTarget inside BLOCK_INPUT.
389 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
390 Update mouse_region when mouse is moved.
391 (make_mac_frame): Remove.
392 (make_mac_terminal_frame): Put in #ifdef MAC_OS8. Initialize
393 mouse pointer shapes. Change values of f->left_pos and
394 f->top_pos. Don't use make_mac_frame. Use NewCWindow. Don't
395 call ShowWindow.
396 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
397 Vinvocation_name and Vsystem_name.
398 (mac_make_rdb): New function (from w32term.c).
399 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
400 already been opened. Don't pass argument to
401 mac_initialize_display_info. Don't set dpyinfo->height/width.
402 Add entries to x_display_list and x_display_name_list.
403 (x_delete_display): New function.
404 (mac_initialize): Don't call mac_initialize_display_info.
a2c7e69a
KS
405 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
406
b15325b2
ST
407 * macterm.h (check_mac): Add extern.
408 (struct mac_output): New member size_hints.
409 (FRAME_SIZE_HINTS): New macro.
410 (mac_unload_font): Add extern.
a2c7e69a 411
b15325b2 412 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
a2c7e69a 413
b15325b2
ST
414 * xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.
415
92d2947b
RS
4162004-12-27 Richard M. Stallman <rms@gnu.org>
417
ebbd14f1
RS
418 * buffer.c (Fbuffer_disable_undo): Deleted (moved to simple.el).
419 (syms_of_buffer): Don't defsubr it.
420
421 * process.c (list_processes_1): Set undo_list instead
422 of calling Fbuffer_disable_undo.
423
92d2947b
RS
424 * xdisp.c (single_display_spec_string_p): Renamed from
425 single_display_prop_string_p.
426 (single_display_spec_intangible_p): Renamed from
427 single_display_prop_intangible_p.
428 (handle_single_display_spec): Renamed from handle_single_display_prop.
429 Rewritten to be easier to understand.
430
a2c7e69a 431 Change in load-history format. Functions now get (defun . NAME),
92d2947b
RS
432 and variables get just NAME.
433
434 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
435
436 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
437 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
438 (Qdefvar): Var deleted.
439 (syms_of_eval): Don't initialze it.
440
441 * lread.c (syms_of_lread) <load-history>: Doc fix.
442
9f6fcdc5
JD
4432004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
444
445 * xmenu.c (popup_get_selection): Pop down on C-g.
446 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
447 pops down menu on C-g.
448 (xdialog_show): If dialog popped down and no button in the dialog was
449 pushed, call Fsignal to quit.
450 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
451 Fsignal to quit.
452
453 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
454
455 * gtkutil.c (xg_initialize): Install bindings for C-g so that
456 dialogs and menus pop down.
457
d8ca23a0
KH
4582004-12-27 Kenichi Handa <handa@m17n.org>
459
460 * coding.c (code_convert_region): Fix calculation of `ratio'.
461
857ae68b
JD
4622004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
463
133c0116
JD
464 * gtkutil.c (update_frame_tool_bar): Make the value of
465 tool-bar-button-margin control margins of images in tool bar.
466
857ae68b
JD
467 * alloc.c (check_depth): New variable.
468 (overrun_check_malloc, overrun_check_realloc): Only add
469 overhead and write check pattern if check_depth is 1 (to handle
470 recursive calls). Increase/decrease check_depth in entry/exit.
471 (overrun_check_free): Only check for overhead if check_depth is 1.
472 Increase/decrease check_depth in entry/exit.
473
bd55c35c
JD
4742004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
475
476 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
477 before touching input_available_clear_time, to avoid accessing it
478 from multiple threads.
479
66354420
JR
4802004-12-23 Jason Rumney <jasonr@gnu.org>
481
482 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
483 of JPEG library.
484
55f4edbc
RS
4852004-12-22 Richard M. Stallman <rms@gnu.org>
486
487 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
488
489 * lisp.h (Vundo_outer_limit): Fix decl.
490
491 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
492 Uses changed.
493 (syms_of_undo): Initialize appropriately.
494 (truncate_undo_list): If it's nil, there's no limit.
495
7a0ea9e3
KH
4962004-12-22 Kenichi Handa <handa@m17n.org>
497
498 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
499
fda2922a
RS
5002004-12-21 Richard M. Stallman <rms@gnu.org>
501
502 * eval.c (unwind_to_catch): Clear immediate_quit.
503
504 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
505 specially as `\ ' and `\-'.
506
507 * keyboard.c (kbd_buffer_store_event_hold):
508 In the code for while-no-input, handle immediate_quit.
509
510 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
511 Call that at the very start.
512 (undo_limit, undo_strong_limit, undo_outer_limit): Moved to undo.c.
513 (syms_of_alloc): Don't define undo-limit,
514 undo-strong-limit and undo-outer-limit here.
515
516 * undo.c (truncate_undo_list): Return void.
517 Take just one argument, the buffer.
518 Make it current, and inhibit recursive GC.
519 Access and update the undo list directly; return void.
520 Refer to the undo...limit variables directly.
521 Test undo_outer_limit only after counting the whole current command.
522 When it's exceeded, call the function in undo-outer-limit-function.
523 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
524 (Vundo_outer_limit_function): New variable.
525 (syms_of_undo): Define undo-limit, undo-strong-limit
526 and undo-outer-limit here, and undo-outer-limit-function.
527 Doc fixes.
528
529 * lisp.h (truncate_undo_list): Update decl.
530
5312004-12-21 Piet van Oostrum <piet@cs.uu.nl>
532
533 * fileio.c (Fread_file_name): Delete duplicates in
534 file-name-history when history_delete_duplicates is true.
535
68c69027
ST
5362004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
537
538 * macterm.c (mac_do_list_fonts): Fix memory leak
539
134579f2
RS
5402004-12-20 Richard M. Stallman <rms@gnu.org>
541
542 * regex.c (re_match_2_internal) <symend, wordend>:
543 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
544
fbe6152f
ST
5452004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
546
547 * macterm.c (endif, x_font_name_to_mac_font_name): Use
548 maccentraleurroman instead of maccentraleuropean
549 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
550 quickly finding a specific font without needing regexps.
551
fecad3f6
JD
5522004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
553
333f1b6f
JD
554 * syssignal.h: Declare main_thread.
555 (SIGNAL_THREAD_CHECK): New macro.
556
557 * keyboard.c (input_available_signal): Move thread checking code
558 to macro SIGNAL_THREAD_CHECK and call that macro.
559 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
560
561 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
562
563 * emacs.c: Define main_thread.
564 (main): Initialize main_thread.
565 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
566 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
567
568 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
569
570 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
571
572 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
573
a2c7e69a 574 * process.c (send_process_trap, sigchld_handler): Call
333f1b6f
JD
575 SIGNAL_THREAD_CHECK.
576
577 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
578
579 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
580
fecad3f6
JD
581 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
582 returning when xg_ignore_gtk_scrollbar is true.
583
2a84c6da
KS
5842004-12-14 Kim F. Storm <storm@cua.dk>
585
586 * keyboard.c (read_char): Save and restore echo_string when
587 handling input method.
588
d9c1ce9d
RS
5892004-12-13 Richard M. Stallman <rms@gnu.org>
590
591 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
592
593 * keyboard.c (Vthrow_on_input): New variable.
594 (syms_of_keyboard): Defvar and initialize it.
595 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
596
597 * lisp.h (QUIT): Check for Vthrow_on_input.
598 (Vthrow_on_input): Declare it.
599
a6495ed5
KS
6002004-12-13 Kim F. Storm <storm@cua.dk>
601
602 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
603 vector.
604
24a0e22f
RS
6052004-12-12 Richard M. Stallman <rms@gnu.org>
606
607 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
608
609 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
610 (Ftry_completion): Really use outer `zero'; eliminate inner one.
611
d6d31e57
KH
6122004-12-12 Kenichi Handa <handa@m17n.org>
613
614 * term.c (encode_terminal_code): Fix previous change.
615
6f8ffb88
SM
6162004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
617
fb6f5cbf
SM
618 * keyboard.c (handle_async_input): Remove pthread mutex handling.
619 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
620
6f8ffb88
SM
621 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
622 in macro arguments.
623
624 * minibuf.c (Ftry_completion, Fall_completions): Don't use
625 XFASTINT blindly.
626
627 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
628
c83c9f9d
JD
6292004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
630
2f25767f
JD
631 * w32term.c (x_calc_absolute_position): Remove calculation of
632 difference between inner and outer window. Don't subtract difference
633 for left and top calculations.
634
c83c9f9d
JD
635 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
636 for left and top calculations. Remove call to x_real_positions.
24a0e22f 637 [Bug report by Drew Adams in November]
c83c9f9d
JD
638 (x_check_expected_move): Do not set change_gravity to 1 when calling
639 x_set_offset.
640
cc1caa4e
RS
6412004-12-08 Richard M. Stallman <rms@gnu.org>
642
643 * xdisp.c (get_next_display_element): Use `escape-glyph' for
644 control chars and escaped octal codes.
645 (Qescape_glyph): New variable.
646 (syms_of_xdisp): Initialize it.
647 (escape_glyph_face): New variable.
648 (redisplay_window): Initialize it.
649
e0e30823
RS
6502004-12-07 Paul Eggert <eggert@cs.ucla.edu>
651
652 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
653 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
654
f415cacd
JD
6552004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
656
cf435f39
JD
657 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
658 reset_malloc_hooks.
659
6f8ffb88
SM
660 * keyboard.c (handle_async_input, input_available_signal):
661 Add ! defined (SYSTEM_MALLOC) around thread code.
cf435f39 662
f415cacd
JD
663 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
664
19b1f29a
SM
6652004-12-07 Stefan <monnier@iro.umontreal.ca>
666
667 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
668
669 * config.in: Regenerate.
670
ded997c1
JD
6712004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
672
453a4f1b
JD
673 * xmenu.c (Fx_popup_menu): Correct documentation about position.
674 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
675 if not given by a mouse click to correspond with x-popup-menu
676 documentation.
677
9a38524c
JD
678 * config.in: Regenerate.
679
aa477689
JD
680 * gtkutil.c: Include signal.h and syssignal.h.
681 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
682
683 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
684 new variables main_thread and alloc_mutex,
685 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
686 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
687 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
688 (UN)BLOCK_INPUT.
689 (emacs_blocked_free, emacs_blocked_malloc)
690 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
691 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
692 (reset_malloc_hooks): New function.
693
694 * lisp.h: Declare reset_malloc_hooks.
695
696 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
697
698 * keyboard.c: Conditionally include pthread.h
6f8ffb88 699 (handle_async_input, input_available_signalt): If not in the main
aa477689
JD
700 thread, block signal, send signal to main thread and return.
701
ded997c1 702 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
6f8ffb88 703 Set current folder in file chooser if default_filename is a directory.
ded997c1 704
c72b0edd
SM
7052004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
706
707 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
708 Remove redundant correctness checks.
709 (regex_compile): Fix up error codes for \{..\} expressions.
710
c721eee5
RS
7112004-12-05 Richard M. Stallman <rms@gnu.org>
712
713 * regex.c (regex_compile): Fix end-of-pattern case for space.
714
d8f96db8
ST
7152004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
716
6108209e
KS
717 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
718 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
d8f96db8 719 crashes with invalid characters.
6108209e
KS
720 * macmenu.c (add_menu_item): Use it.
721 * image.c (image_load_quartz2d): Likewise.
722 * macfns.c (x_set_name, x_set_title): Likewise.
723 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
724 creating them each time for labels.
d8f96db8 725
ab67e8b6
RS
7262004-12-02 Richard M. Stallman <rms@gnu.org>
727
728 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
729 don't use it here.
730
731 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
732 (interactive_p): Skip Scalled_interactively_p frames
733 like Sinteractive_p frames.
b8217ea6 734 (unwind_to_catch): Clear handling_signal.
ab67e8b6
RS
735
736 * data.c (Fmake_variable_buffer_local): Doc fix.
737 (Fmake_local_variable): Doc fix.
738
739 * insdel.c (insert_from_string_before_markers)
740 (insert_from_string): Don't modify buffer on empty insertion.
741
742 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
743
f86bdc80
ST
7442004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
745
746 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
747 menu text as UTF8 fails.
748
1cae6d39
KS
7492004-12-01 Kim F. Storm <storm@cua.dk>
750
751 * alloc.c: Add commentary for last change.
752 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
753 sizeof(size_t) != 4.
754 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
755 Use them. Also clear header and trailer of freed memory.
756 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
757 (string_overrun_cookie): Rename from string_overrun_pattern.
758 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
759
77ea0764
AS
7602004-12-01 Andreas Schwab <schwab@suse.de>
761
762 * lisp.h: Declare string_to_multibyte.
763
2d5cd4e6
KH
7642004-12-01 Kenichi Handa <handa@m17n.org>
765
766 * w32console.c (w32con_write_glyphs): Decide coding here.
767 Adjusted for the change of encode_terminal_code.
768
769 * term.c (encode_terminal_code): Don't make it "static".
770
25a0994a
KH
7712004-11-30 Kenichi Handa <handa@m17n.org>
772
19b1f29a 773 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
25a0994a 774 (encode_terminal_code): Argument changed. Encode all
19b1f29a
SM
775 characters at once, and return a pointer to the result of encoding.
776 (write_glyphs): Decide coding here. Adjusted for the above change.
25a0994a
KH
777 (insert_glyphs): Likewise.
778 (term_init): Initialize encode_terminal_bufsize to 0.
779
780 * coding.c (Vcode_conversion_workbuf_name): New variable.
781 (syms_of_coding): Initialize and staticpro it.
782 (set_conversion_work_buffer): New function.
783 (run_pre_post_conversion_on_str): Use it.
784 (run_pre_write_conversin_on_c_str): New function.
785
786 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
787
fc7a70cc
ST
7882004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
789
790 * keyboard.c: Don't undef SIGIO
791 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
792 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
793 (macfns.o): Don't depend on ccl.h.
794 * macfns.c (mac_frame_parm_handlers): Set handlers for
795 Qleft_fringe and Qright_fringe.
796 * macterm.c (mac_fill_rectangle_to_pixmap)
797 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
798 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
799 Put in #if 0.
800 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
801 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
802 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
803 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
804 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
805 XDrawImageString. Always draw background and foreground separately.
806 (x_draw_image_foreground): Use clipping instead of computing the
807 intersection rectangle.
808 (x_draw_image_glyph_string): Don't draw an image with mask to a
809 pixmap.
810 (x_redisplay_interface): Set flush_display_optional member to 0.
811 (XTread_socket): Correctly reset the TEConverter
812 object.
813
fc368889
KS
8142004-11-30 Kim F. Storm <storm@cua.dk>
815
816 * lisp.h: New defines to enable buffer overrun checking.
817 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
818 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
819
820 * alloc.c: Add more checks for buffer overruns.
821 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
822 xmalloc_overrun_check_trailer, overrun_check_malloc)
823 overrun_check_realloc, overrun_check_free): Add.
824 (GC_STRING_EXTRA, string_overrun_pattern): Add.
825 (check_sblock, allocate_string_data, compact_small_strings):
826 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
827 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
828 (check_string_free_list): Add.
829 (allocate_string, sweep_strings): Call check_string_free_list.
830
831 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
832 XMALLOC_OVERRUN_CHECK to avoid crash during load.
833
0af8cfe1
KS
8342004-11-29 Kim F. Storm <storm@cua.dk>
835
836 * fns.c (concat): Use SAFE_ALLOCA.
837
77220eeb
SM
8382004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
839
840 * sysdep.c (emacs_write): Don't use QUIT.
841
a778cf63
KH
8422004-11-29 Kenichi Handa <handa@m17n.org>
843
844 * buffer.c (init_buffer): Set current_buffer->directory to a
845 multibyte string made by string_to_multibyte.
846
77220eeb 847 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
a778cf63 848
e3177e43
AS
8492004-11-27 Andreas Schwab <schwab@suse.de>
850
851 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
852
853 * s/gnu-linux.h: Enable no-op gcpros on ia64.
854 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
855
77220eeb
SM
856 * filelock.c (lock_file_1): Call get_boot_time early.
857 Increase buffer size.
e3177e43 858
ca5e6fef
EZ
8592004-11-27 Eli Zaretskii <eliz@gnu.org>
860
861 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
862 is not defined.
863
e2811828
KS
8642004-11-27 Kim F. Storm <storm@cua.dk>
865
866 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
867 marker out of doc string.
868
7a262394
SM
8692004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
870
871 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
872 which was not mentioned in the log.
873
f33cc5a9
KS
8742004-11-26 Kim F. Storm <storm@cua.dk>
875
048bb03f
KS
876 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
877 angle bitmaps at top/bottom line.
878
f33cc5a9
KS
879 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
880 set it when it->method is set to next_element_from_display_vector.
881 (setup_for_ellipsis): Add LEN argument. Callers changed.
882 Set it->saved_face_id.
883 (get_next_display_element): Use loop instead of recursion.
884 Set it->saved_face_id. Combine duplicate code for ctr chars.
885 (next_element_from_display_vector): Do not set it->saved_face_id.
886 (next_element_from_ellipsis): Use setup_for_ellipsis.
887
670e8906
EZ
8882004-11-26 Eli Zaretskii <eliz@gnu.org>
889
890 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
891 prevent compiler warnings.
892
275464e7
SM
8932004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
894
1bf0e604
SM
895 * keyboard.c (command_loop_1): Print a message describing the key
896 the user just pressed when this key has no binding.
897
275464e7
SM
898 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
899 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
900
901 * lread.c (readchar): Check QUIT when `getc' is interrupted.
902
261b01c6
RS
9032004-11-24 Richard M. Stallman <rms@gnu.org>
904
905 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
906
907 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
908
a5bd504e
KS
9092004-11-24 Kim F. Storm <storm@cua.dk>
910
911 * xdisp.c (move_it_in_display_line_to, display_line):
912 Restore saved_face_id also when truncate-lines or hscrolled.
913
255e4140
JD
9142004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
915
916 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
917 x-use-old-gtk-file-dialog.
918
919 * xfns.c: Define x_use_old_gtk_file_dialog.
920 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
921 outside ifdef USE_GTK.
922
cab27d04
SM
9232004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
924
925 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
926 Don't use XFASTINT blindly.
927
928 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
929
930 * indent.c (skip_invisible): Avoid non-idempotent side-effects
931 in macro arguments.
932
933 * keymap.c (Flookup_key): Check INTEGERP before XINT.
934
935 * lread.c (oblookup): Don't use XFASTINT blindly.
936
937 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
938 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
939
11e0be49
KS
9402004-11-23 Kim F. Storm <storm@cua.dk>
941
4d721114
KS
942 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
943 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
944
11e0be49
KS
945 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
946 signal_p is zero and face name is unknown.
947 (Fx_list_fonts): Don't signal error in lookup_named_face.
948 (Fface_font): Signal error in lookup_named_face.
949 (ascii_face_of_lisp_face): Likewise.
950
951 * dispextern.h (lookup_named_face): Fix prototype.
952
953 * xdisp.c (handle_single_display_prop): Don't signal error in
954 lookup_named_face for unknown fringe face name.
955 (highlight_trailing_whitespace): Don't signal error in
956 lookup_named_face if trailing-whitespace face unknown.
957 (calc_line_height_property): Don't signal error in
958 lookup_named_face if specified face name is unknown.
959
960 * fringe.c (update_window_fringes): Show top row indicator if
961 window has header-line. Don't show arrow at bob and eob
962 if the boundary indicators are not used.
963 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
964
965 * window.c (set_window_buffer): Clear display_error_modiff.
966
0960a582
KS
9672004-11-22 Kim F. Storm <storm@cua.dk>
968
969 * fringe.c (update_window_fringes): Provide sensible fall-back
970 value for non-nil indicate-buffer-boundaries setting.
971
b0e9bb28
MR
9722004-11-22 Markus Rost <rost@ias.edu>
973
974 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
975
d0bce91e
SM
9762004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
977
978 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
979
e1814672
KS
9802004-11-21 Kim F. Storm <storm@cua.dk>
981
b7fd3518
KS
982 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
983
984 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
985 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
986
987 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
988 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
989
990 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
991 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
992
d0bce91e
SM
993 * xdisp.c (move_it_in_display_line_to, display_line):
994 Restore saved_face_id if overflow-newline-into-fringe is enabled and
995 line is continued before or in middle of element from display vector.
f01d4d05 996
f1a61389
KS
997 * indent.c (Fvertical_motion): Fix last change. Use another
998 method to detect if iterator moved too far ahead after reseat.
999
e1814672
KS
1000 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
1001 expand matrix width for overflow in zero-width area.
1002 (append_glyph, append_composite_glyph, produce_image_glyph)
1003 (append_stretch_glyph): Use it to avoid loop in redisplay.
1004 (note_mode_line_or_margin_highlight): Don't let help-echo from
1005 string override help-echo from image map.
1006
2dafe1c9
LT
10072004-11-20 Luc Teirlinck <teirllm@auburn.edu>
1008
d0bce91e 1009 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
2dafe1c9
LT
1010 * callint.c (Fcall_interactively): Ditto.
1011
fd6866c8 10122004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
9961365e
RS
1013
1014 * minibuf.c (Fminibuffer_complete_and_exit):
1015 Fixup the case of the completed value, for case-indep completion.
1016
dedbac89
RS
10172004-11-20 Richard M. Stallman <rms@gnu.org>
1018
fd6866c8
RS
1019 * lisp.h (Fread_from_minibuffer): Add arg in decl.
1020
9d00469f 1021 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
ce8dd7ca 1022 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
9d00469f 1023
dedbac89 1024 * search.c (Vsearch_spaces_regexp):
d0bce91e 1025 Rename from Vsearch_whitespace_regexp. All uses changed.
dedbac89 1026
2f672bb5
TTN
10272004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
1028
1029 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
1030
f31a9a68
RS
10312004-11-19 Richard M. Stallman <rms@gnu.org>
1032
1033 * search.c (Vsearch_whitespace_regexp): New variable.
1034 (syms_of_search): Defvar it.
1035 (compile_pattern_1): Call re_set_whitespace_regexp with it.
1036 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
1037 is non-nil.
6de891db
RS
1038 (struct regexp_cache): New element whitespace_regexp.
1039 (syms_of_search): Initialize whitespace_regexp elements.
1040 (compile_pattern): Compare whitespace_regexp elements.
1041 (compile_pattern_1): Set whitespace_regexp elements.
f31a9a68
RS
1042
1043 * regex.c (regex_compile): Substitute whitespace_regexp
1044 for spaces, if it is nonzero.
1045 (whitespace_regexp): New variable.
1046 (re_set_whitespace_regexp): New function.
1047
cbc34cb3
KS
10482004-11-19 Kim F. Storm <storm@cua.dk>
1049
1050 * indent.c (Fvertical_motion): Fix last change.
1051
b54a7539
KS
10522004-11-18 Kim F. Storm <storm@cua.dk>
1053
1054 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
1055 Instead, move back again if reseating moves too far ahead.
1056
10572004-11-17 Luc Teirlinck <teirllm@auburn.edu>
802c6e56
LT
1058
1059 * xdisp.c (message3): Call clear_message.
1060
5ff504fe
KS
10612004-11-17 Kim F. Storm <storm@cua.dk>
1062
1063 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
1064
5ae53dcf
JD
10652004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1066
d0bce91e 1067 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
724cde0d 1068
6abf3a27 1069 * xmenu.c (x_menu_in_use): Remove.
5ae53dcf
JD
1070 (x_menu_set_in_use): Also set popup_activated_flag.
1071
5ff504fe 1072 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5ae53dcf
JD
1073 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
1074
6abf3a27 1075 * xterm.h: (x_menu_in_use): Remove.
5ae53dcf 1076
ee31cd78
RS
10772004-11-16 Richard M. Stallman <rms@gnu.org>
1078
6abf3a27
SM
1079 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
1080 Use map-keymap-internal to implement that.
ee31cd78
RS
1081
1082 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
1083
6abf3a27
SM
10842004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
1085
1086 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
1087 a window before using XWINDOW.
1088
1089 * window.c (make_window, Fselect_window, make_dummy_parent)
1090 (save_window_save):
1091 * frame.c (make_frame):
1092 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
1093
1094 * lisp.h (NILP): Use EQ rather than XFASTINT.
1095
b4d61105
KS
10962004-11-16 Kim F. Storm <storm@cua.dk>
1097
6abf3a27 1098 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
dda01a4c 1099
b4d61105
KS
1100 * indent.c (Fvertical_motion): Fix last change. Only reseat when
1101 moving backwards.
1102
11032004-11-16 Luc Teirlinck <teirllm@auburn.edu>
ce2bbf6a
LT
1104
1105 * dispextern.h: Extern reseat_at_previous_visible_line_start.
1106
ab5b02b0
KH
11072004-11-16 Kenichi Handa <handa@m17n.org>
1108
1109 * xdisp.c (display_mode_element): Fix previous change (calculate
1110 end position of substring to display correctly).
1111
c482cf97
KS
11122004-11-16 Kim F. Storm <storm@cua.dk>
1113
1114 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
1115 Reported by Andrew M. Scott.
1116
9f89426b
KS
11172004-11-15 Kim F. Storm <storm@cua.dk>
1118
1119 * fns.c (Fsafe_plist_get): New defun.
1120 (syms_of_fns): Defsubr it.
1121
1122 * lisp.h (Fsafe_plist_get): Add EXFUN.
1123
1124 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
1125 Use Fsafe_plist_get.
1126 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1127 Fix image map element parsing. Use Fsafe_plist_get.
1128
27418463
RS
11292004-11-15 Richard M. Stallman <rms@gnu.org>
1130
1131 * xdisp.c (get_next_display_element): Fix previous change.
1132
a130b901
JD
11332004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1134
ef614e04
JD
1135 * window.c (shrink_windows): Handle special case of one window left
1136 when trying to shrink the final reminder. Grow windows if
1137 total_removed is less than total_shrink.
1138
a130b901
JD
1139 * xmenu.c (pop_down_menu): Remove global variable current_menu,
1140 extract pointer from arg with XSAVE_VALUE.
46303896
KS
1141 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
1142 Construct arg to record_unwind_protect with make_save_value.
a130b901 1143
d9a03ad2
RS
11442004-11-13 Richard M. Stallman <rms@gnu.org>
1145
1146 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
1147 (get_next_display_element): Fix previous change to apply only to \n.
1148
1149 * indent.c (Fvertical_motion): Scan to PT from start of line to
1150 make iterator consistent.
1151
1152 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1153
b3935289
JD
11542004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1155
1156 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
1157
1158 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
1159 Record unwind with clean_up_file_dialog.
1160
78819ebb
KS
1161 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
1162 Declare.
b3935289
JD
1163
1164 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
1165
af89e871
JD
11662004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1167
457a8155 1168 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6abf3a27 1169 (xg_file_sel_destroy): Remove.
46303896
KS
1170 (xg_file_response_cb, pop_down_file_dialog)
1171 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
457a8155 1172 New functions.
6abf3a27
SM
1173 (xg_get_file_with_chooser, xg_get_file_with_selection):
1174 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
457a8155
JD
1175 Move common code to xg_get_file_name. Return widget created.
1176 (xg_get_file_name): Set name, transient for, modal and destroy
1177 with parent here. Connect response signal to xg_file_response_cb,
1178 connect delete-event to gtk_true. Record pop_down_file_dialog
1179 for unwind. Do event loop and call x_menu_wait_for_event in loop.
1180 (xg_create_widget): Make dialogs modal.
1181
af89e871
JD
1182 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
1183 Lisp_Object.
1184 (popup_get_selection): Move unwind protect ...
1185 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
1186 Move destroy of widget to pop_down_menu.
1187 (popup_widget_loop): Move unwind protect ...
1188 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
1189 Move destroy of widget to pop_down_menu.
1190 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6abf3a27 1191 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
af89e871
JD
1192 x_mouse_leave and grabbed = 0 to pop_down_menu.
1193
5596fbf1
KS
11942004-11-13 Kim F. Storm <storm@cua.dk>
1195
1196 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
1197 (syms_of_xdisp): DEFVAR_BOOL it.
1198 (make_cursor_line_fully_visible, try_cursor_movement)
1199 (try_window_id): Use it.
1200
b9de078a
KS
12012004-11-12 Kim F. Storm <storm@cua.dk>
1202
381f7091
KS
1203 * dispextern.h (struct glyph_row): New member extra_line_spacing.
1204 (struct it): New member max_extra_line_spacing.
1205 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
1206 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
1207 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
1208 part of last line is only extra line spacing (so the text on the
1209 line is fully visible). Use helper macros.
1210 Add W arg (to use them). All callers changed.
1211 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
1212 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
1213
6abf3a27
SM
1214 * window.c (window_scroll_pixel_based, Frecenter):
1215 Use move_it_vertically_backward directly.
381f7091
KS
1216 (Frecenter): Fix calculation of new start pos for negative arg.
1217 Before, the new start pos was sometimes chosen too far back, so
1218 the last line became only partially visible, and thus would be
1219 either only semi-visible or automatically scrolled to the middle
1220 of the window by redisplay.
1221
1222 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
1223 (move_it_vertically_backward): Don't recure to move further back.
1224 (move_it_vertically): Remove superfluous condition.
1225 (move_it_by_lines): Clear last_height when moved 0 lines.
6abf3a27 1226 (resize_mini_window): Use it.max_extra_line_spacing.
381f7091
KS
1227 (display_tool_bar_line): Clear row->extra_line_spacing.
1228 (try_scrolling): Use move_it_vertically_backward directly.
1229 (redisplay_window): Likewise.
1230 (compute_line_metrics): Set row->extra_line_spacing.
1231 (display_line, display_string): Likewise.
1232 (x_produce_glyphs): Update it->max_extra_line_spacing.
1233
b9de078a
KS
1234 * xmenu.c (pop_down_menu): Return nil.
1235
c3438661
JD
12362004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1237
1238 * xmenu.c (x_menu_wait_for_event): New function.
1239 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
1240 to handle timers.
df00f436
JD
1241 (popup_widget_loop): Add argument do_timers.
1242 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
1243 do_timers to popup_widget_loop.
c3438661
JD
1244 (xmenu_show): Call XMenuActivateSetWaitFunction so that
1245 x_menu_wait_for_event is called by XMenuActivate.
b9de078a 1246 (create_and_show_popup_menu): Pass 1 for do_timers to
df00f436 1247 popup_get_selection.
f1d1cd24
JD
1248 (pop_down_menu): New function.
1249 (popup_get_selection, popup_widget_loop): Unwind protect to
1250 pop_down_menu.
1251 (popup_widget_loop): Add argument widget.
1252 (create_and_show_popup_menu, create_and_show_dialog): Pass new
1253 argument widget to popup_widget_loop.
c3438661 1254
32e2fb04
SM
12552004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
1256
1257 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
1258
0faf6806
KS
12592004-11-09 Kim F. Storm <storm@cua.dk>
1260
1261 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
1262 Fix various comments referring to XEvents instead of input events.
1263 (x_queue_event): Fix format strings.
1264 (x_stop_queuing_selection_requests): Likewise.
1265
1266 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
1267 (pint2hrstr): Add extra braces to silence compiler.
1268
1269 * print.c (print_object): Fix format string.
1270
1271 * lread.c (read1): Fix next_char matching.
1272
1273 * lisp.h (Fdelete): Add EXFUN.
1274 (replace_range_2): Add prototype.
1275
1276 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
1277
1278 * intervals.h (NULL_INTERVAL_P): Add separate version when
1279 ENABLE_CHECKING is not defined to silence compiler.
1280 (compare_string_intervals): Add prototype.
1281
1282 * fringe.c (destroy_fringe_bitmap): Fix return type.
1283 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
1284
1285 * emacs.c (Fdump_emacs): Fix format string.
1286
1287 * doc.c: Include <ctype.h>.
1288 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
1289
1290 * data.c (store_symval_forwarding): Remove unused variables.
1291
1292 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
1293
16bf4e32
JD
12942004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1295
1296 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
1297 to ${OLDXMENU}.
1298
cdb805a9
KS
12992004-11-09 Kim F. Storm <storm@cua.dk>
1300
1301 * process.c (Fmake_network_process): Remove kludge for interrupted
1302 connects on BSD. If connect is interrupted, just close socket and
1303 start over rather than sleeping and retry with same socket.
1304
d87a9ab8 13052004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
0faf6806 1306
a8b16c80
JD
1307 * .cvsignore: Add buildobj.lst.
1308
d87a9ab8
JD
1309 * doc.c: New variable Vbuild_files.
1310 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
1311 file names from buildobh.lst. Only attach docstrings from files
1312 that are in Vbuild_files.
1313 (syms_of_doc): Defvar Vbuild_files.
1314
1315 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
1316 and w32*.o.
1317 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6abf3a27 1318 (mostlyclean): Rm buildobj.lst
d87a9ab8
JD
1319
1320 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
1321 is linked.
1322
b6709e77
KS
13232004-11-09 Kim F. Storm <storm@cua.dk>
1324
1325 * fringe.c (update_window_fringes): Update fringe bitmaps if
1326 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
1327 also update previous row to get rid of misc. artifacts.
1328
bae9677d
KS
13292004-11-08 Kim F. Storm <storm@cua.dk>
1330
1331 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 1332 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 1333
3f8ea68c
EZ
13342004-11-08 Eli Zaretskii <eliz@gnu.org>
1335
1336 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
1337 Don't include <sys/time.h> explicitly.
1338 Include <stdio.h> unconditionally, not just on MacOS.
1339
a653f812
KH
13402004-11-08 Kenichi Handa <handa@m17n.org>
1341
1342 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
1343 don't pay attention to '\' before '*'.
1344 (fontset_pattern_regexp): Change the meaning of the second arg.
1345 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
1346 (check_fontset_name): Try NAME as literal at first, and if it
1347 failes, try NAME as pattern.
1348
c37caf9d
JD
13492004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1350
1351 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
1352
b72915a7
AS
13532004-11-07 Andreas Schwab <schwab@suse.de>
1354
78819ebb
KS
1355 * lisp.h (Fmsdos_downcase_filename): Declare.
1356 * dired.c (Fmsdos_downcase_filename): Don't declare here.
b72915a7
AS
1357 * fileio.c: Likewise.
1358
238a44a8
JD
13592004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1360
1361 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
1362 comparisons with integers instead of Lisp_Object address.
1363 (Fmsdos_set_keyboard): Declare argument allkeys.
1364
1365 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
1366
78819ebb 1367 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
238a44a8
JD
1368 int/Lisp_Object mixup.
1369
1370 * fileio.c: Ditto.
1371
31141c13
ST
13722004-11-06 Steven Tamm <steventamm@mac.com>
1373
1374 * editfns.c: Need to include sys/time.h before resource.h on darwin.
1375
f28c1bd9
RS
13762004-11-06 Richard M. Stallman <rms@gnu.org>
1377
1378 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
1379
1380 * xfaces.c (merge_named_face): GCPRO the face_name in the
1381 named_merge_point struct that we make.
1382 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
1383
1384 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
1385 before deciding whether to inactivate mark.
1386
59dede22
EZ
13872004-11-06 Lars Brinkhoff <lars@nocrew.org>
1388
1389 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
1390 * editfns.c (Fget_internal_run_time): New function.
1391 (syms_of_data): Defsubr it.
1392 * fns.c (sxhash): As far as possible, merge calculation of
1393 hash code for symbols and strings.
59dede22 1394
27540e81
EZ
13952004-11-06 Eli Zaretskii <eliz@gnu.org>
1396
1397 * frame.c (syms_of_frame): Fix the example in the doc string.
1398
df470e3b
JD
13992004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1400
1401 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
1402
1403 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
1404 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 1405
4cc8522c
LT
14062004-11-05 Luc Teirlinck <teirllm@auburn.edu>
1407
1408 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
1409
d4a42098
KS
14102004-11-05 Kim F. Storm <storm@cua.dk>
1411
a8490886
KS
1412 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
1413
d4a42098
KS
1414 * fileio.c (Ffile_modes): Doc fix.
1415 (auto_save_1): Check for Ffile_modes nil value.
1416
36a2b04c
KS
14172004-11-05 Kim F. Storm <storm@cua.dk>
1418
1419 * xselect.c (struct selection_event_queue, selection_queue)
1420 (x_queue_selection_requests, x_queue_event)
1421 (x_start_queuing_selection_requests)
1422 (x_stop_queuing_selection_requests): Add new queue for selection
1423 input events to replace previous XEvent queue in xterm.c.
1424 (queue_selection_requests_unwind): Adapt to new queue.
32e2fb04
SM
1425 (x_reply_selection_request): Adapt to new queue.
1426 Unexpect wait_object in case of x errors (memory leak).
36a2b04c
KS
1427 (x_handle_selection_request, x_handle_selection_clear): Make static.
1428 (x_handle_selection_event): New function. May queue selection events.
1429 (wait_for_property_change_unwind): Use save_value instead of cons.
1430 Clear property_change_reply_object.
1431 (wait_for_property_change): Abort if already waiting.
1432 Use save_value instead of cons for unwind data.
1433 (x_handle_property_notify): Skip events already arrived, but don't
1434 free them, as "arrived" field is checked by wait_for_property_change,
1435 and it will be freed by unwind or explicit unexpect_property_change.
1436 (x_get_foreign_selection): Add to new queue.
1437 (receive_incremental_selection): Don't unexpect wait_object when done
1438 as it has already been freed by previous wait_for_property_change.
1439
1440 * xterm.h (x_start_queuing_selection_requests)
1441 (x_stop_queuing_selection_requests, x_handle_selection_request)
1442 (x_handle_selection_clear): Remove prototypes.
1443 (x_handle_selection_event): Add prototype.
1444
1445 * xterm.c (handle_one_xevent): Don't queue X selection events
1446 here, it may be too late if we start queuing after we have already
1447 stored some selection events into the kbd buffer.
1448 (struct selection_event_queue, queue, x_queue_selection_requests)
1449 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
1450 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
1451 (x_catch_errors_unwind): Block input around final XSync.
1452
1453 * keyboard.h (kbd_buffer_unget_event): Add prototype.
1454
1455 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
1456 (kbd_buffer_unget_event): New function.
1457 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
1458 and use x_handle_selection_event.
1459 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
1460
9c3ad9e1
JD
14612004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1462
1463 * xselect.c (TRACE3): New debug macro.
1464 (x_reply_selection_request): Use it.
1465 (receive_incremental_selection): In call to TRACE0, the name of
1466 a symbol is in xname.
1467
a33b89de
KS
14682004-11-05 Kim F. Storm <storm@cua.dk>
1469
1470 * fontset.c (fontset_pattern_regexp): Use unsigned char.
1471
a872928c
JD
14722004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1473
88208bb8
JD
1474 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
1475
78819ebb 1476 * gtkutil.h (use_old_gtk_file_dialog): Declare.
0a4f23f3
JD
1477
1478 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
32e2fb04 1479 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
0a4f23f3
JD
1480 * xfns.c (syms_of_xfns): ... to here.
1481
a872928c
JD
1482 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
1483 it doesn't start with /.
1484
b912921c
KH
14852004-11-04 Kenichi Handa <handa@m17n.org>
1486
1487 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
1488 treat it as a literal character.
1489
c524d9a6
KS
14902004-11-03 Kim F. Storm <storm@cua.dk>
1491
1492 * .gdbinit (ppt): New function.
1493
8cfd0f36
JD
14942004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1495
a11e1dce
JD
1496 * xterm.c (x_window_to_scroll_bar): Only call
1497 xg_get_scroll_id_for_window if toolkit scroll bars are used.
1498
8cfd0f36
JD
1499 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
1500 of save.
1501
a93563fd
AS
15022004-11-02 Andreas Schwab <schwab@suse.de>
1503
1504 * window.c (Fscroll_right): Fix last change.
1505
2b2d59d8
KS
15062004-11-02 Kim F. Storm <storm@cua.dk>
1507
1508 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
1509
15102004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1511
1512 * callproc.c (Fcall_process): Block input around vfork.
1513
ca28104d
KS
15142004-11-02 Kim F. Storm <storm@cua.dk>
1515
1516 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
1517 (syms_of_eval): Defsubr it.
1518
29bb7127
RS
15192004-11-02 Richard M. Stallman <rms@gnu.org>
1520
1521 * insdel.c (replace_range_2): New function.
1522
1523 * casefiddle.c (casify_region): Handle changes in byte-length
1524 using replace_range_2.
1525
1526 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
1527
b6189c3b 1528 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
1529 Subtract 1 from pos when checking previous newline for invisibility.
1530
1531 * window.c (window_scroll_pixel_based): Update preserve_y
1532 for header line if any.
1533 (Fscroll_left, Fscroll_right): Don't call interactive_p;
1534 use a new second argument instead.
1535
1536 * eval.c (Fcall_interactive_p): New function.
1537 (interactive_p): Don't test INTERACTIVE here.
1538 (Finteractive_p): Doc fix.
1539
1540 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
1541
b6189c3b 15422004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
1543
1544 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 1545 comparing font names.
a3fe4aaf 1546
2a00cdb4
JD
15472004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1548
f9d64bb3
JD
1549 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
1550 Fx_file_dialog if only directories should be read.
1551
1552 * lisp.h: Fx_file_dialog takes 5 parameters.
1553
32e2fb04
SM
1554 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
1555 Add parameter only_dir_p.
f9d64bb3
JD
1556 In Motif version, don't put DEFAULT_FILENAME in filter part of the
1557 dialog, just text field part. Do not add DEFAULT_FILENAME
1558 to list of files if it isn't there.
1559 In GTK version, pass only_dir_p parameter to xg_get_file_name.
1560
32e2fb04
SM
1561 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
1562 Check only_dir_p instead of comparing prompt to "Dired". When using
f9d64bb3
JD
1563 a save dialog, add option kNavDontConfirmReplacement, change title
1564 to "Enter name", change text for save button to "Ok".
1565
32e2fb04
SM
1566 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
1567 Check only_dir_p instead of comparing prompt to "Dired".
f9d64bb3
JD
1568
1569 * gtkutil.c (xg_get_file_with_chooser)
1570 (xg_get_file_with_selection): New functions, only defined ifdef
1571 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
1572 respectively.
1573 (xg_get_file_name): Add parameter only_dir_p.
1574 Call xg_get_file_with_chooser or xg_get_file_with_selection
1575 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
1576 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
1577
1578 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
1579
2a00cdb4
JD
1580 * config.in: Rebuild (added HAVE_GTK_FILE_*).
1581
f6749d5d
KS
15822004-11-01 Kim F. Storm <storm@cua.dk>
1583
32e2fb04
SM
1584 * process.c (connect_wait_mask, num_pending_connects):
1585 Only declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 1586 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
1587 (IF_NON_BLOCKING_CONNECT): New helper macro.
1588 (wait_reading_process_output): Only declare and use local vars
1589 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 1590
1a99fe1a
JR
15912004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
1592
1593 * w32term.c (x_scroll_run): Delete region objects after use.
1594
fcdb28b4
JD
15952004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1596
495ef86b
JD
1597 * xmenu.c: Add prototypes for forward function declarations.
1598 (popup_get_selection): Remove parameter do_timers, remove call to
1599 timer_check.
32e2fb04
SM
1600 (create_and_show_popup_menu, create_and_show_dialog):
1601 Remove parameter do_timers from call to popup_get_selection.
495ef86b 1602
12e6566a
JD
1603 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
1604 tool_bar_items and assign the result to f->tool_bar_items if
1605 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
1606 tool_bar_items to assignment of result.
1607
fcdb28b4
JD
1608 * atimer.c (alarm_signal_handler): Do not call set_alarm if
1609 pending_atmers is non-zero.
1610
1a1a0c4c
KS
16112004-10-31 Kim F. Storm <storm@cua.dk>
1612
1613 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
1614
a36f1680
JW
16152004-10-28 Will <will@glozer.net>
1616
1617 * macterm.c: allow user to assign key modifiers to the Mac Option
1618 key via a 'mac-option-modifier' variable.
1619
32e2fb04 16202004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2d586478
SM
1621
1622 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
1623 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
1624 (x_handle_selection_request, x_handle_selection_clear)
1625 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
1626
4f71c13f
RS
16272004-10-28 Richard M. Stallman <rms@gnu.org>
1628
1629 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
1630
1631 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
1632
068f3848
SM
16332004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
1634
1635 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
1636 comment-starter over a 1-char one.
1637
4660a9e3
RS
16382004-10-27 Richard M. Stallman <rms@gnu.org>
1639
1640 * xdisp.c (get_next_display_element): In mode lines,
1641 treat newline and tab like other control characters.
1642
1643 * editfns.c (Fmessage): Doc fix.
1644
1645 * indent.c (vmotion): When moving up, check the newline before.
1646 Make prevline an int, not a Lisp_Object.
1647
233f3db6
KS
16482004-10-27 Kim F. Storm <storm@cua.dk>
1649
1650 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
1651 Only allocate info and discarded tables once.
1652
1653 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
1654 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
1655 (SAFE_FREE): Test it to determine if we need to unwind to free.
1656 Remove size arg. All users changed.
1657 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
1658
1442465d
JD
16592004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1660
1661 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
1662 (xg_destroy_widgets): Rename from remove_from_container.
1663 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
1664 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
1665 instead of remove_from_container.
1666 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
1667 (free_frame_tool_bar): Add comment.
1668
1669 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
1670 is not NULL before strcmp.
1671
c8636435
KS
16722004-10-26 Kim F. Storm <storm@cua.dk>
1673
1674 * callint.c (Fcall_interactively): Add 'U' code to get the
1675 up-event discarded by a previous 'k' or 'K' argument.
1676
5629f29b
DK
16772004-10-26 David Kastrup <dak@gnu.org>
1678
1679 * buffer.c (syms_of_buffer): Fix a few typos.
1680
4f2f546e
JD
16812004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1682
1683 * xsmfns.c: Put empty line between comment and function body.
1684 Use two spaces before comment end.
1685
fc1062f5
KH
16862004-10-25 Kenichi Handa <handa@m17n.org>
1687
1688 * fontset.c (fontset_pattern_regexp): Optimize for the case that
1689 PATTERN is full XLFD.
1690
be13f5e5
KH
16912004-10-24 Kenichi Handa <handa@m17n.org>
1692
1693 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
1694
1695 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
1696 (regex_compile): Return REG_ERANGEX if appropriate.
1697
d0ee2ed3
KH
16982004-10-22 Kenichi Handa <handa@m17n.org>
1699
1700 * editfns.c (Ftranslate_region_internal): New function.
1701 (syms_of_editfns): Defsubr it.
1702
63ea8ea5
JD
17032004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1704
1705 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
1706
c27ed90a
JD
17072004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
1708
068f3848
SM
1709 * xterm.h (x_output): New member `xic_base_fontname'.
1710 (FRAME_XIC_BASE_FONTNAME): New macro.
1711 (xic_free_xfontset): Declare.
c27ed90a 1712
068f3848
SM
1713 * xfns.c (xic_create_xfontset): Share fontsets between frames
1714 based on base_fontname.
1715 (xic_free_xfontset): New function.
1716 (free_frame_xic): Use it.
1717 (xic_set_xfontset): Ditto.
c27ed90a 1718
068f3848 1719 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
1720
1721
59508699
JR
17222004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
1723
1724 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
1725
dede2792
JD
17262004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1727
3aca2078
JD
1728 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
1729 XSync.
1730
dede2792
JD
1731 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
1732 New variables and constant.
1733 (main): Calculate heap_bss_diff. If we are dumping and the
1734 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
1735 and exec ourself again.
1736 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
1737 print a warning.
1738
1739 * lastfile.c: Make my_endbss and my_endbss_static available on all
1740 platforms.
1741
1742 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
1743 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
1744
1dc5ba01
LT
17452004-10-19 Luc Teirlinck <teirllm@auburn.edu>
1746
1747 * data.c (Flocal_variable_if_set_p): Doc fix.
1748
950090be
JR
17492004-10-19 Jason Rumney <jasonr@gnu.org>
1750
1751 * w32.c (init_environment): Set emacs_dir correctly when running
1752 emacs from the build directory.
1753
8550b998
RS
17542004-10-19 Richard M. Stallman <rms@gnu.org>
1755
1756 * editfns.c (Fdelete_and_extract_region):
1757 If region is empty, return null string.
1758
08dedea6
JD
17592004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1760
1dc5ba01 1761 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 1762 and canon_width.
068f3848 1763 (xg_frame_cleared): Remove.
08dedea6 1764
068f3848
SM
1765 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
1766 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
1767 (xg_create_scroll_bar): Put an event box widget between
1768 the scroll bar widget and the edit widget.
1769 (xg_show_scroll_bar): Show the parent widget (the event box).
1770 (xg_remove_scroll_bar): Destroy parent (the event box) also.
1771 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
1772 Move the parent (the event box) widget inside the fixed widget.
1773 Move window clear to xterm.c.
1774
068f3848 1775 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 1776
08dedea6 1777 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
1778 (x_scroll_bar_create, XTset_vertical_scroll_bar):
1779 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
1780 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
1781
8550b998 17822004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
1783
1784 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 1785
84338890
JD
17862004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1787
1788 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
1789 gdk_window_clear and move gdk_window_process_all_updates after
1790 clear so events are sent to the X server in correct order.
1791
6e1b0d8c
KH
17922004-10-18 Kenichi Handa <handa@m17n.org>
1793
1794 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
1795 comparing font names.
8550b998 1796 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
1797 (list_fontsets): Likewise.
1798
1799 * search.c (fast_string_match_ignore_case): New function.
1800
1801 * lisp.h (fast_string_match_ignore_case): Extern it.
1802
345e75a8
KS
18032004-10-17 Kim F. Storm <storm@cua.dk>
1804
1805 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
1806 than bitmap if there is not left fringe.
1807 (get_overlay_arrow_glyph_row): Also used on windows system.
1808 (display_line): Display overlay string if no left fringe.
1809
be13cbb7
JR
18102004-10-16 Jason Rumney <jasonr@gnu.org>
1811
1812 * w32fns.c (w32_font_match): Encode font name being matched.
1813
c2e2ede7
RS
18142004-10-16 Richard M. Stallman <rms@gnu.org>
1815
1816 * window.c (Fspecial_display_p): Doc fix.
1817
3584d95d
SM
18182004-10-15 Stefan <monnier@iro.umontreal.ca>
1819
1820 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
1821 Don't ignore menus, because where-is-internal already does it for us.
1822
699a0392
KS
18232004-10-15 Kim F. Storm <storm@cua.dk>
1824
b3c7a89b
KS
1825 * xdisp.c (redisplay_window): Only update fringes and vertical
1826 border on window frames.
699a0392 1827
4e382b0f
AS
18282004-10-14 Andreas Schwab <schwab@suse.de>
1829
1830 * m/ia64.h (DATA_SEG_BITS): Don't define.
1831
329a7be2
KS
18322004-10-14 Kim F. Storm <storm@cua.dk>
1833
1834 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 1835 in some X versions.
329a7be2 1836
982241b1
SM
18372004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
1838
1839 * fns.c (map_char_table): Add missing gcpros.
1840
9238467d
SM
18412004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
1842
1843 * keymap.c (get_keymap): An autoload form is not a keymap.
1844
1845 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
1846
4440e3ca
KS
18472004-10-13 Kim F. Storm <storm@cua.dk>
1848
7cfdabde
KS
1849 * callproc.c (Fcall_process): Simplify handling of display arg.
1850 Resume `display_on_the_fly' once a coding system is determined.
1851
4440e3ca
KS
1852 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
1853
1c8dec6a
KS
18542004-10-12 Kim F. Storm <storm@cua.dk>
1855
1856 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
1857 caller, such as call-process, is not going to poll for input.
1858 (calc_line_height_property): Handle case where it->object is nil.
1859
1860 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
1861
170b174c
KH
18622004-10-12 Kenichi Handa <handa@m17n.org>
1863
9238467d
SM
1864 * xdisp.c (get_next_display_element):
1865 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
1866 chars in octal in unibyte buffer.
1867
b583964c
KS
18682004-10-12 Kim F. Storm <storm@cua.dk>
1869
1870 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
1871 are no ordinary bindings.
1872
29fabd8c
JD
18732004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1874
9238467d 1875 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 1876
c3f4c690
ST
18772004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1878
9238467d
SM
1879 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
1880 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 1881 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
1882 terminal frame.
1883 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
1884 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
1885 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
1886 Make a cancel file-open dialog be like C-g.
9238467d
SM
1887 * mac.c (mktime): Use emacs_mktime.
1888 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
1889 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 1890
9688f9eb
KS
18912004-10-10 Kim F. Storm <storm@cua.dk>
1892
1893 * keyboard.c (timer_resume_idle): New function to resume idle
1894 timer without resetting timers on the idle list.
1895 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
1896 (timer_start_idle, timer_stop_idle): Declare static.
1897 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
1898
1899 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
1900
f7f3a65f
ST
19012004-10-08 Steven Tamm <steventamm@mac.com>
1902
9238467d 1903 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 1904 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 1905 NULL where 0 should be used.
f7f3a65f
ST
1906 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
1907 objc/malloc.h
9238467d 1908 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 1909
3c7d999a
KS
19102004-10-07 Kim F. Storm <storm@cua.dk>
1911
1912 * xdisp.c (redisplay_window): Fix flicker on vertical line between
1913 windows. Update vertical line after drawing window fringes, but
1914 only if actually drawing any bitmaps--or there is no fringe.
1915
1916 * xterm.c (x_update_window_end): Likewise.
1917 * macterm.c (x_update_window_end): Likewise.
1918 * w32term.c (x_update_window_end): Likewise.
1919
1920 * fringe.c (draw_window_fringes): Return value now indicates if
1921 any fringe bitmaps were redrawn (or there are no fringes).
1922
1923 * dispextern.h (draw_window_fringes): Update prototype.
1924
bf06c82f
ST
19252004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1926
1927 * macfns.c (mac_get_window_bounds): Add extern.
1928 (x_real_positions): Use mac_get_window_bounds.
1929
1930 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
1931 xmenu.c (YAILOM).
3c7d999a 1932
bf06c82f
ST
1933 * macterm.c [!MAC_OSX]: Include Windows.h.
1934 (front_emacs_window): Rename from mac_front_window. All uses
1935 changed. Return the frontmost non-tooltip emacs window.
1936 (mac_get_window_bounds): New function.
1937 (x_calc_absolute_position): Use the difference of width and height
1938 between the inner and outer window.
1939 (x_set_offset): Specify window position by the coordinae of the
1940 outer window. Adjust the position if the title bar is completely
1941 outside the screen.
1942 (app_is_suspended, app_sleep_time): Remove unused variables.
1943 (do_app_resume, do_app_suspend): Remove their contents because
1944 window-activate/deactivate events will do the job.
1945 (do_zoom_window): Remove unused variables. Make compliant to the
1946 standard way of zooming. Set f->left_pos and f->top_pos.
1947 (XTread_socket): Don't use argument `expected'. Don't use
1948 FrontWindow to determine the clicked window. Exclude unprocessed
1949 mouseUp cases in the early stage. Add parentheses to fix operator
1950 precedence.
1951 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
1952
4cbbf6b7 19532004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
1954
1955 * config.in: Regenerate.
1956
1957 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
1958 HAVE_EXECSHIELD.
1959
b90ee8b5
JD
19602004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1961
1962 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
1963 a row if Alt or Meta has been found for that row. Also stop scanning
1964 for Keysyms for that row.
1965
904db1a2
KS
19662004-10-04 Kim F. Storm <storm@cua.dk>
1967
0207b8ad
KS
1968 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
1969 to list. Include overlay arrow bitmap in return value.
1970
25f7220c
KS
1971 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
1972 bars with fractional column width. If scroll bar separates two
1973 windows, move it towards the window it belongs to. Only update
1974 the padding area below the scroll bar widget when necessary,
1975 i.e. when scroll bar widget is created, moved, or resized.
1976
562020fe
KS
1977 * xdisp.c (define_frame_cursor1): Do not change frame cursor
1978 while tracking/dragging mouse.
1979 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
1980
37e34af7
KS
1981 * window.c (coordinates_in_window): Relax check for cursor
1982 on vertial border between mode lines.
1983 (Fset_window_fringes): Do not allow negative widths.
1984 (Fset_window_scroll_bars): Likewise.
1985
904db1a2
KS
1986 * .gdbinit (pp): Shorthand for p ARG + pr.
1987 (ff): New command: flush frame updates (X only).
1988
38fe4f64
MA
19892004-10-03 Michael Albinus <michael.albinus@gmx.de>
1990
1991 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
1992
9de36315
KH
19932004-09-30 Kenichi Handa <handa@m17n.org>
1994
07c381ad 1995 * process.c (send_process): Free composition data.
9de36315 1996
07c381ad 1997 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
1998
1999 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
2000 compositions to encode.
2001 (encode_coding_string): Likewise. Free composition data.
2002
b6189c3b 20032004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
2004
2005 * coding.c (code_convert_region): Free composition data.
9de36315 2006
f2a54fbc
KS
20072004-09-29 Kim F. Storm <storm@cua.dk>
2008
dc5d6435
KS
2009 * fringe.c: Remove limit on number of bitmaps.
2010 (fringe_bitmaps, fringe_faces): Change to pointers.
2011 (max_fringe_bitmaps): New var.
2012 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
2013 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
2014
2015 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
2016 (struct glyph_row): Reorder fringe_bitmap related fields.
2017 (struct it): Likewise.
2018
2019 * w32term.c (fringe_bmp): Change to pointer.
2020 (max_fringe_bmp): New var.
2021 (w32_define_fringe_bitmap): Expand fringe_bmp.
2022 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
2023 (w32_destroy_fringe_bitmap): Likewise.
2024
20252004-09-29 Kim F. Storm <storm@cua.dk>
2026
2027 * fringe.c: Simplify last change.
f2a54fbc
KS
2028 (lookup_fringe_bitmap): New function.
2029 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
2030 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
2031 Keep standard bitmaps in Vfringe_bitmaps.
2032 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
2033 (Fset_fringe_bitmap_face): Likewise.
2034
2035 * dispextern.h (lookup_fringe_bitmap): Add prototype.
2036 (valid_fringe_bitmap_p): Remove prototype.
2037
2038 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
2039
841a8bca
KS
20402004-09-29 Kim F. Storm <storm@cua.dk>
2041
1f2da365
KS
2042 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
2043 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
2044
841a8bca
KS
2045 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
2046
2047 * fringe.c (Vfringe_bitmaps): New variable.
2048 (syms_of_fringe): DEFVAR_LISP it.
2049 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
2050 Change arg to Lisp_Object and fail if not an integer.
2051 (get_fringe_bitmap_name, resolve_fringe_bitmap)
2052 (destroy_fringe_bitmap): New functions.
9238467d
SM
2053 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
2054 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
2055 clear its fringe property.
2056 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
2057 Fdestroy_fringe_bitmap.
2058 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
2059 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
2060 and set fringe property. Signal error if no free slots.
2061 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
2062 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
2063
2064 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
2065 symbols with a fringe property.
2066
4d965590
KS
20672004-09-27 Kim F. Storm <storm@cua.dk>
2068
2069 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
2070 Doc fix. Format may now be a symbol or alist, not a cons.
2071
2072 * fringe.c (update_window_fringes): Handle new formats of
2073 indicate-buffer-boundaries (symbol or alist). No longer
2074 allow a simple cons.
2075 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
2076
e888c2b3
JD
20772004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2078
9238467d 2079 * config.in: Rebuild.
e888c2b3 2080
83f1cb94
JD
20812004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2082
2083 * config.in: Rebuild.
2084
dd3b1d60 2085 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 2086
2c51754c
SM
20872004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
2088
2089 * xterm.c (x_term_init): Work around a bug in some X servers.
2090
3df5f8aa
RS
20912004-09-18 Richard M. Stallman <rms@gnu.org>
2092
557ca2c1
RS
2093 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
2094
3df5f8aa
RS
2095 * xdisp.c (try_window_reusing_current_matrix):
2096 Handle the case where we reach the old displayed text,
2097 out of sync with the old line boundary.
2098
9238467d 20992004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
2100
2101 * fileio.c (Finsert_file_contents): Fix case of replacement in a
2102 narrowed buffer.
2103
bfa02563
KS
21042004-09-14 Kim F. Storm <storm@cua.dk>
2105
a25fe164
KS
2106 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
2107
bfa02563
KS
2108 * xfaces.c (Qface_no_inherit): New var.
2109 (syms_of_xfaces): Intern and staticpro it.
2110 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
2111 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
2112 Don't increment face_change_count when face has non-nil
2113 face-no-inherit property.
2114
126f9c02
SM
21152004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
2116
892a8eb5
SM
2117 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
2118 (Fbyte_code): Remove dead code after `wrong_type_argument'.
2119
126f9c02 2120 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 2121 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 2122
c0ad3b38
KS
21232004-09-12 Kim F. Storm <storm@cua.dk>
2124
2125 * editfns.c (Fformat): Handle format strings with multiple text
2126 properties. Reverse text property list from the format string,
2127 so the positions are in increasing order.
2128
844fc085
JD
21292004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2130
2131 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
2132 x_uncatch_errors so that possible protocol errors are delivered.
2133
b106731c
EZ
21342004-09-10 Eli Zaretskii <eliz@gnu.org>
2135
21065c92
EZ
2136 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
2137 blockinput.h.
2138 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
2139 charset.h, and coding.h
9238467d 2140 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
2141 (term.o): Depend on window.h and keymap.h.
2142 (abbrev.o): Depend on syntax.h.
2143 (callint.o): Depend on keymap.h.
2144 (casefiddle.o): Depend on charset.h and keymap.h.
2145 (category.o): Depend on keymap.h.
2146 (coding.o): Depend on dispextern.h.
2147 (cmds.o): Depend on keyboard.h and keymap.h.
2148 (dispnew.o): Depend on indent.h and intervals.h.
2149 (doc.o): Depend on keymap.h.
2150 (editfns.o): Depend on frame.h.
2151 (emacs.o): Depend on dispextern.h.
2152 (fileio.o): Don't depend on ccl.h.
2153 (filelock.o): Depend on charset.h and coding.h.
2154 (frame.o): Depend on w32term.h and macterm.h.
2155 (insdel.o): Depend on region-cache.h.
2156 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
2157 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
2158 (search.o): Depend on $(INTERVALS_SRC).
2159 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
2160 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
2161 xterm.h, w32term.h, and macterm.h.
2162 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
2163 w32term.h, and macterm.h.
2164 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
2165 region-cache.h, xterm.h, w32term.h, and macterm.h.
2166 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
2167 (data.o): Depend on frame.h.
2168 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
2169 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
2170 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
2171 (intervals.o): Depend on keymap.h.
2172
9238467d
SM
2173 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
2174 Add debugging print-out to termscript.
b106731c 2175
64b7122d
RS
21762004-09-09 Richard M. Stallman <rms@gnu.org>
2177
2178 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
2179
5670531e
RS
21802004-09-08 Richard M. Stallman <rms@gnu.org>
2181
6cb4a892
RS
2182 * window.c (Fset_window_buffer): Doc fix.
2183
5670531e
RS
2184 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
2185
7e388eb7
JL
21862004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
2187
2188 * minibuf.c (history_delete_duplicates): New variable.
2189 (read_minibuf): Use it.
2190 (syms_of_minibuf): Create the corresponding lisp variable.
2191
370e3587
KS
21922004-09-08 Kim F. Storm <storm@cua.dk>
2193
2194 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
2195 overlay just before point.
2196
f844ba4e
LT
21972004-09-07 Luc Teirlinck <teirllm@auburn.edu>
2198
2199 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
2200 * buffer.c (reset_buffer, init_buffer_once):
2201 Handle auto_save_file_format field.
f844ba4e
LT
2202 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
2203 `buffer-auto-save-file-format'.
f844ba4e
LT
2204 * fileio.c: Delete declaration for removed Vauto_save_file_format.
2205 (build_annotations): Adapt to replacement of
2206 `auto-save-file-format' with the new buffer-local variable
2207 `buffer-auto-save-file-format'.
2208 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
2209
f0f90717
JR
22102004-09-07 Jason Rumney <jasonr@gnu.org>
2211
2212 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
2213
9238467d
SM
2214 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
2215 Handle Unicode menu titles.
f0f90717 2216
4e14f66c
KS
22172004-09-07 Kim F. Storm <storm@cua.dk>
2218
2219 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
2220 property from text property or overlay strings at point.
2221
9238467d 22222004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
2223
2224 * xmenu.c (update_submenu_strings): YAILOM.
2225 (set_frame_menubar): Make sure last_i is initialized.
2226
1f06d367
JR
22272004-09-03 Jason Rumney <jasonr@gnu.org>
2228
1806714a 2229 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
2230 (digest_single_submenu): Set lname and lkey in widget_value
2231 instead of name and key.
2232 (update_submenu_strings): New function.
2233 (set_frame_menubar): Remove call to inhibit_garbage_collection,
2234 call update_submenu_strings.
2235
2236 * w32menu.c (globals_of_w32menu): Check for Unicode API.
2237 (digest_single_submenu, w32_menu_show): Encode menu strings as
2238 UTF-8 if Unicode API is available.
2239 (utf8to16): New function.
2240 (add_menu_item): Use it when calling Unicode API.
1806714a 2241
46540080
KS
22422004-09-03 Kim F. Storm <storm@cua.dk>
2243
2244 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
2245 in overlay or text-property strings; set cursor on corresponding
2246 glyph rather than at end of the string.
2247
9277ba61 22482004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 2249
9277ba61 2250 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
2251 set a new one before obtaining the global coordinate.
2252 Use FRAME_MAC_WINDOW.
2253 (x_set_name, x_set_title): Encode title to UTF8.
2254 Use SetWindowTitleWithCFString.
9277ba61
ST
2255 (Fx_server_version): Get correct OS version.
2256
1806714a
SM
2257 * macmenu.c (add_menu_item): Remove unused variable `i'.
2258 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
2259
2260 * macterm.c (x_update_end): Move SetPortWindowPort to inside
2261 BLOCK_INPUT.
2262 (x_set_offset): Use FRAME_MAC_WINDOW.
2263
2264 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
2265 nontext_cursor if it is on a scroll bar.
2266
2267 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
2268 Carbon support.
1806714a
SM
2269 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
2270 Use LIBS_CARBON.
9277ba61 2271
b10daec7
JD
22722004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2273
2274 * xfns.c (x_set_name_internal): New function. Check if we shall call
2275 xfree before ENCODE_UTF_8.
2276 (x_set_name, x_set_title): Call x_set_name_internal.
2277
f7e22385
JR
22782004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
2279
2280 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
2281 reload it.
2282
2bf436c3
JD
22832004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2284
1806714a 2285 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
2286 (single_submenu): Set lname and lkey in widget_value
2287 instead of name and key.
2288 (update_submenu_strings): New function.
2289 (set_frame_menubar): Remove call to inhibit_garbage_collection,
2290 call update_submenu_strings.
2291
2bf436c3
JD
2292 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
2293 instead of name and key.
2294 (update_submenu_strings): New function.
2295 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 2296 call update_submenu_strings.
2bf436c3
JD
2297
2298 * gtkutil.h (_widget_value): Added lname and lkey.
2299
11715f92
ST
23002004-08-30 Steven Tamm <steventamm@mac.com>
2301
2302 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
2303 by using different names for inner loop variables.
2304
5500be54
JD
23052004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2306
059cd329
JD
2307 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
2308 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
2309
5500be54
JD
2310 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
2311 tool bar items is 0.
2312
383418e5
ST
23132004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2314
2315 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
2316 strings in menu items.
2317 (single_submenu): Use ENCODE_MENU_STRING
2318 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
2319 button release isn't passed to event loop
2320 (add_menu_item): Use SetMenuItemWithCFString
2321
6eb3ee72
ST
23222004-08-26 Steven Tamm <steventamm@mac.com>
2323
2324 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
2325 tool-bar/menu click
2326 * macfns.c (Fx_file_dialog): Implemented using NavServices
2327
10b43ac3
JD
23282004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2329
2728b5d0
JD
2330 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
2331
10b43ac3
JD
2332 * xfns.c (x_window_to_frame, x_any_window_to_frame)
2333 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
2334 (x_top_window_to_frame): Return 0 if wdesc is None.
2335
2ee3b79e
RS
23362004-08-22 Richard M. Stallman <rms@gnu.org>
2337
2338 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
2339 HAVE_TERMIOS]: If there's no char for this signal, drop through
2340 and use system calls.
2341
2342 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
2343
9a1ba2ea
KS
23442004-08-20 Kim F. Storm <storm@cua.dk>
2345
2346 * process.c (wait_reading_process_output): Rename from
2347 wait_reading_process_input. All uses changed.
2348 (wait_reading_process_output_1): Rename from
2349 wait_reading_process_input_1. All uses changed.
2350
2351 * dispnew.c (Fsleep_for): Remove obsolete code.
2352
295f3b30
KH
23532004-08-20 Kenichi Handa <handa@m17n.org>
2354
2355 * syntax.c (skip_chars): Fix for unibyte case.
2356
27615979
SM
23572004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
2358
2359 * syntax.c (char_quoted): Mixup byte/char pos.
2360 (back_comment): Fixup globals in all cases.
2361
00267f94
JD
23622004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2363
2364 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
2365 passing it to gtk_window_set_title.
2366
2439909e
KS
23672004-08-19 Kim F. Storm <storm@cua.dk>
2368
6ba0f14c
KS
2369 * process.c (wait_reading_process_input): Clean up.
2370 Add wait_for_cell, wait_proc, and just_wait_proc args
2371 to avoid overloading `read_kbd' and `do_display' args.
2372 Change read_kbd arg to int. All callers changed.
2373
2439909e
KS
2374 * process.c (process_send_signal): Use CDISABLE.
2375
2376 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
2377
101c421e
KS
23782004-08-18 Kim F. Storm <storm@cua.dk>
2379
2380 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
2381 forward to wait_reading_process_input via DO_DISPLAY arg.
2382 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
2383 object, only process output from that process; also inhibit
2384 running timers if DO_DISPLAY==-2.
2385
c438dc33
KS
23862004-08-17 Kim F. Storm <storm@cua.dk>
2387
2388 * process.c (process_send_signal): Fix last change--use
2389 _POSIX_VDISABLE instead of CVDISABLE when available.
2390
8afc13c6
RS
23912004-08-16 Richard M. Stallman <rms@gnu.org>
2392
2393 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
2394 Set VQUIT and VINTR chars to the standard ones if they are unset.
2395 [AIX]: Don't do that here. And don't force VINTR to standard
2396 when SIGNALS_VIA_CHARACTERS.
2397
c438dc33 2398 * process.c (process_send_signal)
8afc13c6
RS
2399 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
2400 Do nothing if the character is CVDISABLE.
2401
2402 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
2403
c438dc33 2404 * intervals.c (move_if_not_intangible):
8afc13c6
RS
2405 Force POSITION to be between BEGV and ZV.
2406
6dad1714
JPW
24072004-08-14 John Paul Wallington <jpw@gnu.org>
2408
2409 * buffer.c (Frestore_buffer_modified_p): Doc fix.
2410
2411 * fileio.c (Fread_file_name): Doc fix.
2412
2413 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
2414
2bd77330
LT
24152004-08-09 Luc Teirlinck <teirllm@auburn.edu>
2416
2417 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
2418
c90e7e43
LT
24192004-08-08 Luc Teirlinck <teirllm@auburn.edu>
2420
2421 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 2422 Qdisabled_command_hook.
c90e7e43 2423 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 2424 Qdisabled_command_hook.
c90e7e43
LT
2425 (syms_of_keyboard): Ditto.
2426
81909a1a
LT
24272004-08-07 Luc Teirlinck <teirllm@auburn.edu>
2428
2429 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
2430 (syms_of_keymap) <key-translation-map>: Doc fixes.
2431
0cedd530
SM
24322004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
2433
1725a7c9
SM
2434 * window.c (window_list_1): YAILOM.
2435
0cedd530
SM
2436 * fileio.c (make_temp_name): Handle multibyte prefixes.
2437
2515a131
LT
24382004-08-06 Luc Teirlinck <teirllm@auburn.edu>
2439
2440 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
2441 Doc fix.
2442
c8b20fb7
KH
24432004-08-03 Kenichi Handa <handa@m17n.org>
2444
2445 * coding.c (decode_coding_string): Adjust coding->consumed, and
2446 etc. with shrinked_bytes.
2447
fb8b092b
KS
24482004-08-03 Kim F. Storm <storm@cua.dk>
2449
2450 * indent.c (compute_motion): Fix check for full width window
2451 in non-window case. Do not count left truncation glyph on
2452 window systems.
2453
df133612
LT
24542004-08-02 Luc Teirlinck <teirllm@auburn.edu>
2455
2456 * data.c (Finteractive_form): Doc fix.
2457
0f7a93c1
KS
24582004-08-02 Kim F. Storm <storm@cua.dk>
2459
2460 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
2461 properly accounting for continuation glyph on non-window systems.
2462 (Fcompute_motion): Use actual window width if WIDTH is nil, and
2463 actual window width/height if TOPOS is nil, properly accounting for
2464 continuation glyphs on non-window systems, and optional header lines.
2465 (vmotion): Let compute_motion calculate actual window width.
2466
2467 * window.c (window_scroll_line_based): Let compute_motion
2468 calculate actual window width.
2469
f491e1ed
KS
24702004-08-02 Kim F. Storm <storm@cua.dk>
2471
2472 * process.c (read_process_output): Use whole read buffer.
2473 Don't trigger adaptive read buffering on errors.
2474
83f64226
LT
24752004-07-31 Luc Teirlinck <teirllm@auburn.edu>
2476
2477 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
2478
2479 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
2480
2481 * callint.c (Fcall_interactively): Doc fix.
2482
8afc13c6
RS
24832004-07-30 Richard M. Stallman <rms@gnu.org>
2484
2485 * abbrev.c (Fexpand_abbrev): Undo previous change.
2486
7c111482
KS
24872004-07-30 Kim F. Storm <storm@cua.dk>
2488
2489 * editfns.c (Fformat): Allocate extra (dummy) element in info.
2490
ee945d08
LT
24912004-07-28 Luc Teirlinck <teirllm@auburn.edu>
2492
2493 * eval.c (Fdefvar, Fdefconst): Doc fixes.
2494
3f911c94
KS
24952004-07-27 Kim F. Storm <storm@cua.dk>
2496
2497 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
2498 we have ensured that the glyph fits on the current line (or returned
2499 MOVE_LINE_CONTINUED otherwise).
2500
f29ff8c7
KS
25012004-07-26 Kim F. Storm <storm@cua.dk>
2502
2503 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
2504 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
2505 if target position is at end of display line but char is not a newline.
2506
81159bb9
RS
25072004-07-25 Richard M. Stallman <rms@gnu.org>
2508
ab431b61
RS
2509 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
2510 instead of ON_VERTICAL_BORDER, when on scroll bar.
2511 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
2512
2513 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
2514
f29ff8c7 2515 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
2516 Take account of FRAME_INTERNAL_BORDER_WIDTH.
2517
2518 * alloc.c (check_cons_list): New function (contents commented out).
2519
fc820cc5
LT
25202004-07-24 Luc Teirlinck <teirllm@auburn.edu>
2521
2522 * xfaces.c (Fcolor_supported_p): Doc fix.
2523
2524 * frame.c (Fselect_frame, Fset_frame_selected_window)
2525 (Fframe_visible_p, Fraise_frame): Doc fixes.
2526
289978b5
LT
25272004-07-24 Richard M. Stallman <rms@gnu.org>
2528
78819ebb 2529 * keyboard.h (not_single_kboard_state): Declare.
7630911d
RS
2530
2531 * fileio.c (Fwrite_region): Doc fix.
2532
2533 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
2534
2535 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
2536 only when a real abbrev is present.
2537
289978b5
LT
2538 * xfns.c (x_icon_verify): New function.
2539 (Fx_create_frame): Use it.
2540
63cc10ae
KS
25412004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
2542
2543 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
2544
36f826d4
KS
25452004-07-21 Kim F. Storm <storm@cua.dk>
2546
2547 * window.h (struct glyph_matrix): New members nrows_scale_factor
2548 and ncols_scale_factor.
2549
2550 * window.c (make_window): Initialize nrows_scale_factor and
2551 ncols_scale_factor members.
2552
2553 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
2554 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
2555 (required_matrix_height): Apply nrows_scale_factor.
2556 (required_matrix_width): Apply ncols_scale_factor.
2557
2558 * xdisp.c (display_line): Increment nrows_scale_factor and set
2559 fonts_changed_p if past last allocated row.
2560 (append_glyph, append_composite_glyph, produce_image_glyph)
2561 (append_stretch_glyph): Increment ncols_scale_factor and set
2562 fonts_changed_p if current area is full.
2563
5fc1c546
JD
25642004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2565
2566 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
2567
cb7516e5
LT
25682004-07-19 Luc Teirlinck <teirllm@auburn.edu>
2569
2570 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
2571 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
2572 (Fset_window_start, Fscroll_up, Fscroll_down)
2573 (Fother_window_for_scrolling, Fscroll_other_window)
2574 (Fsave_window_excursion, Fset_window_vscroll)
2575 (syms_of_window) <window-size-fixed>: Doc fixes.
2576
b6189c3b 25772004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
2578
2579 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
2580 ENCODE_SYSTEM for filenames.
2581
bfcf6608
ST
25822004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2583
2584 * mac.c (sys_select): Block input around call to
2585 ReceiveNextEvent to prevent breakage. Correctly handle
2586 blocking on event queue only by calling ReceiveNextEvent
2587 instead of select (since GUI events aren't on an fd).
2588 (sys_read): Remove function
2589 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
2590
e082ac9d
ST
25912004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2592
2593 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 2594 polling instead of 1 sec timeouts (like solaris).
e082ac9d 2595
cb7516e5 2596 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
2597 frame creation.
2598
2599 * keyboard.c: Undef SIGIO on Carbon
2600
2601 * atimer.c (alarm_signal_handler): Call alarm handlers after
2602 scheduling.
2603
2604 * eval.c (Feval): Remove quit_char test
2605
2606 * process.c (wait_reading_process_input): Remove clearing
2607 stdin for select call on process input.
2608
4b9da0fb
LT
26092004-07-18 Luc Teirlinck <teirllm@auburn.edu>
2610
1204e81c
LT
2611 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
2612 capitalization error in docstring.
4b9da0fb 2613
26503ad2
JB
26142004-07-17 Juanma Barranquero <lektu@terra.es>
2615
2616 * keyboard.c (not_single_kboard_state): Do nothing unless
2617 MULTI_KBOARD is defined.
2618
3751eb00
RS
26192004-07-17 Richard M. Stallman <rms@gnu.org>
2620
2621 * window.c (coordinates_in_window): Inside the window but outside
2622 its box to the L or R, return ON_VERTICAL_BORDER.
2623 (window_list_1): Rotate the list to start with WINDOW.
2624
2625 * print.c (print_preprocess): Test for print_depth at limit
2626 before entering in being_printed.
2627
2628 * keyboard.c (not_single_kboard_state): New function.
2629 (stuff_buffered_input): Now no-op only if no SIGTSTP.
2630
2631 * frame.c (Fdelete_frame): If we're in single_bboard_state on
2632 this kboard, and we delete its last frame, go to any_kboard_state.
2633
2634 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
2635
b6189c3b 26362004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
2637
2638 * w32fns.c (Fx_file_dialog): Encode strings in system coding
2639 system before passing them to OS functions for display.
2640
0f6af254
DK
26412004-07-15 David Kastrup <dak@gnu.org>
2642
f9253326
KS
2643 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
2644 Apparently fixes an abort condition.
0f6af254 2645
386c8f42
LT
26462004-07-14 Luc Teirlinck <teirllm@auburn.edu>
2647
2648 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
2649 instead of a cons.
2650
366511da
MB
26512004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
2652
2653 * keyboard.c (echo_dash): Do nothing if there already is a dash
2654 at the end of the echo string.
2655
f85409d3
KS
26562004-07-12 Kim F. Storm <storm@cua.dk>
2657
2658 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
2659 if GC_MARK_STACK.
2660
0ba2e87b
LT
26612004-07-10 Luc Teirlinck <teirllm@auburn.edu>
2662
da38045d
LT
2663 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
2664
0ba2e87b
LT
2665 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
2666 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
2667 (Freplace_buffer_in_windows, Fset_window_buffer)
2668 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
2669 (syms_of_window): Expand docstring of `display-buffer-function'.
2670
5668fbb8
LT
26712004-07-09 Luc Teirlinck <teirllm@auburn.edu>
2672
2673 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
2674 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
2675 that time values of the type (HIGH . LOW) are considered obsolete.
2676
a085bf9d
LT
26772004-07-06 Luc Teirlinck <teirllm@auburn.edu>
2678
669de2fb
LT
2679 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
2680 docstring.
2681
bac66325 2682 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 2683
8e975df9
JPW
26842004-07-06 John Paul Wallington <jpw@gnu.org>
2685
2686 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
2687
fa164e6a
JPW
2688 * fns.c (Fclear_string): Signal an error if STRING is not a string.
2689
2bac9bb1
JD
26902004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2691
2692 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
2693 instead of CGMainDisplayID (only in OSX 10.2 and later).
2694
316ef0dc
JPW
26952004-07-04 John Paul Wallington <jpw@gnu.org>
2696
2697 * fileio.c (read_file_name_completion_ignore_case): New variable.
2698 (syms_of_fileio): Declare and initialise it.
2699 (Fread_file_name): Bind `completion-ignore-case' to respect it.
2700
2a1a35c6
EZ
27012004-07-03 Eli Zaretskii <eliz@gnu.org>
2702
2703 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
2704 for event.x and event.y.
2705
33a72331
KH
27062004-07-01 Kenichi Handa <handa@m17n.org>
2707
2708 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
2709 after getting a new string by pre-write-conversion.
2710
9238467d 27112004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
2712
2713 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
2714 (x_calc_absolute_position): Remove unused var `child'.
2715
2716 * xfaces.c (x_supports_face_attributes_p)
2717 (Fdisplay_supports_face_attributes_p): YAILOM.
2718 (tty_supports_face_attributes_p): Remove unused var `i'.
2719
2720 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
2721 back_unibyte_ok.
2722
2723 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
2724
2725 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
2726
2727 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
2728
f96ec754
AS
27292004-06-30 Andreas Schwab <schwab@suse.de>
2730
2731 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
2732 (Finit_image_library): Pass LIBRARIES through to
2733 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
2734 (lookup_image_type): Pass Qnil as second argument to
2735 Finit_image_library.
2736
78819ebb 2737 * lisp.h (Finit_image_library): Declare.
f96ec754 2738
59feca74 27392004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 2740
31983645
AS
2741 * macterm.c (do_window_activate, do_window_deactivate): Remove.
2742 (XTread_socket): Send mouse button events to the toolbox
2743 dispatcher even when the mouse is grabbed. Don't process window
2744 activate events for non-Emacs windows. Replace function calls to
2745 do_window_activate and do_window_deactivate with their contents.
2746 Reset mouse grabbing status when a window is deactivated.
59feca74 2747
c61278bb
ST
27482004-06-29 Steven Tamm <steventamm@mac.com>
2749
2750 * macterm.c (mac_get_emulated_btn)
2751 (mac_event_to_emacs_modifiers): Fix emulated mouse button
2752 support to correctly mask out modifiers.
2753
c3762cbd
DK
27542004-06-29 David Kastrup <dak@gnu.org>
2755
2756 * search.c (Fset_match_data): Allow buffer before end of list
2757 which can happen if set-match-data is using a pre-consed list.
2758
c61278bb 27592004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
2760
2761 * macterm.c (XTread_socket): Correctly set the frame position
2762 after the window is moved.
2763
74cdfe05
JD
27642004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2765
2766 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
2767 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
2768 (xg_get_image_for_pixmap): Add workaround for monochrome displays
2769 so insensitive and activated icons look ok.
74cdfe05 2770
ef544dc8
JR
27712004-06-27 Jason Rumney <jasonr@gnu.org>
2772
2773 * w32fns.c (file_dialog_callback): Disable edit control if set
2774 to directories only on CDN_INITDONE message.
2775 (Fx_file_dialog): Default to directories only when prompt starts
2776 with "Dired".
2777
7b7990cc
KS
27782004-06-25 Kim F. Storm <storm@cua.dk>
2779
2780 * alloc.c (allocate_misc): Update total_free_markers.
2781 (free_misc): New function.
2782 (safe_alloca_unwind, free_marker): Use it.
2783
2784 * lisp.h (free_misc): Add prototype.
2785
2786 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
2787
d8c379f8
RS
27882004-06-24 Richard M. Stallman <rms@gnu.org>
2789
2790 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
2791 (syms_of_emacs): Lisp variables deleted.
2792
559cdd07
DK
27932004-06-23 David Kastrup <dak@gnu.org>
2794
94939b84
DK
2795 * search.c (Freplace_match): Adjust the match-data more thoroughly
2796 when replacing strings in the buffer.
2797 (Fmatch_data): When INTEGERS is non-nil and the last match was in
2798 a buffer, add the buffer as last element to the match data.
2799 (Fset_match_data): If an additional element of the match-data is a
2800 buffer, restore it to last_thing_searched.
c8d09ad8 2801 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
2802 (restore_match_data): Restore it again.
2803
dce417e7
LT
28042004-06-23 Luc Teirlinck <teirllm@auburn.edu>
2805
2806 * keymap.c (Ftext_char_description): Doc fix.
2807 * doc.c (Fsnarf_documentation): Doc fix.
2808
ef54b2d0
KS
28092004-06-22 Kim F. Storm <storm@cua.dk>
2810
b5bc4d05
KS
2811 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
2812
ef54b2d0
KS
2813 * lisp.h (struct Lisp_Save_Value): New member dogc.
2814 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
2815 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
2816 (SAFE_FREE_LISP): New macro.
2817
2818 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
2819 (make_save_value): Init new dogc member.
2820 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
2821
2822 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
2823 SAFE_FREE_LISP macros.
2824
3d33d993
KS
28252004-06-22 Kim F. Storm <storm@cua.dk>
2826
2827 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
2828 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
2829 in that memory area are unknown to GC. Add comments.
2830
2831 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
2832
5c917f98
KS
28332004-06-21 Kim F. Storm <storm@cua.dk>
2834
2835 * lisp.h (MAX_ALLOCA): Define here.
2836 (safe_alloca_unwind): Add prototype.
2837 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
2838
2839 * alloc.c (safe_alloca_unwind): New function.
2840
2841 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
2842
2843 * charset.c (Fstring): Use SAFE_ALLOCA.
2844
2845 * coding.c (MAX_ALLOCA): Remove define.
2846
2847 * data.c (MAX_ALLOCA): Remove define.
2848 (Faset): Use SAFE_ALLOCA.
2849
2850 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
2851
2852 * fns.c (string_make_multibyte, string_to_multibyte)
2853 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
2854 (MAX_ALLOCA): Remove define.
2855 (Fbase64_encode_region, Fbase64_encode_string)
2856 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
2857 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
2858 memory leak if encoding fails.
2859
2860 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
2861
9a09408e
EZ
28622004-06-21 Eli Zaretskii <eliz@gnu.org>
2863
2864 * print.c (Fwith_output_to_temp_buffer): Doc fix.
2865
376de739
RS
28662004-06-20 Richard M. Stallman <rms@gnu.org>
2867
2868 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
2869
2870 * search.c (match_limit): Cleaner err msg when no match data available.
2871
2872 * window.c (syms_of_window): Doc fix.
2873
2874 * keyboard.c (command_loop_1): Handle values `only' and `identity'
2875 for Vtransient_mark_mode.
2876
2877 * buffer.c (syms_of_buffer): Doc fix.
2878
acd81db9
DK
28792004-06-21 David Kastrup <dak@gnu.org>
2880
2881 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
2882 and unbinding of `case-fold-search' according to
2883 `completion-ignore-case' around calls of string-match and
2884 predicates, respectively. Should give satisfactory performance
2885 in all relevant cases.
2886
f303762d
JD
28872004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2888
95911c74
JD
2889 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
2890 clip_x/y_origin.
2891
a6cb6b78
JD
2892 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
2893
f303762d
JD
2894 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
2895
2896 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
2897 on Mac OSX.
2898
bbdb2684
LT
28992004-06-16 Luc Teirlinck <teirllm@auburn.edu>
2900
2901 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
2902
5ea48b1c
KS
29032004-06-16 Kim F. Storm <storm@cua.dk>
2904
2905 * dispextern.h (Vimage_types): Remove extern.
2906
803aac3e
MB
29072004-06-16 Miles Bader <miles@gnu.org>
2908
2909 * image.c (lookup_image_type): Initialize image type if necessary.
2910
cdc97764
KS
29112004-06-15 Kim F. Storm <storm@cua.dk>
2912
c4a5739c
KS
2913 * xdisp.c (try_cursor_movement): Exclude header line from scroll
2914 margin at top of window.
2915 (try_window_reusing_current_matrix): Calculate proper cursor position
2916 after scrolling up with non-zero scroll margin, as the old cursor
2917 position corresponds to value of PT before executing this command.
2918 (try_window_id): Consider scroll margin at bottom of window too;
2919 otherwise we fail to scroll when hl-line-mode is enabled.
2920
cdc97764
KS
2921 * syntax.c (skip_chars): Only recognize [:class:] when it has the
2922 proper format and class is a lower-case word.
2923
5b166323
JD
29242004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2925
2926 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 2927 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
2928 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
2929 xg_get_gdk_pixmap_and_mask.
cdc97764 2930
5b166323
JD
2931 * xterm.h (struct x_display_info): Typo in comment fixed.
2932
1ebd4f78
JB
29332004-06-14 Juanma Barranquero <lektu@terra.es>
2934
2935 * dispextern.h (Vimage_types): Make it conditional on
2936 HAVE_WINDOW_SYSTEM.
2937
2938 * image.c (Vimage_types): Move from xdisp.c.
2939 (Vimage_type_cache): New variable.
2940 (define_image_type): New argument indicating whether an image
2941 library was loaded; cache loaded status and return t on success,
2942 nil otherwise.
2943 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
2944 (w32_delayed_load): New function to load an image library from a
2945 list of possible filenames.
2946 (init_xpm_functions, init_png_functions, init_jpeg_functions)
2947 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 2948 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
2949 (Finit_image_library): New function, extracted from `init_image'.
2950 Try to initialize an image library on demand and cache whether we
2951 were successful or not.
2952 (syms_of_image): Initialize `Vimage_types' and
2953 `Vimage_type_cache'. Add recognized image types to Vimage_types.
2954 Export `init-image-library'.
2955 (init_image): Remove initialization of all image types, except xbm
2956 and pbm.
2957
2958 * xdisp.c (Vimage_types): Delete (moved to image.c).
2959
904ee128
AS
29602004-06-14 Andreas Schwab <schwab@suse.de>
2961
2962 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
2963 Avoid calling specbind when completion-regexp-list is empty.
2964
092de21d
RS
29652004-06-13 Richard M. Stallman <rms@gnu.org>
2966
2967 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
2968 (re_wctype, re_iswctype, re_wctype_to_bit):
2969 Non-function definitions moved here from regex.c.
1ebd4f78 2970
092de21d
RS
2971 * regex.c (re_wctype, re_iswctype): Function defs longer static.
2972 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
2973 (re_wctype, re_iswctype, re_wctype_to_bit):
2974 Non-function definitions moved to regex.h.
2975
2976 * window.c (Fselect_window): Doc fix.
2977
2978 * syntax.c: Include regex.h.
2979 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
2980 If requested, make a list of classes, then check the scanned
2981 chars for membership in them.
2982 (in_classes): New function.
2983 Doc fix.
2984
2985 * keyboard.c (cmd_error): Don't call any_kboard_state
2986 if inside a recursive edit level.
2987
29882004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
2989
2990 * keyboard.c (command_loop): Call any_kboard_state before
2991 command_loop_2 when at top level.
2992
3ebc0939
AS
29932004-06-13 Andreas Schwab <schwab@suse.de>
2994
cea5d0d4
AS
2995 * print.c (print_object): Always use %ld for printing EMACS_INT.
2996
2997 * keyboard.c (cancel_hourglass_unwind): Return a value.
2998 (modify_event_symbol): Always use %ld for printing EMACS_INT.
2999 (Fexecute_extended_command): Likewise.
3000
3001 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
3002 avoid clashes.
3003 (SYNTAX): Likewise.
3004 (SYNTAX_WITH_FLAGS): Likewise.
3005 (SYNTAX_MATCH): Likewise.
3006
3007 * syntax.c (char_quoted): Avoid warning about undefined operation.
3008 (find_defun_start): Likewise.
3009 (scan_lists): Likewise.
3010 (INC_FROM): Likewise.
3011 (scan_sexps_forward): Likewise.
3012
be8c4ce4
AS
3013 * image.c: Include <ctype.h>.
3014
3ebc0939
AS
3015 * xfaces.c (face_attr_equal_p): Declare parameters.
3016
6fb41b5b
KH
30172004-06-13 Kenichi Handa <handa@m17n.org>
3018
3019 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
3020
fc3095ce
EZ
30212004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
3022
3023 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
3024
66189a40
KH
30252004-06-12 Kenichi Handa <handa@m17n.org>
3026
3027 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
3028 ccl_prog_stack_struct and update it.
3029 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
3030 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
3031 ccl->eof_ic on EOF.
3032 (ccl_debug_hook): New function.
3033 (struct ccl_prog_stack): New member eof_ic.
3034 (ccl_driver): Handle EOF in subrountine call correctly.
3035
30362004-06-11 Kenichi Handa <handa@m17n.org>
3037
3038 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
3039
1da71023
KS
30402004-06-11 Kim F. Storm <storm@cua.dk>
3041
3042 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
3043
e9efcef4
JB
30442004-06-11 Juanma Barranquero <lektu@terra.es>
3045
3046 * keyboard.c (Fposn_at_point): Doc fix.
3047
9b9ceb61
DK
30482004-06-11 David Kastrup <dak@gnu.org>
3049
3050 * search.c (match_limit): Don't flag an error if match-data
3051 exceeding the allocated search_regs.num_regs gets requested, just
3052 return Qnil.
3053
6e87ac8f
MB
30542004-06-08 Miles Bader <miles@gnu.org>
3055
3056 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
3057
0b0dea7b
JB
30582004-06-07 Juanma Barranquero <lektu@terra.es>
3059
3060 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
3061 (Fcurrent_time_string, Fcurrent_time_zone)
3062 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
3063
a0a23346
MB
30642004-06-07 Miles Bader <miles@gnu.org>
3065
08384afd 3066 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
3067 (push_named_merge_point): New function.
3068 (merge_named_face): New function.
3069 (merge_face_ref, face_at_buffer_position, face_at_string_position):
3070 Use `merge_named_face'.
3071 (merge_face_inheritance): Function removed.
c8d09ad8 3072 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
3073 Add new `err_msgs' and `named_merge_points' args. Return error
3074 status. Only print error messages if ERR_MSGS is true. Don't try to
3075 do :inherit attribute validation.
3076 (merge_face_heights): Handle `unspecified' in both directions.
3077 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
3078 Call `merge_face_ref' instead of `merge_face_inheritance'.
3079 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
3080 (compute_char_face, face_at_buffer_position)
3081 (face_at_string_position): Call `merge_face_ref' instead of
3082 `merge_face_vector_with_property'.
3083
12d5b185
KH
30842004-06-07 Kenichi Handa <handa@m17n.org>
3085
3086 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
3087 the necessary places.
3088
2e2d7ee6
KS
30892004-06-07 Kim F. Storm <storm@cua.dk>
3090
3091 * process.c (Fdelete_process): Undo 2004-05-28 change.
3092 Instead, call status_notify also for network process.
3093 (status_message): Use process instead of status as arg.
3094 Give messages "deleted" or "connection broken by remote peer" for
3095 an exited network process.
3096 (status_notify): Change call to status_message.
3097 (read_process_output): Increase readmax to 4096. Do not increase
3098 buffer size for datagram channels (default is now large enough).
3099
fcf0d299
ST
31002004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
3101
3102 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
3103 problem due to newly defined variable.
3104
0722292b
MB
31052004-06-06 Miles Bader <miles@gnu.org>
3106
3107 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
3108 immediately if non-interactive or not initialized.
3109
ddfb8369
RS
31102004-06-05 Richard M. Stallman <rms@gnu.org>
3111
3112 * minibuf.c (Fcompleting_read): Doc fix.
3113
57015754
AS
31142004-06-05 Andreas Schwab <schwab@suse.de>
3115
3116 * macfns.c (x_create_tip_frame): Fix declaration after statement.
3117
23715ea6
JB
31182004-06-05 Juanma Barranquero <lektu@terra.es>
3119
3120 * keymap.c (Fdescribe_vector): Fix docstring.
3121 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
3122
8e330b22
MB
31232004-06-05 Miles Bader <miles@gnu.org>
3124
3125 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
3126 attributes have different values than the default face.
3127
9742a3a6
EZ
31282004-06-04 Eli Zaretskii <eliz@gnu.org>
3129
3130 * xfaces.c (x_supports_face_attributes_p): Make this function
3131 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
3132 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
3133 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 3134
9717e36c
MB
31352004-06-04 Miles Bader <miles@gnu.org>
3136
3137 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
3138 from Ftty_supports_face_attributes_p.
3139 (x_supports_face_attributes_p): New function.
3140 (Ftty_supports_face_attributes_p): Function deleted.
3141 (Fdisplay_supports_face_attributes_p): New function.
3142 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 3143 (face_attr_equal_p): New function.
9717e36c
MB
3144 (lface_equal_p): Use it.
3145
52deb19f
JB
31462004-06-03 Juanma Barranquero <lektu@terra.es>
3147
3148 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
3149 (Vw32_color_map): Fix typo in docstring.
3150 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
3151 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
3152 Make argument names match their use in docstring.
3153
86d373e6
JB
31542004-06-02 Juanma Barranquero <lektu@terra.es>
3155
3156 Work around bugs/problems with MinGW builds of graphics libraries
3157 called from MSVC builds of Emacs.
3158
3159 * image.c (lookup_image): Make pointer to img static.
3160 (png_read_from_memory): Disable "global" optimization.
3161
2fb0ce67
SM
31622004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
3163
c8d09ad8
SM
3164 * eval.c (Fcondition_case): Fix usage. Simplify.
3165
2fb0ce67
SM
3166 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
3167
50bf7673
ST
31682004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3169
3170 * macfns.c: Don't include ccl.h.
3171 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
3172 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
3173 TextUtils.h.
c8d09ad8 3174 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
3175 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
3176 display height/width.
3177 (compute_tip_xy, Vx_max_tooltip_size): Declare.
3178 (unwind_create_tip_frame, compute_tip_xy): New functions.
3179 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
3180 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
3181 and last_show_tip_args.
2fb0ce67 3182
50bf7673
ST
3183 * macgui.h [!MAC_OSX]: Include Gestalt.h.
3184 (Cursor, No_Cursor): New defines.
c8d09ad8 3185 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
3186 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
3187
3188 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
3189
3190 * macterm.c: Don't include Gestalt.h.
3191 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
3192 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
3193 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
3194 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
3195 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
3196 (construct_mouse_click, XTmouse_position)
3197 (x_scroll_bar_report_motion, x_calc_absolute_position)
3198 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
3199 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
3200 (note_mouse_movement): Clear the mouse face and reset the pointer
3201 shape when the pointer goes outside the frame without grabbing.
3202 (mac_front_window): New function.
3203 (mac_window_to_frame): New macro.
3204 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
3205 (do_window_activate, do_window_deactivate, do_app_resume)
3206 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
3207 (do_zoom_window, mac_do_receive_drag, XTread_socket)
3208 (mac_check_for_quit_char): Use mac_front_window and/or
3209 mac_window_to_frame.
3210 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
3211 scroll-bar click event.
3212 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 3213 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 3214 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 3215 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
3216 (do_window_update): Don't do anything if the updated window is the
3217 tooltip window.
3218 (do_mouse_moved): Handle mouse movement events here (previously in
3219 XTread_socket). Clear the mouse face if
3220 dpyinfo->mouse_face_hidden is set.
3221 (do_os_event, do_events): Remove (now in XTread_socket).
3222 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
3223 Loop until all the events in the queue are processed.
3224 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
3225 contents of do_os_event and do_events. Remove mouse movement
3226 handling (now in do_mouse_moved). Add the case where
3227 Vmouse_highlight has an integer value.
3228 (NewMacWindow): Remove.
3229 (make_mac_frame): Do what NewMacWindow previously did. Don't do
3230 excess initializations.
3231 (make_mac_terminal_frame): Previous initializations in
3232 make_mac_frame are moved here.
c8d09ad8
SM
3233 (mac_initialize_display_info):
3234 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
3235
3236 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
3237 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
3238
08fd1251
RS
32392004-05-29 Richard M. Stallman <rms@gnu.org>
3240
3241 * lisp.h (truncate_undo_list): Update decl.
3242
3243 * alloc.c (undo_outer_limit): New variable.
3244 (syms_of_alloc): Defvar it.
3245 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
3246
3247 * undo.c (truncate_undo_list): New arg LIMITSIZE.
3248
3249 * alloc.c (lisp_align_malloc): Check for base == 0
3250 regardless of HAVE_POSIX_MEMALIGN.
3251 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
3252
227ef0ff
SM
32532004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
3254
3255 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
3256 (marker_blocks_pending_free): Remove.
3257 (Fgarbage_collect): Sweep after cleaning up undo-lists.
3258 Mark the undo lists after claning them up.
3259 Don't free block in marker_blocks_pending_free.
3260 (mark_buffer): Don't mark undo_list.
3261 (gc_sweep): Sweep hash-tables and strings first.
3262 Do free marker blocks that are empty.
3263
034a6113
SM
32642004-05-28 Jim Blandy <jimb@redhat.com>
3265
3266 * regex.c (print_partial_compiled_pattern): Add missing 'break'
3267 after 'case wordend'. For symbeg and symend, print to stderr,
3268 like the other cases.
3269
33594a8d
NF
32702004-05-28 Noah Friedman <friedman@splode.com>
3271
3272 * process.c (Fdelete_process): Do not call remove_process.
3273
ce50a847
SM
32742004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
3275
3276 * alloc.c (struct backtrace): Remove.
3277 (Fgarbage_collect): Use the new mark_backtrace.
3278
3279 * eval.c (mark_backtrace): New function.
3280
3281 * minibuf.c (run_exit_minibuf_hook): New function.
3282 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
3283 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
3284
1e8dae36
KS
32852004-05-27 Kim F. Storm <storm@cua.dk>
3286
3287 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
3288 over display properties, e.g. images, that replace buffer text.
3289
846faa3b
KS
32902004-05-25 Kim F. Storm <storm@cua.dk>
3291
3292 * alloc.c (marker_blocks_pending_free): New var.
3293 (gc_sweep): Store free marker blocks on that list.
3294 (Fgarbage_collect): Free them after undo-list cleanup.
3295
3296 * process.c (wait_reading_process_input): Check connect_wait_mask
3297 before actually accepting connection in case it has already been
3298 accepted due to recursion.
3299
b6189c3b 33002004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 3301
ce50a847
SM
3302 * coding.c (Fset_safe_terminal_coding_system_internal):
3303 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 3304
71d5a208
RS
33052004-05-22 Richard M. Stallman <rms@gnu.org>
3306
3307 * alloc.c (Fmake_string): Doc fix.
3308
3309 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
3310 and the alist pairs too.
3311
3312 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
3313
3314 * emacs.c (main): Update copyright year.
3315
3316 * fileio.c (Fread_file_name): Expand DIR if not absolute.
3317
3318 * insdel.c (del_range_2, replace_range): Don't write an anchor
3319 if the gap is empty.
3320
3321 * xdisp.c (try_scrolling): If scroll-up-aggressively or
3322 scroll-down-aggressively is small but positive, put point
3323 near the screen edge.
3324
f63fd14e
JB
33252004-05-22 Juanma Barranquero <lektu@terra.es>
3326
3327 * keymap.c (Fdefine_key): Doc fix.
3328
4d12067c
KS
33292004-05-22 Kim F. Storm <storm@cua.dk>
3330
3331 * alloc.c (struct backtrace): Add debug_on_exit member.
3332 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
3333 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
3334 the removed cons cells.
3335 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
3336 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
3337 any cons cells pointing to unallocated stings.
3338 Do not lisp_free any marker blocks, as there may still be pointers
3339 to them from buffer undo lists at this stage of GC.
3340
3341 * keyboard.c (struct backtrace): Add debug_on_exit member.
3342 (Fcommand_execute): Clear it.
3343
931285e2
LT
33442004-05-20 Luc Teirlinck <teirllm@auburn.edu>
3345
3346 * intervals.c (lookup_char_property): Do not prematurely return nil.
3347
669fa600
SM
33482004-05-19 Jim Blandy <jimb@redhat.com>
3349
3350 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 3351 beginning and end of symbols.
4d12067c 3352
669fa600
SM
3353 * regex.c (enum syntaxcode): Add Ssymbol.
3354 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
3355 (re_opcode_t): New opcodes `symbeg' and `symend'.
3356 (print_partial_compiled_pattern): Print the new opcodes properly.
3357 (regex_compile): Parse the new operators.
ce50a847 3358 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
3359 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
3360 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
3361 (re_match_2_internal): Match symbeg and symend.
3362
3363 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
3364
0d8c2e5c
KS
33652004-05-19 Kim F. Storm <storm@cua.dk>
3366
3367 * .gdbinit (xsymbol): Fix last change.
3368
669fa600
SM
33692004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
3370
3371 * .gdbinit (xprintstr): New fun.
3372 (xstring, xprintsym): Use it.
3373
3374 * w32proc.c (create_child): Use INTMASK.
3375
3376 * alloc.c (Fgarbage_collect): Do all the marking before flushing
3377 unmarked elements of the undo list.
3378
9a6a4c40
DP
33792004-05-18 David Ponce <david@dponce.com>
3380
3381 * print.c (print): Reset print_depth before to call print_object.
3382
f3c4ec74
JR
33832004-05-18 Jason Rumney <jasonr@gnu.org>
3384
3385 * w32console.c: Prefix RIF functions with w32con_ to avoid
3386 namespace clash with functions in term.c and w32term.c.
3387
3388 * w32menu.c (add_menu_item, w32_menu_display_help)
3389 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
3390
0d8c2e5c 3391 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 3392
6be49c3a
EZ
33932004-05-18 Eli Zaretskii <eliz@gnu.org>
3394
4d0b9a0a
EZ
3395 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
3396
6be49c3a
EZ
3397 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
3398 with make_number.
3399 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
3400 with XINT.
3401
0bc90bba
KS
34022004-05-18 Kim F. Storm <storm@cua.dk>
3403
89d19988
KS
3404 * blockinput.h (INPUT_BLOCKED_P): New macros.
3405
3406 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
3407 (Ftop_level): Unblock input if blocked.
3408
0bc90bba
KS
3409 * buffer.h (GET_OVERLAYS_AT): New macro.
3410 * msdos.c (IT_note_mouse_highlight): Use it.
3411 * textprop.c (get_char_property_and_overlay): Use it.
3412 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
3413 * xfaces.c (face_at_buffer_position): Use it.
3414
3415 * print.c (print_object): Increase buf size.
3416
653bd0f6
JR
34172004-05-17 Jason Rumney <jasonr@gnu.org>
3418
3419 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
3420 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
3421 Lisp_Object using i member.
3422 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
3423 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
3424 consistently.
3425
3426 * w32proc.c (create_child): Use make_number instead of masking pid.
3427
3428 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
3429 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
3430 Use EQ to compare Lisp_Objects.
3431 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
3432
3433 * w32term.c (w32_num_mouse_buttons): Rename from
3434 Vw32_num_mouse_buttons and make it an int.
3435
3436 * w32.c (init_environment): Use it.
3437
3438 * w32fns.c (w32_wnd_proc): Likewise.
3439
3440 * w32proc.c (w32_pipe_read_delay): Rename from
3441 Vw32_pipe_read_delay and make it an int.
3442
3443 * w32.c (_sys_read_ahead): Use it.
3444
3445 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
3446
3447 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
3448
3449 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
3450 (key_event): Don't mix Lisp_Object and int.
3451
3452 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
3453
3454 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
3455 modifiers in language change event.
3456
54b53ba7
KS
34572004-05-17 Kim F. Storm <storm@cua.dk>
3458
3459 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
3460 Such objects may be freed markers which still exist on an undo list.
3461
6e86a75d
JB
34622004-05-16 Juanma Barranquero <lektu@terra.es>
3463
3464 * data.c (Fset_default): Make argument names match their use in
3465 docstring.
3466
fc80da24
AS
34672004-05-15 Andreas Schwab <schwab@suse.de>
3468
3469 * emacs.c (gdb_array_mark_flag): Define.
3470 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
3471
c1380aa6
EZ
34722004-05-15 Eli Zaretskii <eliz@gnu.org>
3473
3474 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
3475 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
3476 defined for the MS-DOS build.
3477
89458937
SM
34782004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
3479
3480 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
3481
08020f9a
KH
34822004-05-14 Kenichi Handa <handa@m17n.org>
3483
3484 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
3485
a433994a
ST
34862004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3487
3488 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
3489 section to frame.c section.
3490 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 3491 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 3492
a433994a 3493 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 3494
a433994a 3495 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 3496
a433994a
ST
3497 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
3498 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
3499 (XTread_socket): Fix int/Lisp_Object mixup.
3500 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 3501
a433994a
ST
3502 * macterm.h (struct frame, struct face, struct image)
3503 (display_x_get_resource, Fx_display_color_p)
89458937
SM
3504 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
3505 Add prototypes.
a433994a 3506
b51a51b9
KS
35072004-05-14 Kim F. Storm <storm@cua.dk>
3508
3509 * process.c (wait_reading_process_input): Make reentrant.
3510 Make Available and Connecting non-static. Save and restore value
3511 of waiting_for_user_input_p.
3512
2bde1dd8
KS
35132004-05-13 Kim F. Storm <storm@cua.dk>
3514
3515 * keyboard.c (mark_kboards): Don't mark x and y members
3516 that are overloaded in selection request events.
3517
a267ab4d
SM
35182004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
3519
3520 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
3521
eb15ce9e
GM
35222004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
3523
3524 * window.c (Fdisplay_buffer, Fsplit_window)
3525 (split-height-threshold): Doc fix.
3526
7fc92635
JB
35272004-05-13 Juanma Barranquero <lektu@terra.es>
3528
3529 * xfaces.c (Ftty_supports_face_attributes_p)
3530 (Finternal_copy_lisp_face): Fix typo in docstring.
3531 (Finternal_get_lisp_face_attribute): Fix docstring.
3532
1ec2a572
JD
35332004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3534
3535 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
3536
ae9292e0
ST
35372004-05-11 Steven Tamm <steventamm@mac.com>
3538
3539 * macfns.c (Fx_create_frame): Default to using tool-bar by
3540 setting tool-bar-lines to 1 in default-frame-alist.
3541
35422004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
3543
3544 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
3545 (xpm_get_color_table_v, xpm_make_color_table_h)
3546 (xpm_put_color_table_h, xpm_get_color_table_h)
3547 (xpm_str_to_color_key, xpm_load_image, xpm_load)
3548 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 3549 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 3550
fe97e8df
ST
35512004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3552
a267ab4d 3553 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
3554 instead of FRAME_X_P
3555
b47e779e
KS
35562004-05-11 Kim F. Storm <storm@cua.dk>
3557
3558 * process.c (read_process_output): Grow decoding_buf when needed;
3559 this could cause a crash in allocate_string and compact_small_strings.
3560
cdc9b845
EZ
35612004-04-29 Jim Blandy <jimb@redhat.com>
3562
3563 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
3564 against proper opcode.
3565
aa7094ba
JB
35662004-05-10 Juanma Barranquero <lektu@terra.es>
3567
3568 * process.c (Fstart_process): Fix docstring.
3569
3570 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
3571 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
3572 (Fsplit_char, Fchar_charset): Make argument names match their use
3573 in docstring.
3574
e109331a
RS
35752004-05-10 Richard M. Stallman <rms@gnu.org>
3576
3577 * print.c (print_preprocess): Use being_printed, loop_count and
3578 halftail to detect overdeep nesting and cyclic cdr chains.
3579
9a28b921
AS
35802004-05-10 Andreas Schwab <schwab@suse.de>
3581
78819ebb 3582 * lisp.h (Fmake_symbolic_link): Declare.
9a28b921
AS
3583
3584 * fileio.c (Frename_file): Remove extra argument in call to
3585 Fmake_symbolic_link.
3586
e2c02c1a
KS
35872004-05-10 Kim F. Storm <storm@cua.dk>
3588
3589 * xdisp.c (calc_line_height_property): Use string position when
3590 object is a string.
3591
cfe9d13e
KH
35922004-05-10 Kenichi Handa <handa@m17n.org>
3593
a57e8159
KH
3594 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
3595 inhibit-modification-hooks to t temporarily before calling
3596 Ferase_buffer.
3597
3598 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
3599 inhibit-modification-hooks to t temporarily before calling
3600 Ferase_buffer.
3601
3602 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
3603 inhibit-modification-hooks to t temporarily before calling
3604 Ferase_buffer.
3605
cfe9d13e
KH
3606 * fns.c (count_combining): Delete it.
3607 (concat): Don't check combining bytes.
3608
ceb96489
JR
36092004-05-09 Jason Rumney <jasonr@gnu.org>
3610
3611 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
3612 (globals_of_w32fns): Set it.
3613
b6189c3b 36142004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
3615
3616 * data.c (Fquo): Simplify.
3617
28712a21
JB
36182004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
3619
3620 * data.c (Fquo): If any argument is float, do the computation in
3621 floating point.
3622
0f0af7a8
JB
36232004-05-08 Juanma Barranquero <lektu@terra.es>
3624
88214ef6
JB
3625 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
3626 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
3627 Fix spelling of Emacs on docstring.
3628 (Fset_process_coding_system, Fprocess_coding_system)
3629 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
3630 Make argument names match their use in docstring.
3631 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
3632 Fix docstring.
3633
0f0af7a8
JB
3634 * editfns.c (Finsert_buffer_substring): Make argument names match their
3635 use in docstring.
3636
3637 * syntax.c (Fmodify_syntax_entry): Fix docstring.
3638
2a316a84
ST
36392004-05-07 Steven Tamm <steventamm@mac.com>
3640
3641 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
3642 around call to ReceiveEvent to avoid certain crashes.
3643
36442004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 3645
2a316a84
ST
3646 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
3647 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
3648 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
3649 Save/restore the current graphics port and device handle when
3650 drawing into an offscreen graphics world.
3651
3652 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
3653 (gif_load): Likewise.
3654
ab80314b
JB
36552004-05-07 Juanma Barranquero <lektu@terra.es>
3656
3657 * window.c (Fset_window_buffer): Fix docstring.
3658
70646bb5
TTN
36592004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
3660
3661 * emacs.c (main) [VMS]: Fix var ref.
3662
b6189c3b 36632004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
3664
3665 * data.c (Fsetq_default): Fix docstring.
3666
279d3293
JR
36672004-05-06 Jason Rumney <jasonr@gnu.org>
3668
3669 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
3670 to avoid name clash.
3671
f72b5416
JD
36722004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3673
3674 * fileio.c (barf_or_query_if_file_exists): Use lstat.
3675 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 3676 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 3677
6ab66799
KS
36782004-05-04 Kim F. Storm <storm@cua.dk>
3679
3680 * xdisp.c (Qtotal): New var.
3681 (syms_of_xdisp): Intern and staticpro it.
3682 (calc_line_height_property): New arg total. Set it if
3683 line-spacing property has format (total . VALUE).
3684 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
3685 Handle total line-spacing property.
3686
ab2d724b
JD
36872004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3688
3689 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
3690 "under" scroll bar when size/position changes.
3691
238add5e
JR
36922004-05-03 Jason Rumney <jasonr@gnu.org>
3693
3694 * makefile.nt: Remove.
3695
1644f4e4
EZ
36962004-05-02 Eli Zaretskii <eliz@gnu.org>
3697
a267ab4d
SM
3698 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
3699 Avoid compiler warnings.
05fdbeb8 3700
1644f4e4
EZ
3701 * Makefile.in (region-cache.o): Depend on config.h.
3702
b6189c3b 37032004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
3704
3705 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
3706 with continuation lines, too.
3707
2b98b088
TTN
37082004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
3709
3710 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
3711
d9bf7950
SM
37122004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
3713
3714 * xdisp.c (calc_line_height_property): YAILOM (yet another
3715 int/Lisp_Object mixup).
3716
affa509c
EZ
37172004-05-01 Eli Zaretskii <eliz@gnu.org>
3718
3719 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
3720 undo bad effect of pack(4) in some versions of system headers.
3721
07c07cfe
JR
37222004-05-01 Jason Rumney <jasonr@gnu.org>
3723
3724 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
3725
e71caa4e
KS
37262004-04-30 Kim F. Storm <storm@cua.dk>
3727
3728 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 3729 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
3730
3731 * dispextern.h (struct it): Remove member use_default_face.
3732 Add members override_ascent, override_descent, override_boff.
3733
3734 * xdisp.c (init_iterator): Handle line-spacing float value.
3735 Initialize override_ascent member.
3736 (append_space_for_newline): Reset override_ascent.
3737 Remove use_default_face.
3738 (calc_line_height_property): New function to calculate value of
3739 line-height and line-spacing properties. Look at overlays, too.
3740 Set override_ascent, override_descent, override_boff members when
3741 using another face than the current face. Float values are now
3742 relative to the frame default font, by default; accept a cons
3743 of ratio and face name to specify value relative to a specific face.
3744 (x_produce_glyphs): Use calc_line_height_property.
3745 Use override_ascent etc. when set to handle different face heights.
3746 A negative line-spacing property value is interpreted as a total
3747 line height, rather than inter-line spacing.
3748 (note_mouse_highlight): Allocate room for 40 overlays initially.
3749
0fddae66
SM
37502004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
3751
3752 * data.c (Fsubr_name): New fun.
3753 (syms_of_data): Defsubr it.
3754
712d23dc
KS
37552004-04-29 Kim F. Storm <storm@cua.dk>
3756
3757 * xdisp.c (null_glyph_slice): New var.
3758 (append_glyph, append_composite_glyph, append_stretch_glyph):
3759 Use it to initialize glyph slice.
3760
033ad8c6
SM
37612004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
3762
3763 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
3764 (on_hot_spot_p): Make sure we always return a value.
3765 (Flookup_image_map): Remove unused var ix and iy.
3766 (note_mode_line_or_margin_highlight): Remove unused var `image'.
3767
93397360
EZ
37682004-04-27 Eli Zaretskii <eliz@gnu.org>
3769
3770 * msdos.c (init_environment): If one of the TMP... environment
3771 variables is set to a drive letter without a trailing slash,
3772 append a slash.
3773
0c54865e
EZ
37742004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
3775
3776 * editfns.c (lisp_time_argument): Provide externally.
3777
3778 * fileio.c (Fset_file_times): New function.
3779 (syms_of_fileio): Intern and staticpro it.
3780
d3b111bd
KS
37812004-04-27 Kim F. Storm <storm@cua.dk>
3782
07dc1231
KS
3783 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
3784 header line strings.
3785
360fe9d2
KS
3786 * dispextern.h (struct it): New member use_default_face.
3787
d3b111bd
KS
3788 * xdisp.c (Qline_height): New variable.
3789 (syms_of_xdisp): Intern and staticpro it.
3790 (append_space_for_newline): Partially undo 2004-04-25 change;
3791 add default_face_p arg, and restore callers.
3792 Clear it->use_default_face after use.
3793 (x_produce_glyphs): Set default font for ascii char if
3794 it->use_default_font is set. Change line-spacing property to set
3795 just extra line spacing. Handle new line-height property.
3796
0448588b
AS
37972004-04-26 Andreas Schwab <schwab@suse.de>
3798
3799 * print.c (print_object): Print non-ascii characters in bool
3800 vector representation as octal escapes.
3801
3802 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
3803 * print.c (print_object): Use it instead of BITS_PER_CHAR for
3804 bool vectors.
3805 * lread.c (read1): Likewise.
3806 * alloc.c (Fmake_bool_vector): Likewise.
3807 * data.c (Faref, Faset): Likewise.
3808 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
3809 (mapcar1): Likewise.
d3b111bd 3810
536d6baa
ST
38112004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
3812
3813 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
3814
ae11577a
MB
38152004-04-26 Miles Bader <miles@gnu.org>
3816
3817 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
3818
e198ba87
JB
38192004-04-26 Juanma Barranquero <lektu@terra.es>
3820
3821 * buffer.c (Fpop_to_buffer): Fix docstring.
3822
f3d5f92d 38232004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 3824
f3d5f92d
ST
3825 * lread.c (init_lread): Don't display missing lisp directory
3826 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 3827 may be built without correct installation path.
f3d5f92d 3828
03e35edc
KS
38292004-04-25 Kim F. Storm <storm@cua.dk>
3830
9ff3aa31
KS
3831 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
3832
3833 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
3834
03e35edc
KS
3835 * xdisp.c (append_space_for_newline): Rename from append_space.
3836 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
3837 (x_produce_glyphs): Handle line-spacing property on newline char.
3838 If value is t, adjust ascent and descent to fit current row height.
3839 If value is an integer or float, set extra_line_spacing to integer
3840 value, or to float value x current line height.
3841
f24814e0
KH
38422004-04-23 Kenichi Handa <handa@m17n.org>
3843
3844 * fontset.c (Finternal_char_font): If POSITION is nil, return
3845 font for displaying CH with the default face.
3846
d814862a
JB
38472004-04-23 Juanma Barranquero <lektu@terra.es>
3848
3849 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
3850
063a45c5
SM
38512004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
3852
3853 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
3854 Don't make assumptions about the relative place of i and val.
3855 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
3856
ae7ab2d3
KS
38572004-04-21 Kim F. Storm <storm@cua.dk>
3858
3859 * dispextern.h (struct glyph_slice): New struct.
3860 (struct glyph): New member slice.
3861 (GLYPH_SLICE_EQUAL_P): New macro.
3862 (GLYPH_EQUAL_P): Use it.
3863 (struct glyph_string): New member slice.
3864 (struct it_slice): New struct.
3865 (struct it): New member slice, add member to stack too.
3866 New member constrain_row_ascent_descent_p.
3867 (image_ascent): Add prototype.
3868
3869 * dispnew.c (buffer_posn_from_coords): Return full image width
3870 and height even for image slices (posn is relative to full image).
3871 (marginal_area_string): Adjust x0,y0 for image slice.
3872
3873 * image.c (image_ascent): Add slice arg; calculate ascent for
3874 image slice (or full image).
3875
3876 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
3877 (syms_of_keyboard): Defsubr them.
3878
3879 * lisp.h (pos_visible_p): Fix prototype.
3880
c62aec78 3881 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
3882 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
3883 (x_draw_image_foreground, x_draw_image_relief)
3884 (x_draw_image_foreground_1, x_draw_image_glyph_string):
3885 Draw sliced images.
3886
3887 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
3888 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
3889 (x_draw_image_foreground, x_draw_image_relief)
3890 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
3891 Draw sliced images.
3892
3893 * w32term.h (image_ascent): Remove prototype.
3894
3895 * window.c (Fpos_visible_in_window_p): Return pixel position if
3896 PARTIALLY arg is non-nil. Simplify. Doc fix.
3897 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
3898 to return/set vscroll in pixels.
3899
3900 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
3901
3902 * xdisp.c (Qslice): New variable.
3903 (syms_of_xdisp): Intern and staticpro it.
3904 (pos_visible_p): Return pixel position in new x and y args.
3905 (init_iterator): Reset it->slice info.
3906 (handle_display_prop): Parse (slice ...) property.
3907 (push_it, pop_it): Save/restore slice info.
3908 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
3909 force repositioning of tall row if window is vscrolled, as that
3910 would reset vscroll.
3911 (append_space): Set it->constrain_row_ascent_descent_p to avoid
3912 increasing row height if row is non-empty.
3913 (fill_image_glyph_string): Copy slice info.
3914 (take_vertical_position_into_account): Simplify.
3915 (produce_image_glyph): Handle iterator slice info, setup glyph
3916 slice info. Do not force minimum line height.
3917 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
3918 do not increase height (ascent/descent) of non-empty row when
3919 adding normal character glyph; instead reduce glyph ascent/descent
3920 appropriately; if row is higher than current glyph, adjust glyph
3921 descent/ascent to reposition glyph within the existing row.
3922 Likewise, when char is newline, only set ascent/descent if row is
3923 currently empty.
3924 (note_mouse_highlight): Handle hotspots with sliced image.
3925
3926 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
3927 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
3928 (x_draw_image_foreground, x_draw_image_relief)
3929 (x_draw_image_foreground_1, x_draw_image_glyph_string):
3930 Draw sliced images.
3931
3932 * xterm.h (image_ascent): Remove prototype.
3933
d58f8753
SM
39342004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
3935
3936 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
3937
4ce2719d
JPW
39382004-04-20 John Paul Wallington <jpw@gnu.org>
3939
3940 * fns.c (Fassoc, Feql): Fix indentation.
3941
d58f8753 3942 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 3943
95f8c3b9
JPW
39442004-04-19 John Paul Wallington <jpw@gnu.org>
3945
3946 * fns.c (Feql): New function.
d58f8753 3947 (syms_of_fns): Defsubr it.
95f8c3b9 3948
b7e85537
JR
39492004-04-18 Jason Rumney <jasonr@gnu.org>
3950
3951 * w32select.c (Fw32_set_clipboard_data): Get sequence number
3952 after closing the clipboard.
3953
5a72efd4
LT
39542004-04-16 Luc Teirlinck <teirllm@auburn.edu>
3955
3956 * buffer.c (Fbuffer_base_buffer): Doc fix.
3957
20dc8583
KS
39582004-04-17 Kim F. Storm <storm@cua.dk>
3959
60962ec4
KS
3960 * keymap.c (Fkey_description): Add optional PREFIX arg.
3961 Combine prefix with KEYS to make up the full key sequence to describe.
3962 Correlate meta_prefix_char and following (simple) key to describe
3963 as meta modifier. All callers changed.
3964 (describe_map): Rename arg `keys' to `prefix'. Remove local
3965 `elt_prefix' var. Use Fkey_description with prefix instead of
3966 elt_prefix combined with Fsingle_key_description.
3967 (describe_vector): Declare static. Replace arg `elt_prefix' with
3968 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
3969 if !KEYMAP_P. Use Fkey_description with prefix instead of
3970 Fsingle_key_description.
3971
3972 * keymap.h (Fkey_description): Fix prototype.
3973 (describe_vector): Remove prototype.
3974
409368b9
KS
3975 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
3976
20dc8583
KS
3977 * image.c (PNG_BG_COLOR_SHIFT): Remove.
3978 (png_load): Fix calculation of transparent background color on X
3979 and W32 platforms.
3980
75c5501b
JB
39812004-04-16 Juanma Barranquero <lektu@terra.es>
3982
3983 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
3984 not too large before computing how much to scroll.
3985
da879ae8
SM
39862004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
3987
3988 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
3989
d01ca4a8
LT
39902004-04-14 Luc Teirlinck <teirllm@auburn.edu>
3991
3992 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
3993 Add hyperlink to Elisp manual to the docstring.
3994
572943b3
SM
39952004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
3996
3997 * callint.c (fix_command): Use XDCR.
3998
5e30a0fb
NR
39992004-04-14 Nick Roberts <nick@nick.uklinux.net>
4000
4001 * window.c (Fget_lru_window): Doc fix.
4002
a27ddfaf
KS
40032004-04-14 Kim F. Storm <storm@cua.dk>
4004
4005 * editfns.c (Fformat): Fix allocation size of precision array.
4006
4007 * dispnew.c (update_window): Only set changed_p if
4008 scrolling_window actually did scroll.
4009 (scrolling_window): Only return 1 if we actually did scroll.
4010
4011 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
4012 height to glyph height when cursor row is not fully visible.
4013 (make_cursor_line_fully_visible): Add FORCE_P arg to return
4014 failure in case row is higher than window. Callers changed.
4015 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
4016 Try to scroll partially visible, higher-than-window cursor row.
4017 (redisplay_window): Always try to scroll partially visible,
4018 higher-than-window cursor row - both initially and again with
4019 centering_position = 0.
4020 Clear desired matrix before retrying with centering_position = 0.
4021
da879ae8
SM
40222004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
4023
4024 * syntax.c (scan_lists): Simplify backward string scan.
4025 Fix off-by-one boundary check for string and comment fences.
4026
5fc16e8e
SM
40272004-04-13 Joe Buehler <jbuehler@hekimian.com>
4028
4029 * sheap.c, unexcw.c: New files.
4030
c9aac8e6
LT
40312004-04-12 Luc Teirlinck <teirllm@auburn.edu>
4032
4033 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
4034 base buffer has been killed. Correct the error message if the
4035 base buffer does not exist.
4036
1e88a355
SM
40372004-04-12 Joe Buehler <jbuehler@hekimian.com>
4038
4039 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
4040 Cygwin itself. Add support for Xaw3d scrollbars.
4041
4042 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
4043
4044 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
4045
4046 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
4047 before Cygwin unexec.
4048
4049 * Makefile.in: Link changes for Cygwin unexec() support.
4050
8dbff9a0
AS
40512004-04-12 Andreas Schwab <schwab@suse.de>
4052
4053 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
4054
54dffe35
LT
40552004-04-11 Luc Teirlinck <teirllm@auburn.edu>
4056
4057 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
4058 IGNORE argument equals NAME. Doc fix.
4059
99a72bdf
MY
40602004-04-11 Masatake YAMATO <jet@gyve.org>
4061
1e88a355 4062 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
4063 empty if they are backwards.
4064
40899d7b
SM
40652004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
4066
4067 * xfaces.c (face_color_supported_p): Fix compilation without X11.
4068
f8f853de
SM
40692004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
4070
4071 * doc.c (Fsnarf_documentation): Ignore new file name entries.
4072
c953fe1b
KS
40732004-04-06 Kim F. Storm <storm@cua.dk>
4074
661e85c1
KS
4075 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
4076 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
4077
4078 * w32term.c (w32_read_socket): Set mouse_face_hidden after
4079 clearing highlight.
4080
4081 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
4082
4083 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
4084 clearing highlight.
4085
c953fe1b
KS
4086 * indent.c (vmotion): Do not reserve one column for continuation
4087 marks on window frames.
4088
c1994268
EZ
40892004-04-04 Eli Zaretskii <eliz@gnu.org>
4090
4091 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
4092 from GCC.
4093
9f691b0d
SM
40942004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
4095
4096 * .gdbinit-union: Remove.
4097
4098 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
4099 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
4100 ($nonvalbits): Remove.
4101 ($valmask): Set it by calling xreload to avoid redundancy.
4102
4103 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
4104 (gdb_emacs_intbits): Remove.
4105
7a8560d7
JD
41062004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4107
9f691b0d 4108 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 4109
3c8111fc
KH
41102004-03-30 Kenichi Handa <handa@m17n.org>
4111
4112 * editfns.c (Fformat): Fix initialization of the array info.
4113
48a0bce4
KS
41142004-03-30 Kim F. Storm <storm@cua.dk>
4115
4116 * xterm.c (x_mouse_click_focus_ignore_position): New var.
4117 (syms_of_xterm): DEFVAR_BOOL it.
4118 (ignore_next_mouse_click_timeout): New var.
4119 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
4120 Use it to filter mouse clicks following focus event.
4121
1cd0066c
KS
41222004-03-29 David Ponce <david@dponce.com>
4123
4124 * callint.c (Fcall_interactively): Fix last change.
4125
adb3b353
SM
41262004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
4127
4128 * eval.c (Fcommandp): Simplify.
4129
4130 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
4131 Extend to handle all kinds of functions.
4132
4133 * lisp.h (Finteractive_form): Declare.
4134
4135 * callint.c (Fcall_interactively): Use it.
4136
6fc4c9c9
KS
41372004-03-26 Kim F. Storm <storm@cua.dk>
4138
4139 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
4140 to catch errors in calc_pixel_width_or_height during redisplay.
4141
abdb9b83
MY
41422004-03-26 Masatake YAMATO <jet@gyve.org>
4143
b17856dd 4144 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 4145
b17856dd 4146 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 4147
b17856dd 4148 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 4149
b17856dd 4150 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 4151
e8a84b6c
JD
41522004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4153
b17856dd 4154 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 4155
36a3fd05
RS
41562004-03-19 Richard M. Stallman <rms@gnu.org>
4157
4158 * s/sol2-6.h: Delete previous change.
4159
ab24c127
KS
41602004-03-19 Kim F. Storm <storm@cua.dk>
4161
4162 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
4163 to_charpos corresponds to newline in right fringe. Use local
4164 BUFFER_POS_REACHED_P macro.
4165
992126de
JD
41662004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4167
4168 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
4169 to compile on non-window system.
4170
45dbfc84
KS
41712004-03-19 Kim F. Storm <storm@cua.dk>
4172
4173 * dispextern.h (calc_pixel_width_or_height): Add prototype.
4174
4175 * image.c (Qcenter): Move to xdisp.c.
4176
4177 * xdisp.c (Qcenter): Declare here.
adb3b353 4178 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
4179 (handle_single_display_prop): Allow space display property on all
4180 platforms.
4181 (display_mode_line): Set mode_line_p before displaying line.
4182 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
4183 handling. Remove complex cases for fringes and scroll-bars.
4184 Add left, right, and center alignment positions. Add text (area)
4185 width/height. Return width or height for image specs.
4186 (produce_stretch_glyph): Improve handling of :align-to. Is now
4187 relative to left of text area by default, but other base offsets
4188 can be specified -- also for text lines.
4189
4190 * term.c (produce_glyphs): Handle IT_STRETCH.
4191 (produce_stretch_glyph): New function to handle space width and
4192 align-to display properties on non-window systems.
4193
37264101
SM
41942004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
4195
4196 * fileio.c (Fread_file_name): Set completion-ignore-case for
4197 case-insensitive systems.
4198
73bc43da
MY
41992004-03-14 Masatake YAMATO <jet@gyve.org>
4200
4201 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
4202 when keymap and cursor are setup.
4203
9062aa89
ST
42042004-03-14 Steven Tamm <steventamm@mac.com>
4205
b17856dd 4206 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 4207
e4b1b5ab
KS
42082004-03-14 Kim F. Storm <storm@cua.dk>
4209
4210 * dispextern.h (x_find_image_file): Add prototype.
4211
4212 * image.c (x_find_image_file): Make extern.
4213
4214 * xfns.c (x_find_image_file): Remove prototype.
4215
a6eeaa81 42162004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 4217
37264101 4218 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 4219
37264101 4220 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 4221
e69cfac2
RS
42222004-03-12 Richard M. Stallman <rms@gnu.org>
4223
4224 * fns.c (internal_equal): New arg PROPS controls comparing
4225 text properties. All callers changed.
4226 (Fequal_including_properties): New function.
4227 (syms_of_fns): defsubr it.
4228
45034953
KS
42292004-03-12 Kim F. Storm <storm@cua.dk>
4230
4231 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 4232
45034953
KS
4233 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
4234 (image_background, image_background_transparent): Fix prototypes.
4235
37264101 4236 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
4237
4238 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
4239 (x_query_font, x_find_ccl_program, x_set_window_size)
4240 (x_make_frame_visible, mac_initialize, XCreatePixmap)
4241 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
4242 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
4243
4244 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
4245 (x_query_font, x_find_ccl_program, x_set_window_size)
4246 (x_make_frame_visible, mac_initialize, XCreatePixmap)
4247 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
4248 (mac_draw_line_to_pixmap): Add prototypes.
4249
42502004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4251
4252 * macterm.c (XTread_socket): Fix mouse click on tool bar.
4253
a12d3d87
KS
42542004-03-11 Kim F. Storm <storm@cua.dk>
4255
d3ab1cf1
KS
4256 * dispextern.h: Move image related prototypes from xfns.c section
4257 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
4258 HAVE_X_WINDOWS.
37264101 4259
37de9f51 4260 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 4261 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
4262 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
4263 (GTK_OBJ) [USE_GTK]: New declaration.
4264 (obj): Add $(GTK_OBJ) to list.
4265
5243c06a 42662004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 4267
5243c06a
ST
4268 * image.c [MAC_OSX]: Include sys/stat.h
4269
4270 * macfns.c (syms_of_macfns): Remove definitions of things now
4271 defined in image.c
4272
c0f97789
KS
42732004-03-11 Kim F. Storm <storm@cua.dk>
4274
4275 The following changes consolidates the identical/similar image
4276 support code previously found in xfns.c, w32fns.c, and macfns.c
4277 into a new file image.c.
4278
4279 * makefile.w32-in (OBJ1): Add image.o.
4280 ($(BLD)/image.$(O)): Add dependencies.
4281
4282 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
4283 (image.o): Add dependencies.
37264101 4284
c0f97789
KS
4285 * image.c: New file with consolidated image support code.
4286 (COLOR_TABLE_SUPPORT): New define to control whether
4287 color table support is available (X only).
4288 (Bitmap_Record): Common name for x_bitmap_record,
4289 w32_bitmap_record, and mac_bitmap_record.
4290 (XImagePtr): Common name for pointer to XImage or equivalent.
4291 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
4292 to XImagePtr on X+MAC, and to HDC on W32.
4293 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
4294 (NO_PIXMAP): Common name for "None" or equivalent.
4295 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
4296 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
4297 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
4298 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
4299 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
4300 (XDrawLine): Define on MAC for code sharing.
4301 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
4302 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
4303 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
4304 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4305 (x_reference_bitmap, x_create_bitmap_from_data)
4306 (x_create_bitmap_from_file, x_destroy_bitmap)
4307 (x_destroy_all_bitmaps, x_create_bitmap_mask)
4308 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
4309 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
4310 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
4311 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
4312 (define_image_type, lookup_image_type, valid_image_p)
4313 (image_error, enum image_value_type, struct image_keyword)
4314 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
4315 (make_image, free_image, prepare_image_for_display, image_ascent)
4316 (four_corners_best, image_background, image_background_transparent)
4317 (x_clear_image_1, x_clear_image, x_alloc_image_color)
4318 (make_image_cache, free_image_cache, clear_image_cache)
4319 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
4320 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
4321 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
4322 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
4323 (init_image_func_pointer, image_load_quartz2d)
4324 (struct ct_color, init_color_table, free_color_table)
4325 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
4326 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
4327 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
4328 (x_disable_image, x_build_heuristic_mask)
4329 (XBM support, XPM support, PBM support, PNG support, JPEG support)
4330 (TIFF support, GIF support, Ghostscript support): Consolidate image
4331 code from xfns.c, w32fns.c, and macfns.c.
4332 (syms_of_image): Consolidate image related symbol setup here.
4333 (init_image): Consolidate image related initializations here.
37264101 4334
c0f97789
KS
4335 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
4336 and init_image. Remove call to init_xfns.
4337
37264101
SM
4338 * macterm.h (struct mac_bitmap_record): Add file member.
4339 Not currently used, but simplifies code sharing.
c0f97789
KS
4340
4341 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
4342 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4343 (x_reference_bitmap, x_create_bitmap_from_data)
4344 (x_create_bitmap_from_file, x_destroy_bitmap)
4345 (x_destroy_all_bitmaps, x_create_bitmap_mask)
4346 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
4347 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
4348 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
4349 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
4350 (define_image_type, lookup_image_type, valid_image_p)
4351 (image_error, enum image_value_type, struct image_keyword)
4352 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
4353 (make_image, free_image, prepare_image_for_display, image_ascent)
4354 (four_corners_best, image_background, image_background_transparent)
4355 (x_clear_image_1, x_clear_image, x_alloc_image_color)
4356 (make_image_cache, free_image_cache, clear_image_cache)
4357 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
4358 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
4359 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
4360 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
4361 (init_image_func_pointer, image_load_quartz2d)
4362 (struct ct_color, init_color_table, free_color_table)
4363 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
4364 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
4365 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
4366 (x_disable_image, x_build_heuristic_mask)
4367 (XBM support, XPM support, PBM support, PNG support, JPEG support)
4368 (TIFF support, GIF support, Ghostscript support): Merge with image
4369 code from xfns.c and macfns.c into image.c.
4370 (syms_of_xfns): Move image related symbols to image.c.
4371 (init_external_image_libraries, init_xfns): Remove; initialization
4372 moved to init_image in image.c.
4373
4374 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
4375 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4376 (x_reference_bitmap, x_create_bitmap_from_data)
4377 (x_create_bitmap_from_file, x_destroy_bitmap)
4378 (x_destroy_all_bitmaps, x_create_bitmap_mask)
4379 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
4380 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
4381 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
4382 (define_image_type, lookup_image_type, valid_image_p)
4383 (image_error, enum image_value_type, struct image_keyword)
4384 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
4385 (make_image, free_image, prepare_image_for_display, image_ascent)
4386 (four_corners_best, image_background, image_background_transparent)
4387 (x_clear_image_1, x_clear_image, x_alloc_image_color)
4388 (make_image_cache, free_image_cache, clear_image_cache)
4389 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
4390 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
4391 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
4392 (struct ct_color, init_color_table, free_color_table)
4393 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
4394 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
4395 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
4396 (x_disable_image, x_build_heuristic_mask)
4397 (XBM support, XPM support, PBM support, PNG support, JPEG support)
4398 (TIFF support, GIF support, Ghostscript support): Merge with image
4399 code from xfns.c and macfns.c into image.c.
4400 (syms_of_xfns): Move image related symbols to image.c.
4401 (init_external_image_libraries, init_xfns): Remove; initialization
4402 moved to init_image in image.c.
4403
4404 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
4405 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4406 (x_reference_bitmap, x_create_bitmap_from_data)
4407 (x_create_bitmap_from_file, x_destroy_bitmap)
4408 (x_destroy_all_bitmaps, x_create_bitmap_mask)
4409 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
4410 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
4411 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
4412 (define_image_type, lookup_image_type, valid_image_p)
4413 (image_error, enum image_value_type, struct image_keyword)
4414 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
4415 (make_image, free_image, prepare_image_for_display, image_ascent)
4416 (four_corners_best, image_background, image_background_transparent)
4417 (x_clear_image_1, x_clear_image, x_alloc_image_color)
4418 (make_image_cache, free_image_cache, clear_image_cache)
4419 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
4420 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
4421 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
4422 (struct ct_color, init_color_table, free_color_table)
4423 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
4424 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
4425 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
4426 (x_disable_image, x_build_heuristic_mask)
4427 (XBM support, XPM support, PBM support, PNG support, JPEG support)
4428 (TIFF support, GIF support, Ghostscript support): Merge with
4429 w32fns.c and macfns.c image code into image.c.
4430 (syms_of_xfns): Move image related symbols to image.c.
4431 (init_xfns): Remove; initialization moved to init_image in image.c.
4432
4433 * lisp.h (syms_of_image, init_image): Add protoypes.
4434 (init_xfns): Remove prototype.
4435
4436 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4437 (x_reference_bitmap, x_create_bitmap_from_data)
4438 (x_create_bitmap_from_file, x_destroy_bitmap)
4439 (x_create_bitmap_mask): Move prototypes from dispextern.h.
4440 (gamma_correct) [MAC_OS]: Add prototype.
4441
4442 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4443 (x_reference_bitmap, x_create_bitmap_from_data)
4444 (x_create_bitmap_from_file, x_destroy_bitmap)
4445 (x_create_bitmap_mask): Move prototypes to dispextern.h.
4446
6eced09c
KH
44472004-03-09 Kenichi Handa <handa@etlken2>
4448
4449 * coding.c (decode_coding_emacs_mule): Handle insufficent source
4450 correctly.
4451
9a7e95f3
RS
44522004-03-04 Richard M. Stallman <rms@gnu.org>
4453
04a6e76b
RS
4454 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
4455
9a7e95f3
RS
4456 * window.c (Fdisplay_buffer): Doc fix.
4457
4458 * buffer.c (Fpop_to_buffer): Doc fix.
4459
6c2488df
KS
44602004-03-03 Kim F. Storm <storm@cua.dk>
4461
4462 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
4463
d8d95bc7
SM
44642004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
4465
4466 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
4467
357589bf
RS
44682004-03-02 Richard M. Stallman <rms@gnu.org>
4469
4470 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
4471
409949b5
KH
44722004-03-02 Kenichi Handa <handa@m17n.org>
4473
4474 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
4475
d24bc50f
KS
44762004-03-02 Kim F. Storm <storm@cua.dk>
4477
4478 * window.h (struct window): New member overlay_arrow_bitmap.
4479
4480 * window.c (make_window): Initialize overlay_arrow_bitmap.
4481
4482 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
4483 implement and integrate multiple overlay arrows with redisplay.
4484 (syms_of_xdisp): DEFVAR_LISP and initialize it.
4485 (last_arrow_position, last_arrow_string): Replace by properties.
4486 (Qlast_arrow_position, Qlast_arrow_string)
4487 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
4488 (syms_of_xdisp): Intern and staticpro them.
4489 (overlay_arrow_string_or_property, update_overlay_arrows)
4490 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
4491 (overlay_arrow_at_row): New functions for multiple overlay arrows.
4492 (redisplay_internal): Use them instead of directly accessing
4493 Voverlay_arrow_position etc. for multiple overlay arrows.
4494 (mark_window_display_accurate): Use update_overlay_arrows.
4495 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
4496 (try_window_id): Use overlay_arrows_changed_p.
4497 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
4498 (display_line): Use overlay_arrow_at_row to check multiple
4499 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 4500 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
4501 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
4502 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
4503
4504 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
4505 (update_window_fringes): Remove unused code.
4506
c1464661
JR
45072004-03-01 Jason Rumney <jasonr@gnu.org>
4508
4509 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
4510
a64387ee
JB
45112004-03-01 Juanma Barranquero <lektu@terra.es>
4512
4513 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
4514
4515 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
4516
334faa08
JD
45172004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4518
4519 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
4520 how many colors can be displayed.
4521
bb62616f
KH
45222004-03-01 Kenichi Handa <handa@m17n.org>
4523
4524 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
4525 correctly.
4526
0fd16104
KS
45272004-02-28 Kim F. Storm <storm@cua.dk>
4528
4529 * dispnew.c (update_window): Update header line also if there are
4530 no other changes in window (move code after set_cursor label).
4531
4532 * lisp.h (mark_window_display_accurate): Remove prototype.
4533
4534 * window.c (window_loop, Fforce_window_update): Force mode line
4535 updates by setting prevent_redisplay_optimizations_p and
4536 update_mode_lines.
4537
b59dd9c8
JD
45382004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4539
d8d95bc7 4540 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
4541
4542 * xterm.c (x_calc_absolute_position): Call x_real_positions
4543 to get WM window sizes and use those to calculate position.
d8d95bc7 4544 (x_set_offset): Remove code commented out.
b59dd9c8 4545
a874691c
MB
45462004-02-28 Miles Bader <miles@gnu.org>
4547
4548 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
4549
3e0c6482
KS
45502004-02-28 Kim F. Storm <storm@cua.dk>
4551
4552 * keyboard.c (kbd_buffer_store_event_hold): New function to store
4553 an event into kbd fifo, but with special handling of quit event;
4554 a quit event is saved for later, and further events are discarded
4555 until the saved quit event has been processed.
4556 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
4557 (gen_help_event): Store help event in kbd fifo.
4558 (NREAD_INPUT_EVENTS): Remove.
4559 (read_avail_input): Adapt to new read_socket_hook interface.
4560 Remove allocation and initialization of local input_event buffer,
4561 as read_socket_hook stores events directly in fifo. Allocate and
4562 initialize local hold_quit event to handle postponed quit event
4563 (and store it if set by kbd_buffer_store_event_hold).
4564
4565 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
4566 (gen_help_event): Fix prototype.
4567
a64387ee 4568 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 4569 numcharsp args. Add hold_quit arg.
f63fd14e 4570 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
4571 directly in fifo using kbd_buffer_store_event_hold.
4572
4573 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
4574 (read_input_waiting): Adapt to new read_socket_hook interface.
4575 Remove allocation and initialization of local input_event buffer,
4576 as read_socket_hook stores events directly in fifo. Allocate and
4577 initialize local hold_quit event to handle postponed quit event
4578 (and store it if set by kbd_buffer_store_event_hold).
4579
a64387ee 4580 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
4581
4582 * termhooks.h (read_socket_hook): Fix prototype.
4583
4584 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
4585 numcharsp args. Add hold_quit arg.
f63fd14e 4586 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
4587 directly in fifo using kbd_buffer_store_event_hold.
4588
4589 * w32inevt.h (w32_console_mouse_position): Fix prototype.
4590
4591 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
4592 Add hold_quit arg. Rework to use just one, local, inev
4593 input_event. Store inev directly in fifo using
3e0c6482
KS
4594 kbd_buffer_store_event_hold. Update count in one place.
4595 Postpone call to gen_help_event until inev is stored; use new
4596 local do_help for this.
4597 Remove local emacs_event in handing of ButtonPress event; just use
4598 inev instead (so no reason to copy it later).
4599
4600 * xsmfns.c (x_session_check_input): Remove numchars arg.
4601
d8d95bc7
SM
4602 * xterm.c (x_focus_changed, x_detect_focus_change):
4603 Remove numchars arg. Always store event into bufp arg.
4604 Return nothing. Callers changed accordingly.
3e0c6482
KS
4605 (glyph_rect): Simplify.
4606 (STORE_KEYSYM_FOR_DEBUG): New macro.
4607 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
4608 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
4609 (current_hold_quit) [USE_GTK]: Add.
4610 (event_handler_gdk): Adapt to new handle_one_xevent.
4611 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
4612 Add hold_quit arg. Rework to use just one, local, inev
4613 input_event. Store inev directly in fifo using
3e0c6482
KS
4614 kbd_buffer_store_event_hold. Update count in one place.
4615 Postpone call to gen_help_event until inev is stored; use new
4616 local do_help for this.
4617 Simplify handling of keysyms (consolidate common code). Fix bug
4618 where count was updated with nchars instead of nbytes.
4619 Remove local emacs_event in handing of ButtonPress event; just use
4620 inev instead (so no reason to copy it later).
4621 Remove `out' label. Rename label `ret' to `done'; add various
4622 `goto done' to clarify code flow in deeply nested blocks.
4623 (x_dispatch_event): Simplify as handle_one_xevent now calls
4624 kbd_buffer_store_event itself.
f63fd14e 4625 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
4626 arg. Call handle_one_xevent with new arglist. Store event from
4627 x_session_check_input in fifo.
4628 [USE_GTK]: Setup current_hold_quit.
4629 Decrement handling_signal before unblocking input.
4630 (x_initialize) [USE_GTK]: Initialize current_count.
4631
4632 * xterm.h (x_session_check_input): Fix prototype.
4633
e3564461 46342004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 4635
d8d95bc7 4636 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 4637
e3564461
ST
4638 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
4639 macgui.h).
a64387ee 4640
e3564461 4641 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 4642
e3564461
ST
4643 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
4644 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
4645 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
4646 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
4647 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
4648 (Bitmap): Remove typedef.
4649 (Pixmap): Change int to GWorldPtr.
4650
d8d95bc7 4651 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 4652
d8d95bc7
SM
4653 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
4654 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
4655 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
4656 long representation.
4657 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
4658 colors used for masks.
4659 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 4660
e3564461
ST
4661 * macfns.c: Include sys/types.h and sys/stat.h.
4662 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
4663 Include QuickTime/QuickTime.h.
4664 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
4665 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
4666 functions defined in macterm.c.
4667 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
4668 (ZPixmap): New #define for compatibility with xfns.c.
4669 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
4670 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
4671 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
4672 New functions.
e3564461 4673 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
4674 (x_destroy_x_image, unwind_create_frame, x_disable_image)
4675 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
4676 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
4677 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
4678 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
4679 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
4680 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
4681 long mixup.
4682 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
4683 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
4684 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
4685 (x_set_cursor_type, Fxw_color_values, valid_image_p)
4686 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
4687 (x_alloc_image_color, clear_image_cache, lookup_image)
4688 (x_find_image_file, xbm_read_bitmap_file_data)
4689 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
4690 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
4691 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
4692 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
4693 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 4694 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
4695 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
4696 #if 0.
4697 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
4698 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
4699 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
4700 New functions (from xfns.c).
e3564461
ST
4701 (Fx_create_frame): Record unwind_create_frame.
4702 (Fxw_display_color_p): Use dpyinfo->color_p.
4703 (Fx_display_grayscale_p, Fx_display_planes): Don't use
4704 dpyinfo->n_cbits.
4705 (Fx_display_color_cells): Use dpyinfo->n_planes;
4706 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
4707 (Qheuristic, cross_disabled_images, emboss_matrix)
4708 (laplace_matrix): New variables (from xfns.c).
4709 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
4710 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
4711 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
4712 (image_background_transparent): New function (from xfns.c).
4713 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
4714 (image_load_quicktime): Add declaration.
4715 [MAC_OSX] (image_load_quartz2d): Likewise.
4716 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
4717 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 4718 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
4719 (xbm_load_image_from_file, x_laplace_read_row)
4720 (x_laplace_write_row, pbm_read_file): Remove functions.
4721 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
4722 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
4723 (colors_in_color_table): Sync with xfns.c (although not used).
4724 (lookup_rgb_color): Don't lookup color table. Just do gamma
4725 correction.
4726 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
4727 (x_disable_image): New function (from xfns.c).
4728 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
4729 (x_build_heuristic_mask): Sync with xfns.c.
4730 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
4731 (HAVE_PBM): Remove #ifdef.
4732 (pbm_load): Sync with xfns.c. Set img->width and img->height
4733 before IMAGE_BACKGROUND.
d8d95bc7 4734 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
4735 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
4736 Don't enclose with #if HAVE_PNG.
4737 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
4738 symbol _CGImageCreateWithPNGDataProvider is defined.
4739 Otherwise use image_load_quicktime.
e3564461 4740 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
4741 [HAVE_PNG] (png_load): Sync with xfns.c.
4742 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
4743 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
4744 HAVE_JPEG.
4745 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
4746 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
4747 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
4748 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
4749 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
4750 (tiff_image_p, tiff_load): Don't enclose declarations with #if
4751 HAVE_TIFF.
4752 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
4753 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
4754 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
4755 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
4756 New functions (from xfns.c).
e3564461 4757 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 4758 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
4759 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
4760 Don't enclose with #if HAVE_GIF.
4761 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
4762 animated gif. Otherwise use image_load_quicktime.
4763 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
4764 gif_DrawText to avoid conflict with QuickdrawText.h.
4765 [HAVE_GIF] (gif_load): Sync with xfns.c.
4766 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
4767 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
4768 Ghostscript is not supported yet).
4769 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
4770 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
4771 cross_disabled_images (from xfns.c). Remove #if 0 for supported
4772 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
4773 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
4774 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
4775 HAVE_PNG. Call EnterMovies to support animated gifs.
4776 Call init_image_func_pointer to bind a symbol
e3564461 4777 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 4778
d8d95bc7 4779 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
4780 (x_draw_bar_cursor): Sync declaration with xterm.c.
4781 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
4782 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
4783 graphics).
4784 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
4785 (mac_draw_line_to_pixmap, XCreatePixmap)
4786 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
4787 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
4788 New functions.
4789 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
4790 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
4791 Cast bits to char *.
e3564461
ST
4792 (reflect_byte): New function (from w32fns.c).
4793 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
4794 due to byte alignment.
d8d95bc7
SM
4795 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
4796 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
4797 (XSetForeground): Remove static (now used in macfns.c).
4798 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
4799 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
4800 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
4801 (x_draw_glyph_string_box, x_draw_image_foreground)
4802 (x_draw_image_foreground_1, x_draw_image_glyph_string)
4803 (x_draw_stretch_glyph_string, x_draw_glyph_string)
4804 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
4805 Sync with xterm.c.
4806 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
4807 than the xterm.c version when a strictly horizontal or vertical
4808 line is drawn.
4809 (XTset_terminal_window): Add static.
4810 (x_make_frame_visible): Add UNBLOCK_INPUT.
4811 (x_free_frame_resources): New funcion (from xterm.c).
4812 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
4813 occurs in tool bar area.
d8d95bc7
SM
4814 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
4815 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
4816 Initialize image cache.
4817 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
4818 Enclose unused functions with #if 0.
4819 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
4820 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 4821 from a mac font name to an XLFD font name according to its script code.
e3564461 4822 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 4823 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
4824 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
4825 whose name starts with `.'.
4826 (init_font_name_table): Use decode_mac_font_name. Add both
4827 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
4828 of a font is smJapanese.
4829 (mac_do_list_fonts): New function to list fonts that match a given
4830 pattern.
4831 (x_list_fonts, XLoadQueryFont): Use it.
4832 (XLoadQueryFont): Set rbearing field for each variable width
4833 character to avoid needless redraw.
4834 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
4835
446f5f3d
KS
48362004-02-26 Kim F. Storm <storm@cua.dk>
4837
af617d0f
KS
4838 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
4839 as read_socket_hook handler on X aborts if buffer is too small
4840 and W32 handler doesn't always check buffer limit.
4841
446f5f3d
KS
4842 * xdisp.c (handle_single_display_prop): Handle left-fringe and
4843 right-fringe similar to a display margin image. Specifically,
4844 the characters having the fringe prop are no longer shown, and
4845 we use IT_IMAGE/next_element_from_image with image_id = -1 to
4846 do this. Set fringe bitmap face_id in it->face_id.
4847 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
4848 still realize it->face (i.e. the fringe bitmap face).
4849
7d8a0b55
MB
48502004-02-25 Miles Bader <miles@gnu.org>
4851
4852 * xdisp.c (check_it): Check string/string_pos consistency.
4853 (init_iterator): Initialize string-related fields properly.
4854
48552004-02-11 Miles Bader <miles@gnu.org>
4856
4857 * xdisp.c (produce_image_glyph): Force negative descents to zero.
4858
48592004-02-10 Miles Bader <miles@gnu.org>
4860
4861 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
4862 BLOCK_INPUT can be nested, so it doesn't make much sense.
4863
a64387ee 48642004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
4865
4866 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
4867 (xbm_read_bitmap_data): Use unsigned char for image data.
4868
92f5fba2
LT
48692004-02-23 Luc Teirlinck <teirllm@auburn.edu>
4870
4871 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
4872
8565fb3d
JR
48732004-02-22 Jason Rumney <jasonr@gnu.org>
4874
4875 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
4876 correctly over other bitmaps.
4877
a6eeaa81 48782004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
4879
4880 * emacs.c (USAGE1): Split into two halves.
4881 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
4882 (USAGE3): Rename from USAGE2.
4883 (USAGE4): Rename from USAGE3.
f8125c39 4884
4effffca
EZ
48852004-02-21 Juri Linkov <juri@jurta.org>
4886
4887 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
4888 Fix --multibyte. Move --help, --version to USAGE2. Add alias
4889 --file. Fix -f, -l. Sort options. Untabify.
4890 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
4891
923c1e6f
LT
48922004-02-19 Luc Teirlinck <teirllm@auburn.edu>
4893
4894 * category.c (Fdefine_category, Fcategory_docstring)
4895 (Fget_unused_category, Fset_category_table)
4896 (Fcategory_set_mnemonics): Doc fixes.
4897
b0e225fd
KS
48982004-02-20 Kim F. Storm <storm@cua.dk>
4899
4900 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
4901 The following changes are relative to the 2004-01-21 revision.
4902 (NREAD_INPUT_EVENTS): Define as max number of input events to read
4903 in one call to read_socket_hook. Value is 8.
4904 (read_avail_input): Separate and rework handling of read_socket_hook
4905 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
4906 in read_socket_hook case, and repeat if full buffer is read.
4907 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
4908 In non-read_socket_hook case, just use a single input_event, and
4909 call kbd_buffer_store_event on the fly for each character.
4910
b15aa9f9
SM
49112004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
4912
4913 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
4914 Remove unused `gu' alternative.
4915
83c9aa95
AS
49162004-02-19 Andreas Schwab <schwab@suse.de>
4917
4918 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
4919 warning.
4920
cc808173
KS
49212004-02-18 Kim F. Storm <storm@cua.dk>
4922
4923 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
4924 Fix last change.
4925
ab90a54d
KS
49262004-02-17 Kim F. Storm <storm@cua.dk>
4927
b26f249f
KS
4928 * xdisp.c (fast_find_position): Fix return value of new version;
4929 it was inverted compared to the 21.1 version.
4930 (get_window_cursor_type): Don't look at glyph if NULL.
4931 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 4932
ab90a54d
KS
4933 * keyboard.c: Rework previous change; it didn't consider that the
4934 buf array was allocated on the stack.
4935 (prev_read): Remove variable.
4936 (read_avail_input_buf): New static event buffer array.
b9568dfc 4937 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 4938 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
4939 Use in_read_avail_input to handle re-entrance; when re-entered,
4940 fully initialize and use tmp_buf array instead of read_avail_input_buf.
4941 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
4942 is always cleared on entry. To ensure that, we clear (just) the
4943 entries that were used before we return.
4944 (init_keyboard): Initialize read_avail_input_buf here.
4945
b6189c3b 49462004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
4947
4948 * cmds.c (Fend_of_line): Doc fix.
4949
7b5368c1
EZ
49502004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
4951
4952 * keyboard.c (prev_read): New static variable.
4953 (read_avail_input): Use it to zero out only those slots in buf[]
4954 that were used last time we were called.
4955
a6eeaa81 49562004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
4957
4958 * Makefile.in (obj): Move fringe.o from here...
4959 (XOBJ, MAC_OBJ): ...to here.
4960
159c348e
SE
49612004-02-16 Stephen Eglen <stephen@gnu.org>
4962
4963 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
4964
d2f14999
SM
49652004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
4966
b15aa9f9
SM
4967 * data.c (Fbyteorder):
4968 * fringe.c (Fdefine_fringe_bitmap):
4969 * xdisp.c (handle_single_display_prop):
d2f14999
SM
4970 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
4971
8d50508a
JR
49722004-02-16 Jason Rumney <jasonr@gnu.org>
4973
4974 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
4975
dd4497dc
ST
49762004-02-15 Steven Tamm <steventamm@mac.com>
4977
4978 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
4979 controlling emulation of a three button mouse with option and
4980 command keys.
4981 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 4982 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 4983
c9159cb3
KS
49842004-02-15 Kim F. Storm <storm@cua.dk>
4985
2cc52658
KS
4986 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
4987
c9159cb3
KS
4988 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
4989 Perform byte-swapping.
4990
12fde2dc
KS
49912004-02-14 Kim F. Storm <storm@cua.dk>
4992
4993 * dispextern.h (struct draw_fringe_bitmap_params): Change member
4994 bits from char to short to facilitate wider bitmaps.
4995 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
4996 member.
4997
4998 * fringe.c (struct fringe_bitmap): Change member bits from char to
4999 short to facilitate 16 bits wide bitmaps. Modify all standard
5000 bitmaps accordingly.
5001 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
5002 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
5003 (draw_fringe_bitmap): Ditto.
5004 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
5005 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
5006 handle up to 16 bits wide bitmaps.
5007 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 5008 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
5009
5010 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
5011 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
5012 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
5013
5014 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
5015 so it is no longer necessary to expand them here.
5016
5017 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
5018
9d7271e8
KS
50192004-02-12 Kim F. Storm <storm@cua.dk>
5020
5021 * window.c (Fwindow_fringes): Doc fix.
5022
706c1e4f
JD
50232004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5024
5025 * xselect.c (x_get_foreign_selection): Add new optional parameter
5026 time_stamp.
5027 (Fx_get_selection_internal): Ditto, pass time_stamp to
5028 x_get_foreign_selection.
5029
5030 * data.c (Fbyteorder): New function.
5031
c2d12b5d
JD
50322004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5033
5034 * atimer.c: Move include stdio.h to same place as in other files.
5035
5036 * region-cache.c: Ditto.
5037
5038 * sysdep.c: Ditto.
5039
5040 * xfaces.c: Ditto.
5041
4c1947b9
SS
50422004-02-09 Sam Steingold <sds@gnu.org>
5043
89458937 5044 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 5045
82722af3
KS
50462004-02-09 Kim F. Storm <storm@cua.dk>
5047
5048 * fringe.c: New file. Move original fringe related declarations
5049 and code from dispextern.h and xdisp.c here.
5050 Rework code to support user defined fringe bitmaps, redefining
5051 standard bitmaps, ability to overlay user defined bitmap with
5052 overlay arrow bitmap, and add faces to bitmaps.
5053 (Voverflow_newline_into_fringe): Declare here.
5054 (enum fringe_bitmap_align): New enum.
5055 (..._bits): All bitmaps are now defined without bitswapping; that
5056 is now done in init_fringe_once (if necessary).
5057 (standard_bitmaps): New array with specifications for the
5058 standard fringe bitmaps.
5059 (fringe_faces): New array.
5060 (valid_fringe_bitmap_id_p): New function.
5061 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
5062 (draw_fringe_bitmap): New function which draws fringe bitmap,
5063 possibly overlaying bitmap with cursor in right fringe or the
5064 overlay arrow in the left fringe.
5065 (update_window_fringes): Do not handle overlay arrow here.
5066 Compare and copy fringe bitmap faces.
5067 (init_fringe_bitmap): New function.
5068 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
5069 define and destroy user defined fringe bitmaps.
5070 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
5071 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
5072 (syms_of_fringe): New function. Defsubr new DEFUNs.
5073 DEFVAR_LISP Voverflow_newline_into_fringe.
5074 (init_fringe_once, init_fringe): New functions.
5075 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 5076
82722af3
KS
5077 * Makefile.in (obj): Add fringe.o.
5078 (fringe.o): New dependencies.
5079
5080 * dispextern.h (FRINGE_ID_BITS): New definition for number of
5081 bits allocated to hold a fringe number. Increase number of bits
5082 from 4 to 8 to allow user defined fringe bitmaps.
5083 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
5084 left_user_fringe_face_id, right_user_fringe_bitmap,
5085 right_user_fringe_face_id.
5086 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
5087 Move to new file fringe.c.
5088 (MAX_FRINGE_BITMAPS): Define here.
5089 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
5090 and overlay_p. Change member which to int.
5091 (struct redisplay_interface): New members define_fringe_bitmap
5092 and destroy_fringe_bitmap.
5093 (valid_fringe_bitmap_id_p): Add prototype.
5094 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
5095
5096 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
5097 arrows.
5098 (update_frame): Do flush_display if force_flush_display_p to
5099 ensure display (specifically fringes) are updated in a timely
5100 manner when resizing the frame by dragging the mouse.
5101 (update_window_line): Update row if overlay arrow changed.
5102 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
5103 or overlay arrow changed.
5104
5105 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
5106 syms_of_fringe, and init_fringe.
5107
5108 * frame.h (struct frame): New member force_flush_display_p.
5109
5110 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
5111 Add prototypes.
5112
a3993cc8 5113 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 5114 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
5115 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
5116 Use cursor color for displaying cursor in fringe.
82722af3
KS
5117 (x_redisplay_interface): Add null handlers for
5118 define_fringe_bitmap and destroy_fringe_bitmap functions.
5119
5120 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
5121 xterm.c to handle overlayed fringe bitmaps and to use cursor color
5122 for displaying cursor in fringe.
5123 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
5124 specific functions to define and destroy fringe bitmaps in fringe_bmp.
5125 (w32_redisplay_interface): Add them to redisplay_interface.
5126 (w32_term_init): Call w32_init_fringe instead of explicitly
5127 defining fringe bitmaps in fringe_bmp array.
5128 (x_delete_display): Call w32_reset_fringes instead of explicitly
5129 destroying fringe bitmaps in fringe_bmp array.
5130
5131 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
5132 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
5133 (continued_bits, continuation_bits, ov_bits, first_line_bits)
5134 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
5135 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
5136 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
5137 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
5138 Move fringe handling vars and code to new file fringe.c.
5139 (handle_display_prop): Handle left-fringe and right-fringe
5140 display properties; store user fringe bitmaps in iterator.
5141 (move_it_in_display_line_to): Handle cursor in fringe at eob.
5142 (clear_garbaged_frames): Set force_flush_display_p if resized.
5143 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
5144 (display_line): Handle cursor in fringe at eob.
5145 (display_line): Set row user fringe bitmaps from iterator.
5146
5147 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
5148 Use cursor color for displaying cursor in fringe.
5149 (x_redisplay_interface): Add null handlers for
5150 define_fringe_bitmap and destroy_fringe_bitmap functions.
5151
030400eb
JD
51522004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5153
5154 * macfns.c (Fx_change_window_property): Make doc string and
5155 parameters same as for X version.
5156
5157 * w32fns.c (Fx_change_window_property): Ditto.
5158
3af55251
KS
51592004-02-07 Kim F. Storm <storm@cua.dk>
5160
ec110e9e
KS
5161 * xdisp.c (hscroll_window_tree): Position cursor near to right
5162 margin in hscrolled window when jumping to end of line (rather
5163 than centering cursor).
5164
3af55251
KS
5165 * process.c (wait_reading_process_input): Don't do adaptive read
5166 buffering if waiting for a specific process.
5167
b0c138ce
LT
51682004-02-05 Luc Teirlinck <teirllm@auburn.edu>
5169
5170 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
5171 (Fread_minibuffer, Feval_minibuffer)
5172 (Fread_string, Fread_no_blanks_input)
5173 (Fcompleting_read): Doc fixes.
5174 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
5175 completion-regexp-list. Define Qcase_fold_search and staticpro it.
5176 (read_minibuf): Fix initial comment.
5177 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 5178 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
5179 checking completion-regexp-list.
5180 (Fdisplay_completion_list): Make it handle arguments that are
5181 symbols. Doc fix.
5182
9676f5ad 51832004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 5184
9676f5ad 5185 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 5186
9676f5ad
JD
5187 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
5188 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 5189 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 5190 format. Remove unused variable cons.
5b698285
JD
5191
5192 * xselect.c: Include stdio,h.
5193
fc1d15f6
KH
51942004-02-05 Kenichi Handa <handa@m17n.org>
5195
ebaff4af
KH
5196 * fns.c (Fset_char_table_range): Fix previous change.
5197
fc1d15f6
KH
5198 * buffer.c (Fset_buffer_multibyte): Fix docstring.
5199
9676f5ad
JD
52002004-02-04 Luc Teirlinck <teirllm@auburn.edu>
5201
5202 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
5203
da75761f
SM
52042004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
5205
5206 * keymap.c (Vmouse_events): Rename from Vmenu_events.
5207 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
5208
13c5d120
KH
52092004-02-04 Kenichi Handa <handa@m17n.org>
5210
5211 * fns.c (Fset_char_table_range): Handle charsets ascii,
5212 eight-bit-control, and eight-bit-graphic correctly.
5213
2883d842
JR
52142004-02-03 Jason Rumney <jasonr@gnu.org>
5215
5216 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
5217
5218 * w32fns.c (x_to_w32_font): Likewise.
5219
69eff41f
JD
52202004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5221
5222 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
5223 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
5224
5225 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
5226 ClientMessages.
5227
5228 * xselect.c: Include termhooks.h and X11/Xproto.h
5229 (x_check_property_data, x_fill_property_data)
5230 (x_property_data_to_lisp, mouse_position_for_drop)
5231 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 5232 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
5233 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
5234
da75761f 5235 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
5236 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
5237 OUTER_P.
5238 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
5239 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
5240 if vector_ret_p is true.
5241 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 5242
a6eeaa81 52432004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
5244
5245 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
5246 basename of FILE relative to it, not FILE itself.
5247
09721b31
KH
52482004-02-02 Kenichi Handa <handa@m17n.org>
5249
5250 * coding.c (coding_restore_composition): Check invalid
5251 composition data more rigidly.
5252
eb996101
LT
52532004-01-30 Luc Teirlinck <teirllm@auburn.edu>
5254
5255 * fileio.c (Fread_file_name_internal): Correctly handle the case
5256 where insert-default-directory is nil.
5257 (Fread_file_name): Always return an empty string if the user exits
5258 with an empty minibuffer. Adapt the docstring accordingly.
5259 (syms_of_fileio): Adapt the docstring of insert-default-directory
5260 to the change in Fread_file_name.
5261
a6eeaa81 52622004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
5263
5264 * alloca.c [!alloca]: Fix the prototype for xfree.
5265
13f52ed8
KH
52662004-01-29 Kenichi Handa <handa@m17n.org>
5267
5268 * fns.c (string_char_to_byte): Optimize for ASCII only string.
5269 (string_byte_to_char): Likewise.
5270
d57625a0
JR
52712004-01-28 Peter Runestig <peter@runestig.com>
5272
5273 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
5274
a64387ee 52752004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
5276
5277 * unexmacosx.c (unexec_copy): Do not copy more than was
5278 requested to prevent overwriting during unexec.
5279
eb37b8fd
JD
52802004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5281
ce38070a
JD
5282 * process.c (sigchld_handler): Add comment about not calling malloc.
5283
eb37b8fd
JD
5284 * process.h: Add extern to synch_process_termsig.
5285
a64387ee 52862004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 5287
da75761f
SM
5288 * macterm.c (make_mac_frame, make_mac_terminal_frame):
5289 Move setting of scroll bars from make_mac_frame to
5290 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 5291
d62a265d
RS
52922004-01-26 Richard M. Stallman <rms@gnu.org>
5293
5294 * search.c (Freplace_match): Handle nonexistent
5295 back-references properly.
5296
52972004-01-03 Richard M. Stallman <rms@gnu.org>
5298
5299 * window.c (decode_any_window): New function.
5300 (Fwindow_height, Fwindow_width, Fwindow_edges)
5301 (Fwindow_pixel_edges, Fwindow_inside_edges)
5302 (Fwindow_inside_pixel_edges): Use decode_any_window.
5303
ff236419
JD
53042004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5305
5306 * process.h: synch_process_termsig new variable.
5307
5308 * callproc.c: Define synch_process_termsig.
5309 (Fcall_process): Initiate synch_process_termsig to zero and
5310 check if non-zero and get signal name after subprocess has ended.
5311
5312 * process.c (sigchld_handler): Set synch_process_termsig
5313 if terminated by a signal. synch_process_death setting removed.
5314
5315 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
5316
41b867ea
AS
53172004-01-26 Andreas Schwab <schwab@suse.de>
5318
5319 * print.c (print_preprocess): Declare size as EMACS_INT to not
5320 lose bits.
5321 (print_object): Likewise.
5322 * alloc.c (Fpurecopy): Likewise.
5323
a08084ff
LT
53242004-01-25 Luc Teirlinck <teirllm@auburn.edu>
5325
5326 * window.c (Fwindow_minibuffer_p): Doc fix.
5327
b19ac475
JY
53282004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
5329
5330 * editfns.c (Fformat): Make both passes accept the same set of flags.
5331
fe905025
KH
53322004-01-23 Kenichi Handa <handa@m17n.org>
5333
5334 * fns.c (Fmd5): If OBJECT is a buffer different from the current
5335 one, set buffer to OBJECT temporarily.
5336
438fc6c0
SM
53372004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
5338
455316e2
SM
5339 * keyboard.c (kbd_buffer_gcpro): Remove.
5340 (kbd_buffer_store_event, clear_event, Fdiscard_input)
5341 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
5342 Don't initialize and/or maintain the variable any more. It was made
5343 redundant by my commit of 2003-06-15.
5344
438fc6c0
SM
5345 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
5346
5335a4ee
JD
53472004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5348
5349 * lisp.h: Add undef DECL_ALIGN.
5350
dcdaeebc
SM
53512004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
5352
5353 * process.c (wait_reading_process_input) [SYNC_INPUT]:
5354 Check interrupt_input_pending explicitly.
5355
5356 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
5357
5358 * keyboard.c (handle_async_input): New fun,
5359 extracted from input_available_signal.
5360 (input_available_signal, reinvoke_input_signal): Use it.
5361
9076a823
SM
53622004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
5363
d7107586
SM
5364 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
5365
5366 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
5367 manipulation macros for when tags are in the lower bits.
5368 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
5369 (DECL_ALIGN): New macro.
5370 (DEFUN): Use it.
5371
5372 * lisp.h [ENABLE_CHECKING]: Don't force union type.
5373
5374 * s/darwin.h (__attribute__): Remove outdated workaround.
5375
5376 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
5377
5378 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
5379 Don't check range of malloc address.
5380 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
5381
9076a823
SM
5382 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
5383
5384 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
5385
ba029065
KH
53862004-01-19 Kenichi Handa <handa@m17n.org>
5387
5388 * fontset.c (fontset_font_pattern): Fix previous change.
5389
7af0e8d7
MB
53902004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
5391
5392 * xdisp.c (Voverflow_newline_into_fringe)
5393 (move_it_in_display_line_to, redisplay_internal)
5394 (update_window_fringes, redisplay_window, display_line, window):
5395 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
5396 that it compiles without a window-system.
5397 * dispnew.c (direct_output_for_insert, update_window): Likewise.
5398
77a9cf69
KS
53992004-01-16 Kim F. Storm <storm@cua.dk>
5400
5401 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
5402
a64387ee 5403 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
5404 buffer_local_flags for indicate_buffer_boundaries.
5405 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
5406 default- variable for it.
5407
5408 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
5409 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 5410 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
5411 overflowing newlines into right fringe.
5412 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
5413 and indicate_bottom_line_p for buffer boundaries and scrolling.
5414 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
5415 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
5416 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
5417 and HOLLOW_SQUARE_BITMAP.
5418 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
5419 Add prototypes.
5420
5421 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
5422 instead of related indicator fields.
5423 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
5424 (direct_output_for_insert): Handle exact width lines like
5425 contined lines. Call update_window_fringes.
5426 (update_window): Call update_window_fringes.
5427 (scrolling_window): Don't skip desired rows with changed bitmaps.
5428 Check if fringe bitmaps changes when assigning scrolled rows.
5429
5430 * xdisp.c (Voverflow_newline_into_fringe): New variable.
5431 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
5432 (move_it_in_display_line_to): Overflow newline into fringe for
5433 rows that are exactly as wide as the window.
5434 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
5435 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
5436 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
5437 (fringe_bitmaps): Add new bitmaps.
5438 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
5439 Select proper bitmap for cursor in fringe when appropriate.
5440 Handle alignment of bitmap to top or bottom of row.
5441 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
5442 done by update_window_fringes.
5443 (update_window_fringes, draw_window_fringes): New functions.
5444 (redisplay_internal): Call update_window_fringes in case only
5445 cursor row is updated.
5446 (redisplay_window): Call update_window_fringes.
5447 Explicitly call draw_window_fringes if redisplay was done using
5448 the current matrix or the overlay arrow is in the window.
5449 (try_window_reusing_current_matrix): Mark scrolled rows for
5450 fringe update (to update buffer-boundaries / scrolling icons).
5451 (find_last_unchanged_at_beg_row): Handle exact width lines line
5452 continued lines.
5453 (display_line): Overflow newline into fringe for rows that are
5454 exactly as wide as the window. Don't append space for newline
d7107586 5455 in this case.
77a9cf69
KS
5456 (notice_overwritten_cursor): Explicitly clear cursor bitmap
5457 in fringe as if it had been overwritten.
5458 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 5459 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
5460 void-text-area-pointer as user options.
5461 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 5462
77a9cf69
KS
5463 * xterm.c (x_update_window_end): Call draw_window_fringes.
5464 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
5465 in row instead of actually drawing fringe bitmaps.
5466 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
5467 (x_draw_window_cursor): Draw cursor in fringe.
5468
5469 * w32term.c (x_update_window_end): Call draw_window_fringes.
5470 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
5471 in row instead of actually drawing fringe bitmaps.
5472 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
5473 (w32_draw_window_cursor): Draw cursor in fringe.
5474
5475 * macterm.c (x_update_window_end): Call draw_window_fringes.
5476 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
5477 in row instead of actually drawing fringe bitmaps.
5478 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
5479 (mac_draw_window_cursor): Draw cursor in fringe.
5480
a633a954
JD
54812004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5482
5483 * xterm.c (handle_one_xevent): Don't handle characters that are part
5484 of an old style (XLookupString) compose sequence.
5485
80460525
KH
54862004-01-15 Kenichi Handa <handa@m17n.org>
5487
5488 * search.c (Freplace_match): Use make_multibyte_string or
5489 make_unibyte_string according to the buffer multibyteness.
5490
7fc34f85
SM
54912004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
5492
5493 * alloc.c (struct interval_block, struct string_block)
5494 (struct symbol_block, struct marker_block, live_string_p)
5495 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
5496 Better preserve alignment for objects in blocks.
5497 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
5498
5499 * lread.c (defvar_per_buffer): Remove dead declaration.
5500
5501 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
5502 space size.
5503
66070bd1
JD
55042004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5505
5506 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
5507 if a key press should pop down. Only pop down if a key is pressed
5508 outside the menu/dialog.
5509 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
5510 popup_get_selection.
5511 (create_and_show_dialog): Pass 1 for down_on_keypress to
5512 popup_get_selection.
5513
de7515d6
JD
55142004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5515
5516 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
5517 BLOCK/UNBLOCK_INPUT.
5518
160b1b50
JD
55192004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5520
5521 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
5522 specified.
5523
3a9f36e6
KH
55242004-01-08 Kenichi Handa <handa@m17n.org>
5525
5526 * editfns.c (Fformat): Fix '&' to '&&'.
5527
3803eb32
AS
55282004-01-08 Andreas Schwab <schwab@suse.de>
5529
5530 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
5531 size if PSEUDOVECTOR_FLAG is set.
5532
9da88f37
KH
55332004-01-07 Kenichi Handa <handa@m17n.org>
5534
74ac5074
KH
5535 * charset.c (Fdeclare_equiv_charset): Fix docstring.
5536
9da88f37
KH
5537 * fontset.c (fontset_ref_via_base): Fix previous change.
5538
05faee07
KS
55392004-01-07 Kim F. Storm <storm@cua.dk>
5540
5541 * process.c (read_process_output): Only activate adaptive
5542 buffering if we read less than 256 bytes at a time.
5543
634910c8
KS
55442004-01-06 Kim F. Storm <storm@cua.dk>
5545
5546 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
5547 object and image object. Return glyph width and height.
5548 (mode_line_string, marginal_area_string): Ditto.
5549
5550 * dispextern.h (buffer_posn_from_coords, mode_line_string)
5551 (marginal_area_string): Fix prototypes.
5552
5553 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 5554 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
5555 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
5556
5557 * keyboard.c (make_lispy_position): Use modified mode_line_string,
5558 buffer_posn_from_coords, and marginal_area_string functions to
5559 include both string object and image object in the lispy position.
5560 Also add actual glyph width and height to position.
5561 (read_key_sequence): Use real buffer position from mouse
5562 event to find keymap property even when click is in marginal area.
5563
5564 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
5565 mode_line_string and marginal_area_string functions to handle
5566 both string object and image object properties.
d7107586 5567
57951c2e
AS
55682004-01-06 Andreas Schwab <schwab@suse.de>
5569
5570 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
5571 character.
5572
181e6a61
AS
55732004-01-02 Andreas Schwab <schwab@suse.de>
5574
d7107586
SM
5575 * macterm.c (emacs_options, x_initialized, same_x_server):
5576 Remove unused (and duplicated) definitions.
181e6a61 5577
31e0fbdd
KS
55782004-01-02 Kim F. Storm <storm@cua.dk>
5579
5580 * process.h (struct Lisp_Process): New members for adaptive read
5581 buffering: adaptive_read_buffering, read_output_delay, and
5582 read_output_skip.
5583
5584 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
5585 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
5586 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
5587 (process_output_delay_count, process_output_skip): New vars.
5588 (Vprocess_adaptive_read_buffering): New variable.
5589 (make_process): Initialize adaptive read buffering members.
5590 (Fstart_process): Set adaptive_read_buffering member.
5591 (deactivate_process): Cleanup adaptive read buffering.
5592 (wait_reading_process_input): Temporarily omit delayed
5593 subprocesses from the set of file descriptors to read from;
5594 adjust the select timeout if we skipped any subprocesses.
5595 (read_process_output): Increase adaptive read buffering delay if
5596 we read less than a full buffer; reduce delay when we read a
5597 full buffer.
5598 (send_process): Simplify using local Lisp_Process var.
5599 Reset adaptive read buffering delay after write.
5600 (init_process): Initialize process_output_delay_count and
5601 process_output_skip.
5602 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
5603
68c6a789
JR
56042004-01-01 Jason Rumney <jasonr@gnu.org>
5605
d7107586 5606 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 5607
3f70fe82
LT
56082003-12-30 Luc Teirlinck <teirllm@auburn.edu>
5609
5610 * print.c (Ferror_message_string): Add hyperlink in the docstring
5611 to the definition of `signal' in the Elisp manual.
5612 * eval.c (Fsignal): Ditto.
5613
b6189c3b 56142003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
5615
5616 * fns.c (internal_equal): Return t for two NaN arguments.
5617
7abd90ea
RS
56182003-12-29 Richard M. Stallman <rms@gnu.org>
5619
5620 * data.c (store_symval_forwarding): Handle setting
5621 default-fill-column, etc., by changing the value in
5622 buffers that use the default.
5623
5624 * minibuf.c (Fset_minibuffer_window): Doc fix.
5625
5626 * fileio.c (choose_write_coding_system): Ignore auto_saving
5627 if using the visited file for auto saves.
5628 (Fwrite_region): Don't update SAVE_MODIFF
5629 if auto-saving in visited file.
5630
3e7cfcdc
KH
56312003-12-29 Kenichi Handa <handa@m17n.org>
5632
5633 * dispextern.h (face_font_available_p): Extern it.
5634
5635 * fontset.c (Voverriding_fontspec_alist): New variable.
5636 (lookup_overriding_fontspec): New function.
d7107586 5637 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
5638 (fontset_font_pattern): Likewise.
5639 (regulalize_fontname): New function.
5640 (Fset_fontset_font): Call regulalize_fontname.
5641 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
5642 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
5643 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
5644
5645 * xfaces.c (face_font_available_p): New function.
5646
7abd90ea
RS
56472003-12-28 Richard M. Stallman <rms@gnu.org>
5648
5649 * buffer.c (Fother_buffer): Don't crash if BUF is nil
5650 or if its name is nil.
5651
5652 * buffer.c (Fkill_buffer): Don't delete auto-save file
5653 if it's the same as the visited file.
5654
de1d1a40
LT
56552003-12-28 Luc Teirlinck <teirllm@auburn.edu>
5656
5657 * coding.c (Fcheck_coding_system): Doc fix.
5658
204fb75e
KS
56592003-12-28 Kim F. Storm <storm@cua.dk>
5660
5661 * Makefile.in (eval.o): Depend on dispextern.h.
5662
5663 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
5664 image glyph using image's ascent.
5665 (mode_line_string): Return image glyph as object clicked on.
5666 Adjust y0 for image glyph using image's ascent.
5667
5668 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
5669 (struct glyph): New members, ascent and descent. Used to save
5670 this glyph's ascent and descent, instead of having.
5671 (struct glyph): Declare member face_id using FACE_ID_BITS.
5672 (find_hot_spot): Add prototype.
5673
5674 * keyboard.c (Qimage): Remove extern (now in lisp.h).
5675 (QCmap): Declare extern.
5676 (make_lispy_position): When position is inside image hot-spot,
5677 use hot-spot element's id as posn element.
5678
5679 * lisp.h (IMAGEP): New macro to test for image object type.
5680 (Qimage): Declare extern.
5681
5682 * macfns.c (Qimage): Remove extern (now in lisp.h).
5683 (valid_image_p, parse_image_spec): Use IMAGEP macro.
5684
5685 * macterm.c (Qface, Qmouse_face): Remove unused externs.
5686
5687 * w32fns.c (Qimage): Remove extern (now in lisp.h).
5688 (valid_image_p, parse_image_spec): Use IMAGEP macro.
5689
5690 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
5691
5692 * w32term.c (Qface, Qmouse_face): Remove unused externs.
5693
5694 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
5695 pointer types.
5696 (Qrelative_width, Qalign_to): Remove unused variables.
5697 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
5698 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
5699 image maps.
d7107586 5700 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
5701 new dx and dy args.
5702 Remove buffer_only_p arg (always 0). Simplify code accordingly.
5703 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
5704 than row's ascent and height, to get sensible height on tall rows.
5705 (build_desired_tool_bar_string): Remove Qimage extern.
5706 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
5707 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
5708 image glyph is alone on the last line.
5709 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 5710 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 5711 (on_hot_spot_p): New function to check if position is inside an
d7107586 5712 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
5713 (find_hot_spot): New function to search for image hot-spot.
5714 (Flookup_image_map): New defun to search for image hot-spot.
5715 (define_frame_cursor1): New aux function to determine frame pointer.
5716 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5717 Handle `pointer' text property and :pointer image property to
5718 control frame pointer shape. Detect image hot-spots for pointer
5719 and help_echo properties. Use define_frame_cursor1.
5720 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 5721 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
5722 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
5723
5724 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
5725
5726 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
5727 (Qimage): Remove extern (now in lisp.h).
5728 (valid_image_p, parse_image_spec): Use IMAGEP macro.
5729
5730 * xmenu.c (show_help_event): Remove unused code.
5731
5732 * xterm.c (Qface, Qmouse_face): Remove unused externs.
5733 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
5734 row's ascent and descent, to get a sensible height on tall rows.
5735
fc052137
LT
57362003-12-25 Luc Teirlinck <teirllm@auburn.edu>
5737
5738 * minibuf.c (Fcompleting_read): Undo previous change.
5739
a64387ee 57402003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
5741
5742 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
5743 Arguments GCPRO'ed in call to file name handler.
5744
56ffd194
TTN
57452003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
5746
5747 * termcap.c (tgetst1): Scan for "%pN"; if all
5748 N are continuous in [1,9], remove all "%pN".
5749
5202d23d
JD
57502003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5751
f26fab36
JD
5752 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
5753
5202d23d
JD
5754 * xfaces.c (lface_fully_specified_p): Take into account that
5755 MAC OS always have unspecified stipple.
5756
8babaa59
TTN
57572003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
5758
5759 * tparam.c (tparam1): Add handling for `%pN', which
5760 means use param N for the next substitution.
5761
2d176448
TTN
57622003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
5763
5764 * xfaces.c (Fcolor_gray_p): Fix omission bug:
5765 In case `frame' is nil, consult the selected frame.
5766 (Fcolor_supported_p): Likewise.
5767
adb0708c
LT
57682003-12-23 Luc Teirlinck <teirllm@auburn.edu>
5769
000eeb15
LT
5770 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
5771 Doc fixes.
0dc72b11
LT
5772
5773 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
5774 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
5775 (Fread_from_minibuffer): Delete code moved into read_minibuf.
5776 Doc fix.
5777 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
5778 read_minibuf.
5779 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 5780 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 5781
2e4d132b
KH
57822003-12-03 Kenichi Handa <handa@m17n.org>
5783
5784 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
5785 encoding sequence.
5786
3999c705
KH
57872003-12-01 Kenichi Handa <handa@m17n.org>
5788
5789 * composite.c (syms_of_composite): Don't make the compostion hash
5790 table week.
5791
d344ecbb
LT
57922003-11-30 Luc Teirlinck <teirllm@auburn.edu>
5793
5794 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
5795 * textprop.c (Fget_char_property_and_overlay): New function.
5796 (syms_of_textprop): Defsubr it.
5797
03d6484e
JD
57982003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5799
019b1f0e
JD
5800 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
5801 to compile on terminal configuration.
5802
03d6484e
JD
5803 * fileio.c (Fread_file_name): Check use_file_dialog also before
5804 calling Fx_file_dialog.
5805
5806 * fns.c: use_file_dialog: New variable.
5807 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
5808
442d3fd0
KS
58092003-11-29 Kim F. Storm <storm@cua.dk>
5810
5811 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
5812 (syms_of_msdos): Don't intern and staticpro them.
5813
0f6a07a8
KS
58142003-11-27 Kim F. Storm <storm@cua.dk>
5815
5816 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
5817 coordinates relative to glyph at posn. If glyph is an image,
5818 return that as object at posn. Callers changed.
5819 (mode_line_string, marginal_area_string): Calculate and return
5820 pixel coordinates relative to glyph. Callers changed.
5821
5822 * dispextern.h (buffer_posn_from_coords, mode_line_string)
5823 (marginal_area_string): Fix prototypes.
5824 (window_box_left_offset, window_box_right_offset): Add prototypes.
5825
5826 * frame.h (get_specified_cursor_type, get_window_cursor_type):
5827 Remove prototypes.
5828
5829 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
5830
5831 * keyboard.c (make_lispy_position): Add x and y coordinates
5832 relative to the current glyph as 7th element of position.
5833 If glyph is an image, return it in the object element.
5834 (read_key_sequence): Skip checks for keymap property in cases
5835 where POSN_STRING is not a string (e.g. an image).
5836
5837 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
5838 (Vshow_text_cursor_in_void): New variable.
5839 (glyph_to_pixel_coords): Don't use negative hpos.
5840 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
5841 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 5842 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
5843 (calc_pixel_width_or_height): New aux function, implementing
5844 pixel based artihmetic for glyph widths and heights.
5845 (produce_stretch_glyph): Use calc_pixel_width_or_height for
5846 :width, :height, :align-to, and :ascent, thus allowing these to
5847 be specified in pixels as well as multiples of characters.
5848 Don't produce stretch glyphs with zero width or height.
5849 (get_specified_cursor_type): Declare static.
5850 (get_window_cursor_type): Declare static. Add glyph arg to be
5851 able to know when cursor is on an image; always substitute
5852 hollow-box cursor for filled-box cursor on images, to avoid
5853 negative images and flicker when blinking the cursor.
5854 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
5855 (note_mode_line_or_margin_highlight): Use non-text cursor rather
5856 than vertical scroll-bar cursor in display margins.
5857 (note_mouse_highlight): Use non-text cursor rather than text
5858 cursor in fringes and over images in the text area.
5859 Use non-text cursor when mouse pointer is outside editable text,
5860 i.e. in the void after end-of-line or end-of-buffer; this was
5861 already done for W32, but is now standard for all systems --
5862 user can toggle show-text-cursor-in-void to get old behaviour.
5863 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
5864 Vdisplay_pixels_per_inch.
5865
00498bfc
AS
58662003-11-25 Andreas Schwab <schwab@suse.de>
5867
5868 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
5869 EMACS_INT to not lose bits.
5870 (Ffillarray): Don't set bits beyond the size of a bool vector.
5871
edaa824d
KS
58722003-11-25 Kim F. Storm <storm@cua.dk>
5873
5874 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
5875 define this defun on systems that cannot use stderr as lvalue.
5876
74d6f539
GM
58772003-11-24 Gerd Moellmann <gerd@gnu.org>
5878
5879 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
5880 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
5881 ld's default is incompatible with unexec.
5882
6a1ff3ba
KS
58832003-11-23 Kim F. Storm <storm@cua.dk>
5884
63dc7c6b
KS
5885 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
5886 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
5887 (Fforce_window_update): New defun.
5888 (syms_of_window): Defsubr it.
5889 (Fset_window_margins, Fset_window_fringes): Doc fix.
5890
6a1ff3ba
KS
5891 * print.c (Fredirect_debugging_output): New defun.
5892 (syms_of_print): Defsubr it.
5893
aef109b7
LT
58942003-11-22 Luc Teirlinck <teirllm@auburn.edu>
5895
5896 * fns.c (Fset_char_table_parent): Doc fix.
5897
6a1ff3ba 58982003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
5899
5900 * dispnew.c (buffer_posn_from_coords): Return actual row/column
5901 for glyph clicked on, rather than (unused) pixel positions.
5902 (mode_line_string, marginal_area_string): Change X and Y args to
5903 pointers for returning actual row/column for glyph clicked on.
5904 Simplify and optimize loops.
5905
aef109b7
LT
5906 * dispextern.h (mode_line_string, marginal_area_string):
5907 Update prototypes.
63ccbe21
KS
5908
5909 * keyboard.c (make_lispy_position): New function for generating
5910 mouse click positions from frame and pixel coordinates.
5911 Enhanced to return buffer position and actual row/column for
5912 events outside the text area using updated mode_line_string and
5913 marginal_area_string functions.
5914 Return left-fringe and right-fringe clicks as such, rather than
5915 clicks in text area.
5916 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
5917 pixel_to_glyph_coords, as we never use the results.
5918 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
5919 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
5920 Eliminate unused code in WHEEL_EVENT handling.
5921 (make_lispy_movement): Use make_lispy_position.
5922
5923 * window.c (coordinates_in_window): Remove redundant tests.
5924 Fix returned X pixel value for left-margin.
5925
5926 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
5927 mode_line_string and marginal_area_string parameters.
5928
a64387ee 59292003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 5930
d7107586
SM
5931 * w32.c (struct the_group, getgrgid): Add.
5932 * mac.c (struct my_group, getgrgid): Add.
aef109b7 5933
3dbf3426
LT
59342003-11-21 Luc Teirlinck <teirllm@auburn.edu>
5935
5936 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
5937
cae8ddbb 59382003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 5939
d7107586
SM
5940 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
5941 include in call to file name handler. Optionally translate numeric
5942 UID and GID to strings. Update docstring.
5943 (directory_files_internal): Add parameter ID-FORMAT.
5944 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
5945 include in call to file name handler and call to
5946 directory_files_internal. Update Docstring.
5947 (Fdirectory_files): Add dummy parameter in call to
5948 directory_files_internal.
5949 * lisp.h (Qinteger): Add.
5950 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
5951 (Ffile_attributes): Add parameter.
5952 * data.c (Qinteger): Export.
cae8ddbb 5953
2550b848
LT
59542003-11-21 Luc Teirlinck <teirllm@auburn.edu>
5955
3dbf3426 5956 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 5957
88380018
KS
59582003-11-19 Kim F. Storm <storm@cua.dk>
5959
5960 * xdisp.c (init_iterator): Initialize it->start to position
5961 before reseating (in case start position is invisible).
5962 (init_to_row_start): Set it->start to row-start.
5963 (redisplay_window): Accept optional_new_start if start position
5964 is invisible (in which case IT_CHARPOS overshoots PT).
5965 (display_line): Setup row->start from it->start (rather than
5966 it->current which is wrong if first char on line is invisible).
5967 When done, reseat it->start to it->current (= start of next row).
5968 (expose_area): Fix exposure of text area when first char (e.g. TAB)
5969 is only partially visible.
5970
5971 * dispextern.h (struct it): New member start.
5972
854c1a59
SM
59732003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
5974
455316e2
SM
5975 * alloc.c (make_float, Fcons): Clear the markbit at init time.
5976 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
5977 of block_index outside of the macro call.
5978 (Fgarbage_collect): Remove null code.
5979
5980 * m/amdx86-64.h: Don't redefine XPNTR.
5981
854c1a59
SM
5982 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
5983 of VALMASK.
5984
5985 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
5986 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
5987 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
5988
5989 * lisp.h (VALMASK): Only define for non-union type.
5990 (MARKBIT): Remove.
5991 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
5992 (XTYPE): Define unconditionally.
5993 (XSETTYPE): Remove one more remnant.
5994 (EQ): Define differently for the union and non-union cases.
5995 (INTMASK): New bit mask.
5996 (struct Lisp_Marker): Move down to prepare for upcoming patch.
5997 (GC_EQ): Delegate to EQ.
5998
5999 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
6000
a0c6ef2d
JD
60012003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6002
6003 * xterm.c (x_window_to_scroll_bar): Move check of display to
6004 where window_id is compared.
6005
859492c4
KS
60062003-11-17 Kim F. Storm <storm@cua.dk>
6007
6008 * dispextern.h (struct it): New member first_vpos.
6009
6010 * xdisp.c (start_display): Set it->first_vpos.
6011 (try_window_id): Use first_vpos to start display in first _text_
6012 line if no reusable lines at start of window with header line.
6013
810f2256
JD
60142003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6015
7c402969 6016 * w32fns.c (XPutPixel):
854c1a59
SM
6017 * w32bdf.c (w32_init_bdf_font):
6018 * sunfns.c (sel_read):
6019 * process.c (Fmake_network_process):
6020 * frame.c (store_frame_param):
6021 * fontset.c (Fset_fontset_font):
6022 * emacs.c (shut_down_emacs):
a64387ee 6023 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 6024
a32e9bfd
JD
6025 * config.in: Regenerate.
6026
810f2256
JD
6027 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6028 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6029 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
6030 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
6031 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
6032
6033 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
6034
6035 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
6036 (XTmouse_position, handle_one_xevent): Pass Display* to
6037 x_window_to_scroll_bar.
6038 (x_window_to_scroll_bar): Take a Display* argument.
6039 Check that display for frame is equal to Display* argument.
854c1a59 6040 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
6041 x_display_info_for_display instead. Use Display in xev instead
6042 of GDK_DISPLAY.
6043 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 6044 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
6045 (x_connection_closed): Call xg_display_close for GTK.
6046 (x_term_init): Call xg_display_open for additional displays.
6047 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
6048 for GTK.
6049
6050 * xmenu.c (single_menu_item, mouse_position_for_popup)
6051 (x_activate_menubar): Formatting adjustments.
6052
6053 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
6054 adjustments.
6055
6056 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
6057 (xg_display_close, xg_create_default_cursor)
6058 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
6059 handling.
854c1a59
SM
6060 (xg_left_ptr_cursor): Remove.
6061 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
6062 cursor here.
6063 (xg_win_to_widget): Take Display* argument, call
6064 gdk_xid_table_lookup_for_display.
6065 (xg_create_frame_widgets, xg_get_file_name, create_menus)
6066 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
6067 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
6068 in FRAME_X_DISPLAY_INFO.
6069 (xg_get_scroll_id_for_window): Take Display* argument.
6070 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 6071 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256 6072
78819ebb
KS
6073 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
6074 Display* argument.
6075 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
810f2256 6076
0b03cc78
JD
60772003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6078
6079 * xterm.c (x_detect_focus_change): Do not change focus frame for
6080 Enter/LeaveNotify if the current focus frame has explicit focus.
6081
77e688fa
KS
60822003-11-14 Kim F. Storm <storm@cua.dk>
6083
6084 * dispnew.c (update_text_area): Fix redisplay error when hscroll
6085 is active and first glyph is only partially visible.
854c1a59 6086
dd429b03
KH
60872003-11-13 Kenichi Handa <handa@m17n.org>
6088
6089 * xdisp.c (select_frame_for_redisplay): New function.
6090 (redisplay_internal): Record also selected_frame for
6091 unwind_redisplay. Call select_frame_for_redisplay before
6092 redrawing each frame.
6093 (unwind_redisplay): Argument changed to a cons.
6094
6d9266f4
LT
60952003-11-12 Luc Teirlinck <teirllm@auburn.edu>
6096
6097 * fns.c (Fstring_to_multibyte): Doc fix.
6098
80060eb3
KH
60992003-11-11 Kenichi Handa <handa@m17n.org>
6100
6101 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
6102
74305183
JD
61032003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6104
6105 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
6106 program specified positions.
6107
cfda993e
JD
61082003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6109
6110 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
6111
df211069
KH
61122003-11-08 Kenichi Handa <handa@m17n.org>
6113
6114 * Makefile.in (lisp): Add kannada.el.
6115 (shortlisp): Likewise.
6116
4307d534
KH
61172003-11-07 Kenichi Handa <handa@m17n.org>
6118
854c1a59
SM
6119 * coding.c (coding_allocate_composition_data):
6120 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
6121 (coding_restore_composition): Detect invalid composition data.
6122 Give Fstring and Fvector a Lispy integer, not C int.
6123
854c1a59
SM
61242003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
6125
6126 * floatfns.c (Flogb): Don't use VALMASK.
6127
6128 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
6129 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
6130
6131 * lisp.h (XINT): Move the cast to clarify what is going on.
6132 (GCTYPEMASK, XSETTYPE): Remove.
6133 (XGCTYPE): Make it an alias of XTYPE.
6134
d04103a1
JD
61352003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6136
6137 * xterm.c (x_term_init): Fix formatting.
6138
da18b5ac
JD
61392003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6140
78819ebb
KS
6141 * gtkutil.h (xg_have_tear_offs): Declare.
6142 (xg_keep_popup, xg_did_tearoff): Remove.
da18b5ac
JD
6143
6144 * gtkutil.c: Remove variable xg_did_tearoff.
6145 (xg_have_tear_offs): New function.
6146 (tearoff_remove): Just decrease xg_detached_menus.
6147 (tearoff_activate): Increase xg_detached_menus and call
6148 tearoff_remove when tearoff is removed.
854c1a59 6149 (xg_keep_popup): Remove function.
da18b5ac
JD
6150 (create_menus): Give add_tearoff_p as argument to recursive
6151 call to create_menus.
6152 (xg_create_widget): Use variables instead of multiple
6153 strcmp. Tell create_menus to create tear off only for
6154 menu bar menus.
6155 (xg_update_menubar): Change title for a detached menu also.
6156 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
6157 of deep_p.
6158 (xg_initialize): Initialize xg_detached_menus, remove
6159 initialization of xg_did_tearoff.
6160
6161 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
6162 xg_have_tear_offs returns non-zero.
6163 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
6164 call to xg_keep_popup.
6165
64d4923e
AC
61662003-11-01 Andrew Choi <akochoi@shaw.ca>
6167
6168 * macterm.c (XTread_socket): Handle menubar selection and grow
6169 window only for mouseDown events.
854c1a59 6170
6cc8bc07
JD
61712003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6172
6173 * xterm.c (x_term_init): For GTK part, increase x_initialized
6174 to check for more than one display. Use error instead of return 0.
6175
043131c4
AC
61762003-10-31 Andrew Choi <akochoi@shaw.ca>
6177
854c1a59 6178 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
6179 (copy_dysymtab): Call it.
6180
bdda99a1
LT
61812003-10-31 Luc Teirlinck <teirllm@auburn.edu>
6182
6183 * eval.c (Fdefvaralias): Doc fix.
6184
800f42ff 61852003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
6186
6187 * data.c (Fsetplist): Doc fix.
6188
ef35b389
LK
61892003-10-14 Lute Kamstra <lute@gnu.org>
6190
6191 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 6192
ef35b389 61932003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 6194
07107abc
KS
6195 * window.c (Fset_window_margins): Simplify arg checking.
6196
f7005886
RS
61972003-10-13 Richard M. Stallman <rms@gnu.org>
6198
6199 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
6200 (print_partial_compiled_pattern): Replace assert with a printout.
6201 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
6202
6203 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
6204
6205 * window.c (Fset_window_margins): Allow only integers as args.
6206 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
6207 Doc fixes.
6208
9c0c2af5
LK
62092003-10-13 Lute Kamstra <lute@gnu.org>
6210
6211 * window.c (Fset_window_fringes): Elaborate docstring.
6212
3f080e4e
AC
62132003-10-12 Andrew Choi <akochoi@shaw.ca>
6214
854c1a59 6215 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 6216
3f080e4e
AC
6217 * s/darwin.h (GC_MARK_STACK): Define.
6218
0aa513ed
JD
62192003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6220
6221 * window.c (shrink_windows): New function.
6222 (size_window): Call shrink_windows to calculate window sizes when
6223 shrinking frame with more than one window.
6224
6aa8858a
KS
62252003-10-12 Kim F. Storm <storm@cua.dk>
6226
6227 * xdisp.c (compute_fringe_widths): Doc fix.
6228
c2164d91
KH
62292003-10-08 Kenichi Handa <handa@m17n.org>
6230
854c1a59 6231 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 6232
f82ac129
KH
62332003-10-07 Kenichi Handa <handa@m17n.org>
6234
6235 * coding.c (Qcoding_system_define_form): New variable.
6236 (syms_of_coding): Intern and staticpro it.
6237 (Fcheck_coding_system): Try to autoload the definition of
6238 CODING-SYSTEM.
6239
9296c947
LT
62402003-10-05 Luc Teirlinck <teirllm@auburn.edu>
6241
6242 * fns.c (Frequire): Doc fix.
6243
c1f0671a
JD
62442003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6245
3d8c3826
JD
6246 * xfns.c (Fx_send_client_event): New function as a base for
6247 manipulating extended window manager hints.
6dc15d98 6248 (Fx_send_client_event): Remove unused variable s.
3d8c3826 6249
068ae0fd
JD
6250 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
6251 that function is removed.
6252
6253 * xterm.c (x_set_offset): Use move_offset_left/top instead of
6254 x/y_pixels_outer_diff.
6255 (x_check_expected_move): Calculate move_offset_left/top.
6256
6257 * xterm.h (struct x_output): New members: move_offset_top/left.
6258
854c1a59 6259 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
6260 call x_set_offset directly.
6261
6262 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
6263
96f09305
JD
6264 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
6265
6266 * xterm.c (x_delete_display): Free font names and font_encoder
6267 in dpyinfo->font_table.
6268
854c1a59
SM
6269 * xfns.c (Fx_close_connection): Only call XFreeFont here.
6270 Move xfree of font names to x_delete_display.
96f09305 6271
c1f0671a
JD
6272 * xterm.h (struct x_display_info): New member, wm_type.
6273 (struct x_output): New members, expected_top/left and
6274 check_expected_move.
6275
6276 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
6277 is received.
854c1a59
SM
6278 (handle_one_xevent): Rename x_check_expected_move from
6279 x_check_fullscreen_move.
c1f0671a
JD
6280 (x_set_offset): Only add WM decoration sizes to modified_top/left
6281 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 6282 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
6283 Removed fullscreen specific code. Use check_expected_move,
6284 expected_left/top instead. Also, set wm_type.
6285 (x_term_init): Initialize wm_type to unknown.
6286
6287 * frame.c (x_fullscreen_move): Remove addition of WM decoration
6288 sizes to move_x/y.
6289
be2fdba9
KH
62902003-10-03 Kenichi Handa <handa@m17n.org>
6291
6292 * macterm.c (x_load_font): Clear all members of FONTP before start
6293 filling them.
6294
62952003-10-02 Kenichi Handa <handa@m17n.org>
6296
6297 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
6298 before calling find_ccl_program_func. Call find_ccl_program_func
6299 only when fontp->font_encoder is not NULL.
6300
6301 * xterm.c (x_load_font): Clear all members of FONTP before start
6302 filling them.
6303
26a6e439
JPW
63042003-10-03 John Paul Wallington <jpw@gnu.org>
6305
6306 * keymap.c (map_keymap): Don't abort when binding is a vector.
6307
0d4c2dc2
JR
63082003-10-02 Jason Rumney <jasonr@gnu.org>
6309
854c1a59
SM
6310 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
6311 Sync dependencies with Makefile.in.
a63cf46f
JR
6312 (alloca.o): Remove.
6313
0d4c2dc2
JR
6314 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
6315 filling them.
6316
6317 * w32bdf.c (w32_load_bdf_font): Likewise.
6318
ab8f7d5c
RS
63192003-09-30 Richard M. Stallman <rms@gnu.org>
6320
6321 * term.c (set_tty_color_mode): Calculate current_mode_spec
6322 regardless of value of VAL.
6323
854c1a59 6324 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
6325 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
6326 Handle over_used when splitting UNDER.
6327
a64387ee 63282003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
6329
6330 * regex.c (regex_compile): Free the stack when returning from function.
6331
3413f972
KH
63322003-09-28 Kenichi Handa <handa@m17n.org>
6333
6334 * fontset.c (Finternal_char_font): Change return value to
6335 cons (FONT-NAME . GLYPH-CODE).
6336
a6eeaa81 63372003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
6338
6339 * term.c (tty_setup_colors): Treat any negative argument as -1.
6340
f98ddc99
KH
63412003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
6342
6343 * process.c (send_process): Delete unused temp_buf.
6344
66c8f1a8
DL
63452003-09-26 Dave Love <fx@gnu.org>
6346
6347 * xterm.c (x_bitmap_mask): Declare.
6348
ca716c26
DL
63492003-09-25 Dave Love <fx@gnu.org>
6350
6351 * Makefile.in (fns.o): Depend on md5.h.
6352
fbe57420
KS
63532003-09-25 Kim F. Storm <storm@cua.dk>
6354
6355 * window.c (set_window_buffer): Fix redisplay problems when
6356 switching between buffers with different display margin widths.
6357
ef6ae4ff
KS
63582003-09-23 Kim F. Storm <storm@cua.dk>
6359
6360 * process.c (set_socket_option): Fix :bindtodevice option.
6361 (Fset_network_process_option): Update process contact list when
6362 setting option succeeds.
6363 (Fmake_network_process): Doc fix.
6364
68e03c1c
DL
63652003-09-23 Dave Love <fx@gnu.org>
6366
7146d1c1 6367 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 6368
a6eeaa81 63692003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
6370
6371 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
6372 color mode is an integer number (it could be -1).
6373
8fe7d8c8
RS
63742003-09-22 Richard M. Stallman <rms@gnu.org>
6375
6376 * intervals.c (graft_intervals_into_buffer): Correct the main loop
6377 in the case where OVER is longer than UNDER.
6378
2f71b5ea
MY
63792003-09-22 Masatake YAMATO <jet@gyve.org>
6380
7146d1c1 6381 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 6382 `vertical_type'.
7146d1c1 6383
0c4da023
KS
63842003-09-21 Kim F. Storm <storm@cua.dk>
6385
6386 * frame.c (Vdefault_frame_scroll_bars): New variable.
6387 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
6388 (syms_of_frame): DEFVAR_LISP it, and initialize according to
6389 window-system default scroll bar position.
6390
b648413b
KS
6391 * window.c (Fwindow_scroll_bars): Doc fix.
6392
8f5b9e34
JD
63932003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6394
854c1a59 6395 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 6396
b0f23edf
RS
63972003-09-19 Richard M. Stallman <rms@gnu.org>
6398
6399 * atimer.h: Don't include lisp.h.
6400 (P_): Define it here (as well as elsewhere).
6401
6402 * print.c (Fprin1_to_string): Move the PRINTPREPARE
6403 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
6404
6405 * data.c (Fvariable_binding_locus): New function.
6406 (syms_of_data): defsubr it.
6407 (Flocal_variable_p): Delete duplicate call to indirect_variable.
6408
e1283999
DL
64092003-09-18 Dave Love <fx@gnu.org>
6410
ad5f3636
DL
6411 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
6412
e1283999
DL
6413 * process.c (Fnetwork_interface_info): Fix type error.
6414 (Fnetwork_interface_list): Doc fix.
6415 (read_process_output, read_process_output): Delete unused var.
6416
b8c7fd71
KS
64172003-09-17 Kim F. Storm <storm@cua.dk>
6418
6419 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
6420 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
6421 (Fnetwork_interface_info): Check that ifreq struct has required
6422 fields before accessing them; this requires that those fields are
6423 defined as macros, which may be too restrictive on some platforms,
6424 but it is better than failing on other platforms.
6425 (syms_of_process): Only defsubr above fns when included.
6426
11e0a411
DL
64272003-09-17 Dave Love <fx@gnu.org>
6428
6429 * unexalpha.c: Don't include varargs.h.
6430
e9c50801
KS
64312003-09-17 Kim F. Storm <storm@cua.dk>
6432
6433 * process.c (Fset_process_sentinel): Add sentinel to childp plist
6434 for network process.
6435 (socket_options): Add `:' prefix to option names. Add optbit field.
6436 (set_socket_option): Remove no_error arg and special handling of s < 0.
6437 Return 1<<optbit for known option, 0 for unknown.
6438 Do not interpret 0 as false for boolean option (only nil).
6439 Pass failed option and value to report_file_error.
7146d1c1 6440 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
6441 (Fset_network_process_option): New function to set just one option.
6442 (Fmake_network_process): Allow :coding arg to be a cons.
6443 Allow :server arg to be an integer specifying backlog size.
6444 Remove :options arg, and allow options to be specified directly
6445 as :KEY, VALUE pairs. Parse these options before binding socket.
6446 As before, :reuseaddr t is default for a server process, but this
6447 can now be disabled by specifying :reuseaddr nil.
6448 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
6449 (init_process): Availability of network options is now checked with
6450 simpler syntax (featurep 'make-network-process :OPTION); use loop to
6451 setup features.
6452 (syms_of_process): Fix defsubr's for the replaced functions.
6453
a0fc3644
DL
64542003-09-16 Dave Love <fx@gnu.org>
6455
6456 * Makefile.in: Depend on coding.h.
6457
6df2a645
KS
64582003-09-14 Kim F. Storm <storm@cua.dk>
6459
6460 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
6461 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
6462 (syms_of_process): Defsubr them.
6463
6464 * config.in: Regenerate.
7146d1c1
SM
6465
64662003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
6467
6468 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
6469 * m/news-r6.h (XUNMARK): Remove.
6470 * m/mips.h (XUNMARK): Remove.
6471 * m/mips-siemens.h (XUNMARK): Remove.
6472 * m/iris4d.h (XUNMARK): Remove.
6473 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
6474
0930c1a1
SM
64752003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
6476
31003b9e
SM
6477 * lisp.h (VALBITS): Don't remove 1 for the markbit.
6478 (union Lisp_Object): Use unsigned int for types. Remove markbit.
6479 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
6480 (XTYPE): Use unsigned right-shift.
6481 (XMARKBIT, XMARK, XUNMARK): Remove.
6482
0930c1a1
SM
6483 * alloc.c (init_intervals, init_symbol, init_marker):
6484 Don't preallocate anything.
6485 (Fgarbage_collect, mark_object): Ignore the markbit.
6486
6487 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
6488
19bb0fcd 64892003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
6490
6491 * xdisp.c (pint2hrstr): New function.
6492 (decode_mode_spec): Add `%i' and `%I' specs.
6493 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
6494 for `mode-line-format'.
6495
03bb6a06
AS
64962003-09-07 Andreas Schwab <schwab@suse.de>
6497
6498 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
6499 avoid warning.
6500
a6eeaa81 65012003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 6502
0930c1a1 6503 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 6504
ed159bbf
KS
65052003-09-03 Kim F. Storm <storm@cua.dk>
6506
6507 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
6508 change (superseded by 2002-08-30 change); the default blink-off
6509 cursor is now again "no cursor".
6510
fe64a394
JR
65112003-09-01 Jason Rumney <jasonr@gnu.org>
6512
6513 * makefile.w32-in (alloca.o): Remove.
6514 (coding.o): Depend on intervals.h
6515 (emacs.o, bytecode.o): Depend on window.h
6516
c0175e24
DL
65172003-09-01 Dave Love <fx@gnu.org>
6518
6519 * Makefile.in (alloca.o): Remove commands.
6520 (coding.o): Depend on intervals.h composite.h window.h.
6521 (emacs.o): Depend on window.h keyboard.h keymap.h.
6522 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
6523 (bytecode.o): Depend on window.h.
6524
a24d4cb2
JR
65252003-08-31 Jason Rumney <jasonr@gnu.org>
6526
4bc2315e
JR
6527 * w32term.c (w32_per_char_metric): Allow cached metrics to be
6528 returned even when font_type is unknown.
6529
a24d4cb2
JR
6530 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
6531
9d35adc7
JD
65322003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6533
6534 * xterm.c (x_term_init): Initialize new fields in x_display_info.
6535
6536 * xterm.h (struct x_display_info): Add red/green/blue_bits and
6537 *_offset.
6538
6539 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
6540 calculate pixel value.
6541
6f68b035
GM
65422003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
6543
0930c1a1
SM
6544 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
6545 Don't tell redisplay display is accurate when it's actually been
6546 paused for pending input.
6f68b035 6547
4828b4d7
RS
65482003-08-29 Richard M. Stallman <rms@gnu.org>
6549
6550 * dispnew.c (adjust_glyph_matrix): Call window_box
6551 whenever W is nonzero.
6552
6553 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
6554 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 6555 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
6556 Use indirect_variable to trace thru variable aliases.
6557
6558 * config.in: Updated.
6559
6560 * callint.c (Fcall_interactively): Save and restore
6561 Vthis_command, Vthis_original_command, real_this_command,
6562 and current_kboard->Vlast_command.
6563
6564 * abbrev.c (Fexpand_abbrev): Insert before deleting.
6565
e019878d
GM
65662003-08-29 Gerd Moellmann <gerd@gnu.org>
6567
6568 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
6569
85478bc6
KH
65702003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
6571
0930c1a1 6572 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
6573 (decode_coding_sjis_big5): Likewise.
6574
07ce82d3
JR
65752003-08-27 Jason Rumney <jasonr@gnu.org>
6576
d3703de3
JR
6577 * w32.c (sys_pipe): Protect against file descriptor overflow.
6578
ee4a01d1
JR
6579 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
6580
07ce82d3
JR
6581 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
6582
a64387ee 65832003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
6584
6585 * xfns.c (Vgtk_version_string): New variable.
6586 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
6587
a6eeaa81 65882003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 6589
0930c1a1 6590 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 6591
5459e42a
EZ
6592 * Makefile.in (msdos.o): Depend on intervals.h.
6593
0930c1a1 6594 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 6595
231d6cfb
JD
65962003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6597
6598 * xterm.h (struct x_display_info): New fields: client_leader_window
6599 and Xatom_wm_client_leader.
6600
6601 * xterm.c (x_initialize): Move call to x_session_initialize to ...
6602 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
6603
6604 * xsmfns.c (create_client_leader_window): New function.
6605 (x_session_initialize): Call create_client_leader_window, take
6606 dpyinfo as argument.
6607
6608 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
6609
6610 * Makefile.in (xsmfns.o): Add more depenedencies.
6611
afa88464
DL
66122003-08-21 Dave Love <fx@gnu.org>
6613
6614 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
6615
f730033e
KH
66162003-08-21 Kenichi Handa <handa@m17n.org>
6617
6618 * term.c (term_init): Fix previous change; don't rely on the
6619 length of `buffer' if TERMINFO is defined.
6620
6dca786c
DL
66212003-08-20 Dave Love <fx@gnu.org>
6622
6623 * atimer.h: Include lisp.h.
6624
6625 * lisp.h (EMACS_LISP_H): New.
6626 (popup_activated_flag): Don't declare.
6627
6628 * alloca.c: Some merging with gnulib. Change logic and doc
6629 concerning (x)malloc/(x)free -- no longer Emacs-specific.
6630 [DO_BLOCK_INPUT]: Don't include lisp.h.
6631 (xmalloc, xfree): Declare.
6632 (malloc): Don't declare.
6633
0930c1a1 6634 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
6635 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
6636 atimer.h, blockinput.h.
6637
6638 * alloc.c (lisp_align_malloc): Change type of `aligned'.
6639
78819ebb 6640 * alloca.s: Remove.
6dca786c 6641
3a06a6d9
RS
66422003-08-19 Gerd Moellmann <gerd@gnu.org>
6643
6644 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
6645 use -lncurses.
6646
6647 * term.c (term_init): Use a buffer of size 4096 for tgetent since
6648 FreeBSD returns something longer than 2044. Abort if the end of
6649 the buffer is overwritten.
6650
27eeee55
MB
66512003-08-19 Miles Bader <miles@gnu.org>
6652
6653 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
6654
2f297815
GM
66552003-08-19 Gerd Moellmann <gerd@gnu.org>
6656
f4446bbf
GM
6657 * alloc.c (lisp_align_malloc): Check for memory full when
6658 allocating ablocks, which also avoids freeing a pointer into an
6659 ablocks structure.
6660
6661 * puresize.h (BASE_PURESIZE): Increase to 1100000.
6662
0930c1a1 6663 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 6664
0e7d7aae
RS
66652003-08-16 Richard M. Stallman <rms@gnu.org>
6666
6667 * editfns.c (Fencode_time): Doc fix.
6668
66692003-08-16 David Ponce <david@dponce.com>
6670
6671 * fileio.c (Fwrite_region): Fix conditional expression to issue
6672 the right message.
6673
b6189c3b 66742003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
6675
6676 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 6677 Set default value to 1.
0e7d7aae 6678
5d551295
KH
66792003-08-15 Kenichi Handa <handa@m17n.org>
6680
6681 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
6682 what autoscaled.
6683 (best_matching_font): Once we find a better scalable font, set
6684 non_scalable_has_exact_height_p to 1.
6685 (try_font_list): Call try_alternative_families to try any family
6686 with the given registry.
6687
1661e56b
AS
66882003-08-09 Andreas Schwab <schwab@suse.de>
6689
f29181dc
AS
6690 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
6691
1661e56b
AS
6692 * print.c (print_string): Fix printing of multibyte string with
6693 nontrivial printcharfun.
6694
465aa50a
JD
66952003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6696
6697 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
6698
6699 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
6700
e430e5ba
KH
67012003-07-31 Kenichi Handa <handa@m17n.org>
6702
6703 * process.c (read_process_output): Return the actually read bytes
6704 instead of the result of decoding.
6705
97e7188e
KH
67062003-07-31 Kenichi Handa <handa@m17n.org>
6707
6708 * xterm.h (struct x_bitmap_record): New member have_mask.
6709
6710 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
6711 to 0.
6712 (x_create_bitmap_from_file): Likewise.
6713 (x_destroy_bitmap): Check have_mask member before freeing a mask.
6714 (x_destroy_all_bitmaps): Likewise.
6715 (x_create_bitmap_mask): Set have_mask member to 1.
6716
b53094d6
RS
67172003-07-30 Richard M. Stallman <rms@gnu.org>
6718
6719 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
6720
631f2082
JD
67212003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6722
6723 * gtkutil.c (xg_mark_data): Update calls to mark_object.
6724
c855f2ca
RS
67252003-07-29 Richard M. Stallman <rms@gnu.org>
6726
6727 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
6728 Conditionalize XIM code on HAVE_XIM.
6729
6730 * fns.c (Fclear_string): New function.
6731 (syms_of_fns): defsubr it.
6732
b6189c3b 67332003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 6734
0930c1a1 6735 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 6736
29ea8ae9
SM
67372003-07-22 Stefan Monnier <monnier@cs.yale.edu>
6738
6739 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
6740
6741 * buffer.c (delete_all_overlays): New function.
6742 * buffer.h (delete_all_overlays): Declare.
6743 * coding.c (run_pre_post_conversion_on_str):
6744 * print.c (temp_output_buffer_setup):
6745 * fileio.c (Finsert_file_contents):
6746 * minibuf.c (get_minibuffer): Use it.
6747
1dd7ccf2
AC
67482003-07-22 Andrew Choi <akochoi@shaw.ca>
6749
6750 * unexmacosx.c (unexec_regions_sort_compare):
6751 (unexec_regions_merge): New functions. Sort and merge unexec
6752 regions before dumping them.
6753
f57bd967
DL
67542003-07-22 Dave Love <fx@gnu.org>
6755
6756 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
6757
7cdee936
SM
67582003-07-21 Stefan Monnier <monnier@cs.yale.edu>
6759
6760 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
6761 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
6762 MARKBIT as the gcmarkbit for strings.
6763
e50886d3
RS
67642003-07-21 Richard M. Stallman <rms@gnu.org>
6765
6766 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
6767
29ea8ae9 6768 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
6769 (syms_of_fns): Corresponding change.
6770
6771 * alloc.c (syms_of_alloc): Doc fixes.
6772
67732003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
6774
6775 * s/netbsd.h: Use -Wl syntax.
6776
fdc39b59
RS
67772003-07-17 Richard M. Stallman <rms@gnu.org>
6778
6779 * xterm.c (xim_initialize): Redo 6/24 change.
6780
9c53385f
SM
67812003-07-15 Stefan Monnier <monnier@cs.yale.edu>
6782
6783 * buffer.c (copy_overlays): Use EMACS_INT for positions.
6784 (Fswitch_to_buffer): Don't signal an error when switching to the same
6785 buffer in a dedicated window.
6786
6787 * alloc.c: Use bitmaps for cons, as was done for floats.
6788 (init_float, init_cons): Let the normal code allocate the first block.
6789 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
6790 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
6791 New macros.
6792 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
6793 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
6794 (live_cons_p): Check the pointer is not past the `conses' array.
6795 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
6796 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
6797 (survives_gc_p): Use CONS_MARKED_P and simplify.
6798 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
6799
dde13196
PE
68002003-07-13 Paul Eggert <eggert@twinsun.com>
6801
6802 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
6803 puts it into BSS instead, at least on Solaris 8 and 9.
6804 This is a valid optimization, and it may occur on other platforms,
6805 so Emacs should not assume that initializing a static variable to
6806 zero puts it into data.
6807 * alloc.c (pure, staticvec):
6808 Initialize these arrays to nonzero, so that they're not
6809 put into BSS by that optimization.
6810
a801bc34
SM
68112003-07-13 Stefan Monnier <monnier@cs.yale.edu>
6812
6813 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
6814 (lisp_align_malloc): Use posix_memalign is available.
6815 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
6816 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
6817 for consistency. Update users.
6818
0c8b2afa
RS
68192003-07-13 Richard M. Stallman <rms@gnu.org>
6820
6821 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
6822
668c2ab0
JB
68232003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
6824
6825 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
6826 and use the Gtk+ function gtk_window_icon_from_file if available.
6827
6828 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
6829 handle mask of bitmaps.
6830 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
6831 mask property.
6832 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
6833
6834 * xterm.h (xg_set_icon): New function.
6835
800bebe3
RS
68362003-07-12 Paul Eggert <eggert@twinsun.com>
6837
6838 * unexelf.c (unexec): Consider a section to precede the .bss
6839 section if its addresses overlap that of .bss.
6840
69e38995
RS
68412003-07-12 Richard M. Stallman <rms@gnu.org>
6842
6843 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
6844
6845 * config.in (HAVE_CRTIN): Add #undef.
6846 (INLINE): Really inline only if OPTIMIZE is defined.
6847
6848 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
6849 END_FILES_1.
6850 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 6851 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
6852
6853 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
6854 (TERMINFO): Define.
6855 (LIBS_TERMCAP): Define.
6856 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
6857
6858 * xfns.c: Include libpng/png.h instead of png.h.
6859
f1d0c238
AS
68602003-07-11 Andreas Schwab <schwab@suse.de>
6861
6862 * buffer.c (modify_overlay): Update prototype.
6863 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
6864 Likewise.
6865
5f6bf5fe
SM
68662003-07-09 Stefan Monnier <monnier@cs.yale.edu>
6867
6868 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
6869 (struct interval): Move to intervals.h.
6870 (struct Lisp_Marker): Use EMACS_INT for position info.
6871 (forward_point): Remove prototype of defunct function.
6872 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
6873 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
6874 (syms_of_textprop, set_text_properties): Remove prototypes that are
6875 already in intervals.h.
6876
6877 * intervals.h (struct interval): Move from lisp.h.
6878 Use EMACS_INT for position and size info.
6879
6880 * coding.c: Include intervals.h for Fset_text_properties.
6881
6882 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
6883 position and length information.
6884
2765b457
SM
68852003-07-09 Stefan Monnier <monnier@cs.yale.edu>
6886
6887 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
6888 position and length information.
6889
2410d73a
SM
68902003-07-09 Stefan Monnier <monnier@cs.yale.edu>
6891
6892 Change overlays_after and overlays_before so the overlays themselves
6893 are linked into lists, rather than using cons cells. After all each
6894 Lisp_Misc already occupies 5 words, so we can add a `next' field to
6895 Lisp_Overlay for free and save up one cons cell per overlay (not
6896 to mention one indirection when traversing the list of overlay).
6897
6898 * lisp.h (struct Lisp_Overlay): New field `next'.
6899
6900 * buffer.h (struct buffer): Change overlays_before and overlays_after
6901 from Lisp lists of overlays to pointers to overlays.
6902
6903 * buffer.c (overlay_strings, recenter_overlay_lists):
6904 Fix typo in eassert in last commit.
6905 (unchain_overlay): New function.
6906 (add_overlay_mod_hooklist): Use AREF.
6907 (copy_overlays, reset_buffer, overlays_at, overlays_in)
6908 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
6909 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
6910 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
6911 (report_overlay_modification, evaporate_overlays, init_buffer_once):
6912 Adjust to new type of overlays_(before|after).
6913
6914 * alloc.c (mark_object): Mark the new `next' field of overlays.
6915 (mark_buffer): Manually mark the overlays_(after|before) fields.
6916
6917 * coding.c (run_pre_post_conversion_on_str):
6918 * editfns.c (overlays_around):
6919 * xdisp.c (load_overlay_strings):
6920 * fileio.c (Finsert_file_contents):
6921 * indent.c (current_column):
6922 * insdel.c (signal_before_change, signal_after_change):
6923 * intervals.c (set_point_both):
6924 * print.c (temp_output_buffer_setup): Use new type for
6925 overlays_(before|after).
6926
04812929
SM
69272003-07-08 Stefan Monnier <monnier@cs.yale.edu>
6928
6929 * buffer.c (report_overlay_modification): Don't run hooks while
6930 traversing the list of overlays.
6931
6932 * buffer.h (struct buffer): Use an int for overlay_center.
6933 (overlays_at, evaporate_overlays, recenter_overlay_lists)
6934 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
6935
6936 * buffer.c (reset_buffer, recenter_overlay_lists)
6937 (adjust_overlays_for_insert, adjust_overlays_for_delete)
6938 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
6939 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
6940 (overlays_at, evaporate_overlays, recenter_overlay_lists)
6941 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
6942
6943 * xdisp.c (fast_find_position): Remove unused var.
6944
6945 * cmds.c (Qexpand_abbrev): New sym.
6946 (syms_of_cmds): Initialize it.
6947 (internal_self_insert): Use it to call expand-abbrev.
6948
2e7ecf15
KS
69492003-07-09 Kim F. Storm <storm@cua.dk>
6950
f9711de4 6951 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 6952 was configured with --without-xim.
42f81f64 6953 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 6954
c6de56a0
RS
69552003-07-07 Richard M. Stallman <rms@gnu.org>
6956
6957 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
6958
6959 * alloc.c (Fgarbage_collect): Doc fix.
6960
b6189c3b 69612003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
6962
6963 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
6964
bfe1a3f7
SM
69652003-07-06 Stefan Monnier <monnier@cs.yale.edu>
6966
04812929
SM
6967 * minibuf.c (read_minibuf): UNGCPRO before returning.
6968 (Ftry_completion, Fall_completions): Doc fix.
6969
bfe1a3f7
SM
6970 * alloc.c (live_float_p): Check that p is not past the `floats' array,
6971 now that `floats' is not the last element of the struct any more.
6972
ee79d1aa
JR
69732003-07-06 Jason Rumney <jasonr@gnu.org>
6974
6975 * w32term.h (ClipboardSequence_Proc): New type.
6976
6977 * w32fns.c (clipboard_sequence_fn): New variable.
6978 (globals_of_w32fns): Initialize it.
6979
6980 * w32select.c (last_clipboard_sequence_number): New variable.
6981 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
6982 number if possible.
6983
49723c04
SM
69842003-07-06 Stefan Monnier <monnier@cs.yale.edu>
6985
4698665f
SM
6986 * m/amdx86-64.h (MARKBIT):
6987 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
6988 MARKBIT and ARRAY_MARK_FLAG any more.
6989
6990 * m/hp800.h (XSETMARKBIT):
6991 * m/sr2k.h (XSETMARKBIT):
6992 * lisp.h (XSETMARKBIT): Remove unused macro.
6993
49723c04
SM
6994 * lisp.h (mark_object): Change prototype.
6995
6996 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
6997 (last_marked): Change accordingly.
6998 (mark_interval, mark_maybe_object, mark_maybe_pointer)
6999 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
7000 (mark_buffer): Update calls to mark_object.
7001
7002 * bytecode.c (mark_byte_stack):
7003 * fns.c (sweep_weak_table):
7004 * keyboard.c (mark_kboards): Update calls to mark_object.
7005
1d660eca
JR
70062003-07-06 Jason Rumney <jasonr@gnu.org>
7007
7008 * alloc.c (struct ablock): Only include padding when there is some.
7009
618b5ae4
SM
70102003-07-04 Stefan Monnier <monnier@cs.yale.edu>
7011
7012 * alloc.c (ALIGN): Add casts to simplify usage.
7013 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
7014 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
7015 (struct ablock, struct ablocks): New types.
7016 (free_ablock): New global var.
7017 (lisp_align_malloc, lisp_align_free): New functions.
7018 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
7019 (struct float_block): Reorder and add gcmarkbits.
7020 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
7021 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
7022 (init_float, make_float): Use lisp_align_malloc.
7023 (free_float, live_float_p): Don't use `type' any more.
7024 (make_float): Use FLOAT_UNMARK to access to mark bit.
7025 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
7026 Use FLOAT_MARKED_P to access the mark bit.
7027 (pure_alloc): Simplify use of ALIGN.
7028 (mark_object): Use FLOAT_MARK to access the mark bit.
7029 (gc_sweep): Use new macros to access the float's mark bit.
7030 (init_alloc_once): Init free_ablock.
7031
7032 * lisp.h (struct Lisp_Float): Remove unused field `type'.
7033
3ef06d12
SM
70342003-06-27 Stefan Monnier <monnier@cs.yale.edu>
7035
7036 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
7037 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
7038 (allocate_buffer): Move.
7039 (string_bytes): Don't mask markbit of `size_byte'.
7040 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
7041 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
7042 Use the `size' field of buffers (rather than the `name' field) for
7043 the mark bit, as is done for all other vectorlike objects.
7044 Use the new macros to access the mark bit of vectorlike objects.
7045
e81043aa
RS
70462003-06-26 Richard M. Stallman <rms@gnu.org>
7047
7048 * puresize.h (BASE_PURESIZE): Increment base size.
7049
7050 * xdisp.c (fast_find_position): Enable Gerd's new definition.
7051
7052 * xterm.c (xim_initialize): Undo previous change.
7053
2d0834cc
SM
70542003-06-26 Stefan Monnier <monnier@cs.yale.edu>
7055
7056 * alloc.c (survives_gc_p): Simplify.
7057
7058 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
7059
7060 * window.c (Fset_window_dedicated_p): Simplify.
7061 (display_buffer_1): Don't raise the win from which minibuf was entered.
7062 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
7063 (Fminibuffer_selected_window): Simplify.
7064
7065 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
7066
7067 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
7068 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
7069
7070 * insdel.c (check_markers, adjust_markers_for_delete)
7071 (adjust_markers_for_insert, adjust_markers_for_replace)
7072 (prepare_to_modify_buffer, RESTORE_VALUE):
7073 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
7074 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
7075 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
7076 * alloc.c (Fmake_marker, free_marker, gc_sweep):
7077 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
7078 * editfns.c (save_excursion_restore, transpose_markers):
7079 * window.c (delete_window):
7080 * xdisp.c (message_dolog): Update for new types.
7081
d54ae3d8
JD
70822003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7083
a5f696ac
JD
7084 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
7085 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 7086 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
7087
7088 * frame.c (make_frame): Initialize default_face_done_p.
7089
7090 * frame.h (struct frame): Add default_face_done_p.
7091
d54ae3d8
JD
7092 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
7093 will be defined.
7094
2336fe58
SM
70952003-06-25 Stefan Monnier <monnier@cs.yale.edu>
7096
7097 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
7098 Initialize the new field `gcmarkbit'.
7099 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
7100 (mark_interval_tree): Don't mark the tree separately from the nodes.
7101 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
7102 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
7103 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
7104
7105 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
7106 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
7107 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
7108 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
7109 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
7110
bcea31c2
DL
71112003-06-24 Dave Love <fx@gnu.org>
7112
7113 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
7114
7115 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
7116 from gnulib.
7117
2601f59e
RS
71182003-06-21 Richard M. Stallman <rms@gnu.org>
7119
7120 * fileio.c (Fwrite_region): Alternate messages
7121 for append and partial write.
7122
7123 * keyboard.c (read_key_sequence): When converting upcase fn key to
7124 downcase, update fkey and keytran so `backspace' gets translated.
7125
7126 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
7127
7128 * process.c (wait_reading_process_input): Don't signal SIGIO
7129 in batch mode.
7130
b5d2c621
KH
71312003-06-17 Kenichi Handa <handa@m17n.org>
7132
7133 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
7134 composite.h.
7135
7136 * xselect.c: Don't include charset.h, coding.h, composite.h.
7137 (Qforeign_selection): New variable.
7138 (syms_of_xselect): Intern and static it.
7139 (selection_data_to_lisp_data): Return a unibyte string made from
7140 data with `foreign-selection' text property.
7141
6793bc63
SM
71422003-06-15 Stefan Monnier <monnier@cs.yale.edu>
7143
7144 * termhooks.h (EVENT_INIT): New macro.
7145
7146 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
7147
7148 * alloc.c (mark_kboards): Move to keyboard.c.
7149
7150 * keyboard.c (record_asynch_buffer_change, read_avail_input):
7151 * xterm.c (x_dispatch_event):
7152 * xmenu.c (find_and_call_menu_selection):
7153 * xdisp.c (handle_tool_bar_click):
7154 * w32menu.c (menubar_selection_callback):
7155 * sysdep.c (kbd_input_ast, read_input_waiting):
7156 * msdos.c (dos_rawgetc):
7157 * macterm.c (mac_check_for_quit_char):
7158 * macmenu.c (menubar_selection_callback):
7159 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
7160 data to kbd_buffer_store_event.
7161
b3ea810c
KS
71622003-06-15 Kim F. Storm <storm@cua.dk>
7163
7164 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 7165 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 7166
b8f75eda
KG
71672003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7168
7169 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
7170
ba92ce48
KH
71712003-06-12 Kenichi Handa <handa@m17n.org>
7172
7173 * fileio.c (Fwrite_region): Save and restore restriction.
7174
b80263be
DL
71752003-06-12 Dave Love <fx@gnu.org>
7176
7177 * alloca.c (alloca): Declare arg as size_t.
7178
6793bc63
SM
7179 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
7180 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 7181
b23c0a83
DL
71822003-06-11 Dave Love <fx@gnu.org>
7183
7184 * search.c (shrink_regexp_cache): Use xrealloc.
7185 (syms_of_search): Use xmalloc.
7186
700e47c2
KS
71872003-06-10 Kim F. Storm <storm@cua.dk>
7188
7189 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
7190 Adjust phys_cursor.x to be relative to window box, rather than
7191 text area before checking -- to ensure cursor is redrawn when
7192 exposing window.
7193 Note: This also fixes a similar (older) bug if display margins
7194 are present.
7195
f11aa0b2
KH
71962003-06-06 Kenichi Handa <handa@m17n.org>
7197
7198 * coding.c (encoding_buffer_size): If coding->type is
7199 coding_type_ccl, double magnification on CRLF encoding.
7200
3d143690
JR
72012003-06-06 Jason Rumney <jasonr@gnu.org>
7202
7203 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
7204 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
7205
7206 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
7207 Mac too.
7208
f16205ca
DL
72092003-06-05 Dave Love <fx@gnu.org>
7210
b23c0a83
DL
7211 * strftime.c: Merge changes from gnulib.
7212
f16205ca
DL
7213 * mktime.c (__mktime_internal): Merge changes from gnulib
7214 involving year 69 and dst2.
7215
7216 Changes to merge with gnulib version and be consistent with the
7217 autoconf test:
7218
6793bc63
SM
7219 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
7220 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
7221 [HAVE_LOCALE_H]: Include locale.h.
7222 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
7223
9b87a0bc
KS
72242003-06-05 Kim F. Storm <storm@cua.dk>
7225
7226 * window.c (coordinates_in_window): Convert X and Y to window
7227 relative coordinates inside mode-line and header-line parts.
7228 Convert X and Y to margin area relative coordinates inside left
7229 and right display margin parts.
7230
5a8a15ec
JR
72312003-06-05 Jason Rumney <jasonr@gnu.org>
7232
7233 * w32fns.c (add_system_logical_colors_to_map): New function.
7234 (Fx_open_connection): Use it.
7235
01ed8ff1
SM
72362003-06-04 Stefan Monnier <monnier@cs.yale.edu>
7237
7238 * process.c (allocate_pty): Revert part of the previous patch.
7239 (Faccept_process_output): Simplify.
7240
b427b65d
JR
72412003-06-04 Jason Rumney <jasonr@gnu.org>
7242
7243 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
7244
7245 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
7246 (lispy_mouse_wheel_names): Remove.
7247 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
7248 Always define drag_and_drop_syms.
7249
7250 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
7251 WHEEL_EVENT events.
7252
914a8c47
SM
72532003-06-03 Stefan Monnier <monnier@cs.yale.edu>
7254
01ed8ff1
SM
7255 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
7256
914a8c47
SM
7257 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
7258
adcb132c
JD
72592003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7260
7261 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
7262 menu item label.
7263
be781fa7
RS
72642003-06-03 Richard M. Stallman <rms@gnu.org>
7265
7266 * window.c (Fwindow_edges): Doc fix.
7267 (Fwindow_pixel_edges, Fwindow_inside_edges)
7268 (Fwindow_inside_pixel_edges): New functions.
7269 (syms_of_window): defsubr them.
7270
7271 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
7272 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
7273
914a8c47
SM
72742003-06-02 Stefan Monnier <monnier@cs.yale.edu>
7275
7276 * dispnew.c (Fsit_for): Don't lie about the number of args.
7277
5b07197a
DL
72782003-06-02 Dave Love <fx@gnu.org>
7279
7280 * callproc.c: Use HAVE_FCNTL_H, not USG5.
7281 (syms_of_callproc) <process-environment>: Doc fix.
7282
7283 * doc.c: Use HAVE_FCNTL_H, not USG5.
7284
7285 * xfaces.c (font_rescale_ratio): Fix for K&R.
7286
7287 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
7288
7289 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
7290
7291 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
7292
7293 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
7294 (xg_create_frame_widgets): Use ENCODE_UTF_8.
7295
d7107586 7296 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
7297
7298 * xmenu.c (ENCODE_MENU_STRING): New.
7299 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
7300 Use it.
7301
7302 * coding.h (ENCODE_UTF_8): New.
7303 (Qutf_8): Declare.
7304
7305 * coding.c (Qutf_8): New.
7306 (syms_of_coding): Intern it.
7307
7308 * fns.c: Doc fixes.
7309
7335b336
KH
73102003-06-02 Kenichi Handa <handa@m17n.org>
7311
7312 * buffer.c (Fset_buffer_multibyte): Fix previous change.
7313
914a8c47
SM
73142003-06-01 Stefan Monnier <monnier@cs.yale.edu>
7315
7316 * lread.c (openp): Make sure STR is a string.
7317
9862c135
JR
73182003-06-01 David Ponce <david@dponce.com>
7319
cab27d04 7320 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
9862c135
JR
7321 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
7322
7323 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
7324 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
7325 (discard_mouse_events): Discard WHEEL_EVENT events too.
7326 (lispy_wheel_names, wheel_syms): New.
7327 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
cab27d04 7328 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
914a8c47 7329 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
7330
7331 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
7332 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
7333 WHEEL_EVENT events.
7334
f984e73e
JPW
73352003-05-31 John Paul Wallington <jpw@gnu.org>
7336
7337 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
7338 timer are in lisp/emacs-lisp.
7339
1efcd78f
KH
73402003-05-31 Kenichi Handa <handa@m17n.org>
7341
458c8af4
KH
7342 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
7343 region when a buffer is changed to unibyte.
7344
1efcd78f
KH
7345 * charset.h (VALID_LEADING_CODE_P): New macro.
7346 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
7347
778e2804
KH
7348 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
7349 is nonzero, accept multibyte form of eight-bit-control chars.
7350 (decode_composition_emacs_mule): Likewise.
7351 (decode_coding_emacs_mule): Likewise.
7352 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
7353 multibyte form of eight-bit-control chars.
7354
7355 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
7356 (Finsert_file_contents): If coding-system-for-read is bound to
7357 Qauto_save_coding, use the coding system emacs-mule with special
7358 setting for recovering a file.
7359 (choose_write_coding_system): On auto saving, use the coding
7360 system emacs-mule with special setting for auto saving.
7361 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
7362
034060e4
KH
73632003-05-30 Kenichi Handa <handa@m17n.org>
7364
7365 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
7366 properly before calling ccl_driver.
7367
778e2804 7368 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4 7369
cab27d04 7370 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
034060e4
KH
7371 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
7372 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
7373
595f5aa5
GM
73742003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
7375
7376 * xfaces.c (realize_default_face): Do not abort if lface is
7377 non-existent - reverts change from 2003-05-19.
7378
103e0180
KH
73792003-05-29 Kenichi Handa <handa@m17n.org>
7380
7381 * coding.c (decode_coding_iso2022): Pay attention to the byte
7382 sequence of CTEXT extended segment, and retain those bytes as is.
7383
73842003-05-28 Kenichi Handa <handa@m17n.org>
7385
cab27d04 7386 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
103e0180
KH
7387 of CODING_REPLACEMENT_CHARACTER.
7388 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
7389 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
7390 check this flag on encoding.
cab27d04
SM
7391 (encode_coding_sjis_big5):
7392 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
7393 (Fset_terminal_coding_system_internal):
7394 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
7395 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
7396
7397 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
103e0180
KH
7398 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
7399 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
7400
ff6a3bfb 74012003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 7402
ff6a3bfb
RS
7403 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
7404
7405 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 7406
1963c428
KS
74072003-05-28 Kim F. Storm <storm@cua.dk>
7408
7409 * xdisp.c (expose_window): Fix error in calculation of
7410 window relative coordinates of area to redisplay.
7411
2b5d4601
JR
74122003-05-27 Jason Rumney <jasonr@gnu.org>
7413
7414 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
7415
1c64a4a2
JB
74162003-05-27 David Ponce <david@dponce.com>
7417
7418 Handle W32 mouse wheel events as mouse click events, like in X.
7419
7420 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
7421 MOUSE_WHEEL_EVENT anymore.
7422
7423 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
7424 Scrolling down/up the mouse wheel is respectively mapped to mouse
7425 button 4 and 5.
7426 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
7427 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
7428 WM_MOUSEWHEEL events.
7429
2d031b89
AS
74302003-05-27 Andreas Schwab <schwab@suse.de>
7431
20464fdf
AS
7432 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
7433
2d031b89
AS
7434 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
7435 partially visible line.
7436
7437 * alloc.c (Fgarbage_collect): Fix last change.
7438
97bc76d4
JPW
74392003-05-26 John Paul Wallington <jpw@gnu.org>
7440
7441 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
7442
56613f06
SM
74432003-05-25 Stefan Monnier <monnier@cs.yale.edu>
7444
7445 * window.c (Fset_window_buffer): Add type of `keep_margins'.
7446 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
7447
7448 * window.h (window_box_text_cols): Declare.
7449
7450 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
7451 (x_draw_vertical_border): Remove unused var `f'.
7452
7453 * xfaces.c (build_scalable_font_name): Remove `unused var
7454 pixel_size' warning.
7455
7456 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
7457
7458 * unexelf.c (unexec): Remove `unused var n' warning.
7459
7460 * strftime.c (my_strftime_localtime_r): Remove `defined but
7461 unused' warning.
7462
7463 * process.c (allocate_pty): Remove `unused var stb' and
7464 `cp might be used uninitialized' warnings.
7465
7466 * dispnew.c (mode_line_string): Remove unused var `f'.
7467
7468 * coding.c (find_safe_codings): Remove unused var `i'.
7469
7470 * bytecode.c (Fbyte_code): Remove `unused val' warning.
7471
7472 * buffer.c (Fkill_buffer): Remove unused var `list'.
7473
7474 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
7475
93421a1f
JD
74762003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7477
7478 * frame.c (make_frame): Condition want_fullscreen with
7479 HAVE_WINDOW_SYSTEM.
7480
c4b8aebc
JB
74812003-05-25 Juanma Barranquero <lektu@terra.es>
7482
7483 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
7484 (Fwindow_scroll_bars): Fix typo in docstring.
7485
0416870b
KS
74862003-05-24 Kim F. Storm <storm@cua.dk>
7487
7488 The following changes serve several purposes:
7489
7490 1) Swap the position of fringes and display margins in windows, i.e.
7491 the fringes are now displayed between the margins and the text area
7492 (by default).
7493
7494 2) Allow fringe and scroll bar parameters to be set per-buffer and
7495 per-window (like display margins). Such settings are now stored
7496 in window configurations, preserved when frames are resized, and
9018a88e 7497 copied when windows are split vertically or horizontally.
0416870b
KS
7498 Several bugs related to display margins have been fixed.
7499
7500 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 7501
0416870b
KS
7502 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
7503 rather than FRAME_WIDTH (FRAME_FONT (f)).
7504
7505 5) Introduce a consistent naming of variables, members and macros
7506 depending on whether their value is measured in pixels or in
7507 canonical columns/lines. Pixel dimensions are named *_width and
7508 *_height, while canonical columns/lines are named *_cols and
7509 *_lines. Pixel positions are named *_x and *_y, while column/line
7510 positions are named *_col and *_line.
7511
7512 6) Consolidate more of the X, W32, and MAC gui code by moving
7513 common data into struct frame, and generalize it for the non-gui
7514 case by using suitable defaults.
7515
7516 7) Cleanup and consolidate the macros controlling frame and window
7517 layout into frame.h and window.h, and generalize the use of the
7518 various window_box_* functions (enhanced to handle the new fringe
7519 position and the per-window fringe and scroll bar settings).
7520
7521 * frame.h (struct frame): Rename members height to text_lines,
7522 width to text_cols, window_height to total_lines, window_width to
7523 total_cols, new_height to new_text_lines, new_width to
7524 new_text_cols. All uses changed.
7525 (struct frame): New members which consolidate common members of
7526 x_output, w32_output, and mac_output structures: left_pos,
7527 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
7528 win_gravity, size_hint_flags, border_width, internal_border_width,
7529 line_height, fringe_cols, left_fringe_width, right_fringe_width,
7530 want_fullscreen. All uses changed.
7531 (struct frame): New member column_width contaning the canonical
7532 column width, analogue to line_height. All uses changed.
7533 (struct frame): Rename members scroll_bar_pixel_width to
7534 config_scroll_bar_width, and scroll_bar_cols to
7535 config_scroll_bar_cols. All uses changed.
7536 (struct frame): New member scroll_bar_actual_width which
7537 consolidates and renames the vertical_scroll_bar_extra member of
7538 x_output, w32_output, and mac_output structures. All uses changed.
cab27d04 7539 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
0416870b
KS
7540 from x/w32/macterm.h files. All uses changed. Also change code
7541 which referred to f->output_data...->pixel_height.
cab27d04 7542 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
f63fd14e 7543 from x/w32/macterm.h files. All uses changed. Also change code
0416870b 7544 which referred to f->output_data...->pixel_width.
cab27d04 7545 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
0416870b 7546 Also change code which referred to f->height.
cab27d04 7547 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
0416870b
KS
7548 Also change code which referred to f->width.
7549 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
7550 to update new_text_lines and new_text_cols members directly.
cab27d04 7551 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
0416870b 7552 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
cab27d04 7553 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
0416870b
KS
7554 FRAME_SCROLL_BAR_COLS. All uses changed.
7555 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
cab27d04 7556 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
0416870b
KS
7557 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
7558 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
7559 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
cab27d04
SM
7560 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
7561 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
7562 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
0416870b
KS
7563 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
7564 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
cab27d04
SM
7565 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
7566 Unconditionally return line_height member (it now has proper value
7567 also for non-window frames).
7568 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
0416870b
KS
7569 return new column_width member (rather than the default font width).
7570 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
cab27d04 7571 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
0416870b
KS
7572 from x/w32/macterm.h files. Unconditionally return corresponding
7573 member of frame structure (they now have proper values also for
7574 non-window frames).
cab27d04 7575 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
0416870b
KS
7576 Calculate return value from left and right widths.
7577 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
7578 internal_border_width member (has proper value for non-window frame).
cab27d04
SM
7579 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
7580 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
7581 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
7582 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
7583 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
0416870b 7584 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 7585 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
0416870b 7586 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 7587 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
0416870b 7588 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
cab27d04 7589 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
0416870b 7590 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
cab27d04 7591 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
0416870b 7592 consolidated from x/mac/w32term.h.
cab27d04 7593 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
0416870b 7594 consolidated from x/mac/w32term.h.
cab27d04 7595 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
0416870b 7596 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
cab27d04 7597 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
0416870b
KS
7598 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
7599
7600 * window.h (struct window): Rename members left to left_col,
7601 top to top_line, height to total_lines, width to total_cols,
7602 left_margin_width to left_margin_cols, right_margin_width to
7603 right_margin_cols, orig_height to orig_total_lines, orig_top to
7604 orig_top_line. All uses changed.
7605 (struct window): New members left_fringe_width, right_fringe_width,
7606 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
7607 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
7608 New macros primarily used to simplify other macros.
7609 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
7610 referred to XINT (w->width).
7611 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
7612 referred to XINT (w->height).
7613 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
7614 referred to XINT (w->width) * canon_x_unit.
7615 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
7616 referred to XINT (w->height) * canon_y_unit.
7617 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
7618 referred to XINT (w->left).
cab27d04 7619 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
0416870b
KS
7620 all uses and code that referred to XINT (w->left) + XINT (w->width).
7621 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
7622 referred to XINT (w->top).
7623 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
7624 referred to XINT (w->top) + XINT (w->height).
7625 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
7626 referred to XINT (w->left) * canon_x_unit.
7627 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
7628 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
7629 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
7630 referred to XINT (w->top) * canon_y_unit.
7631 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
7632 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
7633 (WINDOW_LEFTMOST_P): New macro.
cab27d04 7634 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
0416870b 7635 All uses changed.
cab27d04 7636 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
0416870b 7637 All uses changed.
cab27d04 7638 (WINDOW_BOX_LEFT_EDGE_X): Rename from
0416870b
KS
7639 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
7640 Do not exclude left fringe width.
cab27d04 7641 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
0416870b
KS
7642 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
7643 Do not exclude fringe widths.
7644 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
7645 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
7646 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
7647 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
7648 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
7649 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
7650 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
7651 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
7652 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
7653 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
7654 New macros. Change code which referenced corresponding
7655 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
7656 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
7657 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
7658 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
7659 allow per-window scroll-bar settings.
7660 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
7661 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
7662 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
7663 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
7664 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
7665 FRAME_SCROLL_BAR_WIDTH.
7666 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 7667 (WINDOW_SCROLL_BAR_AREA_X): New macros.
cab27d04 7668 (WINDOW_HEADER_LINE_HEIGHT): Rename from
0416870b 7669 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
cab27d04 7670 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
0416870b 7671 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
cab27d04 7672 (WINDOW_BOX_TEXT_HEIGHT): Rename from
0416870b
KS
7673 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
7674 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
7675 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
cab27d04
SM
7676 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
7677 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
0416870b 7678 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
cab27d04 7679 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
0416870b
KS
7680 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
7681 (window_from_coordinates): Update prototype.
7682 (Fset_window_buffer): Update EXFUN.
7683 (set_window_buffer): Update prototype.
9018a88e 7684
0416870b 7685 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 7686 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
7687 changed.
7688 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
7689 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
7690 internal_border_width is now set to 0 for non-window frames.
7691 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
7692 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
7693 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
7694 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
7695 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
7696 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
7697 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
7698 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
7699 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 7700 Move to window.h and renamed [see window.h changes].
0416870b
KS
7701 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
7702 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
7703 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
7704 Use WINDOW_TOTAL_LINES.
0416870b
KS
7705 (frame_update_line_height): Remove prototype.
7706
7707 * buffer.h (struct buffer): Rename members measured in columns:
7708 left_margin_width to left_margin_cols, right_margin_width to
7709 right_margin_cols. All uses changed.
7710 New members left_fringe_width, right_fringe_width,
7711 fringes_outside_margins for per-buffer fringe settings.
7712 New members scroll_bar_width and vertical_scroll_bar_type for
7713 per-buffer scroll bar settings.
7714
7715 * buffer.c (init_buffer_once): Set buffer_defaults and
7716 buffer_local_flags for new buffer-local variables
7717 left_fringe_width, right_fringe_width, fringes_outside_margins,
7718 scroll_bar_width, and vertical_scroll_bar_type.
7719 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
7720 default-* variables for them.
7721
7722 * dispnew.c: Make (many) trivial substitutions for renamed and
7723 new macros in dispextern.h, frame.h and window.h.
7724 (mode_line_string): No need to adjust width for mode lines, as it
7725 is already adjusted by the caller.
7726 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 7727
0416870b
KS
7728 * frame.c: Make (many) trivial substitutions for renamed and
7729 new macros in dispextern.h, frame.h and window.h.
7730 (make_frame): Initialize left_fringe_width, right_fringe_width,
7731 fringe_cols, scroll_bar_actual_width, border_width,
7732 internal_border_width, column_width, line_height, x_pixels_diff,
7733 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
7734 members with values suitable for a non-window frames.
7735
7736 * gtkutil.c: Make (many) trivial substitutions for renamed and
7737 new macros in dispextern.h, frame.h and window.h.
9018a88e 7738
0416870b
KS
7739 * indent.c: Make (few) trivial substitutions for renamed and
7740 new macros in dispextern.h, frame.h and window.h.
7741
7742 * keyboard.c: Make (many) trivial substitutions for renamed and
7743 new macros in dispextern.h, frame.h and window.h.
7744 (make_lispy_event): Use window positions returned from
7745 window_from_coordinates when constructing the lisp event for
7746 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
7747 (incorrect) values locally.
7748 (make_lispy_movement): Use window positions returned from
7749 window_from_coordinates when constructing the lisp event, rather
7750 than calculating (incorrect) values locally.
7751
7752 * scroll.c: Make (some) trivial substitutions for renamed and
7753 new macros in dispextern.h, frame.h and window.h.
7754
7755 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
7756 scroll-bars.
7757
7758 * sysdep.c: Make (few) trivial substitutions for renamed and
7759 new macros in dispextern.h, frame.h and window.h.
7760
7761 * term.c: Make (some) trivial substitutions for renamed and
7762 new macros in dispextern.h, frame.h and window.h.
7763
7764 * widget.c: Make (few) trivial substitutions for renamed and
7765 new macros in dispextern.h, frame.h and window.h.
7766
7767 * window.c: Make (many) trivial substitutions for renamed and
7768 new macros in dispextern.h, frame.h and window.h.
7769 (make_window): Initialize new members
7770 left_margin_cols, right_margin_cols, left_fringe_width,
7771 right_fringe_width, fringes_outside_margins, scroll_bar_width,
7772 and vertical_scroll_bar_type.
cab27d04 7773 (coordinates_in_window): Adapt to new fringe/margin positions
9018a88e 7774 and per-window fringes and scroll-bars.
0416870b 7775 Fix bug related to incorrectly adjusting coordinates by
9018a88e 7776 frame's internal_border_width (the effect normally negible since
0416870b
KS
7777 the internal_border_width is typically 0 or 1 pixel, but very
7778 noticeable for an internal_border_width of e.g. 25 pixels).
7779 Upon successful return (other than ON_NOTHING), the coordinates
7780 are now always properly converted to window relative for the
7781 given display element.
7782 (window_from_coordinates): Add new parameters wx and wy to
7783 return the window relative x and y position in the returned
7784 window and part. A null arg means, don't return the position.
7785 All callers changed.
7786 (adjust_window_margins): New function which may reduce the width
7787 of the display margins if a window's text area is too small after
7788 resizing or splitting windows.
7789 (size_window): Fix bug that did not account for display margin
7790 widths when checking the minimum width of a window; use
7791 adjust_window_margins.
7792 (set_window_buffer): Call Fset_window_fringes and
7793 Fset_window_scroll_bars to setup per-window elements.
7794 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
7795 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
7796 (e.g. after splitting a window or resizing the frame).
7797 All callers changed.
0416870b
KS
7798 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
7799 (Fsplit_window): Duplicate original window's display margin,
7800 fringe, and scroll-bar settings; then call Fset_window_buffer with
7801 KEEP_MARGINS non-nil. This fixes a bug which caused a split
7802 window to only preserve the display margins in one of the windows.
c4b8aebc 7803 When splitting horizontally, call adjust_window_margins on both
0416870b 7804 windows to ensure that the text area of the new windows is non too
f9711de4 7805 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
7806 width of the split window was less than the width of the display
7807 margins.
cab27d04 7808 (window_box_text_cols): Rename from window_internal_width.
9018a88e 7809 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
7810 Fix bug that caused vertical separator to be subtracted also on
7811 window frames. Fix another bug that did not reduce the returned
7812 value by the columns used for display margins.
7813 (window_scroll_line_based): Fix bug related to scrolling too much
7814 when display margins are present (implicitly fixed by the fix to
7815 window_box_text_cols).
7816 (scroll_left, scroll_right): Fix bug related to scrolling too far
7817 by default when display margins are present (implicitly fixed by
7818 the fix to window_box_text_cols).
7819 (struct saved_window): Rename members left to left_col, top to
7820 top_line, width to total_cols, height to total_lines, orig_top to
7821 orig_top_line, orig_height to orig_total_lines. All uses changed.
7822 New members left_margin_cols, right_margin_cols,
7823 left_fringe_width, right_fringe_width, fringes_outside_margins,
7824 scroll_bar_width, and vertical_scroll_bar_type for saving
7825 per-window display elements.
7826 (Fset_window_configuration): Restore display margins, fringes,
7827 and scroll bar settings. This fixes a bug which caused display
7828 margins to be discarded when saving and restoring a window
7829 configuration.
7830 (save_window_save): Save display margins, fringes, and scroll bar
7831 settings. This fixes a bug which caused display margins to be
7832 discarded when saving and restoring a window configuration.
7833 (Fset_window_margins): Do nothing if display margins are not
7834 really changed. Otherwise, call adjust_window_margins to ensure
7835 the text area doesn't get too narrow. This fixes a bug which
f9711de4 7836 could cause Emacs to trap if setting display margins wider than
0416870b
KS
7837 the width of the window.
7838 (Fset_window_fringes): New defun to allow user to specifically set
7839 this window's fringe widths and position vs. display margins.
cab27d04 7840 (Fwindow_fringes): New defun to return window's actual fringe settings.
0416870b
KS
7841 (Fset_window_scroll_bars): New defun to allow user to specifically
7842 set this window's scroll bar width and position.
7843 (Fwindow_scroll_bars): New defun to return window's actual scroll
7844 bar settings.
7845 (compare_window_configurations): Also compare display margins,
7846 fringes, and scroll bar settings.
7847 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
7848
7849 * xdisp.c: Make (many) trivial substitutions for renamed and
7850 new macros in dispextern.h, frame.h and window.h.
7851 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 7852 and new fringe vs. display margin position. Note that returned
0416870b
KS
7853 value is no longer guaranteed to be a whole multiple of the frame
7854 column width, since per-window fringes may now be any width.
7855 (window_box_left_offset): New function like window_box_left, but
7856 value is relative to left border of window (rather than frame).
7857 (window_box_right_offset): New function like window_box_right,
7858 but value is relative to left border of window.
7859 (window_box_left): Adapt to per-window fringes and scroll bars,
7860 and new fringe vs. display margin position. Simplify by using
7861 WINDOW_LEFT_EDGE_X and window_box_left_offset.
7862 (window_box): Allow null args for unnecessary return values;
7863 change/simplify relevant callers.
7864 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
7865 and new fringe vs. display margin position.
7866 Use window_box_left_offset and window_box_right_offset
0416870b 7867 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
7868 scroll bars, and new fringe vs. display margin position.
7869 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
7870 (draw_fringe_bitmap): Rework to handle per-window fringes and new
7871 fringe vs. display margin position.
7872 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
7873 (redisplay_window): Adapt to per-window scroll bars.
7874 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
7875 bars, and new fringe vs. display margin position.
7876 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 7877 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
7878 bars, and new fringe vs. display margin position. Fix bug which
7879 increased total width of full_width rows by width of scroll bars
7880 although window's total width already includes that.
7881 (x_fix_overlapping_area): Simplify using window_box_left_offset.
7882 (expose_area): Simplify using window_box_left_offset.
7883 (x_draw_vertical_border): Handle per-window scroll bar settings,
7884 mixing windows with left, right and no scroll bars.
7885
7886 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
7887 where it's used in x_list_fonts (for clarity).
7888 (frame_update_line_height): Remove unused function; functionality
7889 is now done directly when setting the default font in x_set_font.
7890
7891 * xfns.c: Make (many) trivial substitutions for renamed and
7892 new macros in dispextern.h, frame.h and window.h.
7893
7894 * xmenu.c: Make (some) trivial substitutions for renamed and
7895 new macros in dispextern.h, frame.h and window.h.
7896
7897 * xterm.h (struct x_output): Move members left_pos, top_pos,
7898 border_width, pixel_height, pixel_width, line_height,
7899 internal_border_width, vertical_scroll_bar_extra,
7900 left_fringe_width, right_fringe_width, fringe_cols,
7901 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
7902 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
7903 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
7904 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
7905 (PIXEL_WIDTH, PIXEL_HEIGHT)
7906 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 7907 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
7908 frame.h and renamed [see frame.h changes].
7909 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
7910 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 7911 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 7912 and renamed [see frame.h changes].
9018a88e 7913
0416870b
KS
7914 * xterm.c: Make (several) trivial substitutions for renamed and
7915 new macros in dispextern.h, frame.h and window.h.
cab27d04 7916 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
7917 (scroll_run): Adapt to new fringe position.
7918 (glyph_rect): Use window coordinates returned from
7919 window_from_coordinates rather than frame_to_window_pixel_xy.
7920 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
7921 scroll-bars.
7922 (handle_one_xevent): Simplify a USE_GTK conditional.
7923 (x_clip_to_row): Remove superfluous whole_line_p arg and code
7924 (fringes are now inside margins, i.e. always in the clipping area).
7925 All callers changed.
7926 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
7927 directly, then call compute_fringe_widths. Don't call
7928 frame_update_line_height.
7929
7930 * w32term.h (struct w32_output): Move members left_pos, top_pos,
7931 border_width, pixel_height, pixel_width, line_height,
7932 internal_border_width, vertical_scroll_bar_extra,
7933 left_fringe_width, right_fringe_width, fringe_cols,
7934 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
7935 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
7936 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
7937 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
7938 (PIXEL_WIDTH, PIXEL_HEIGHT)
7939 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 7940 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
7941 frame.h and renamed [see frame.h changes].
7942 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
7943 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 7944 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 7945 and renamed [see frame.h changes].
9018a88e 7946
0416870b
KS
7947 * w32term.c: Make (several) trivial substitutions for renamed and
7948 new macros in dispextern.h, frame.h and window.h.
cab27d04 7949 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
7950 (glyph_rect): Use window coordinates returned from
7951 window_from_coordinates rather than frame_to_window_pixel_xy.
7952 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
7953 scroll-bars.
7954 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
7955 (fringes are now inside margins, i.e. always in the clipping area).
7956 All callers changed.
7957 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
7958 directly, then call compute_fringe_widths. Don't call
7959 frame_update_line_height.
7960
7961 * w32console.c: Make (few) trivial substitutions for renamed and
7962 new macros in dispextern.h, frame.h and window.h.
7963
7964 * w32fns.c: Make (many) trivial substitutions for renamed and
7965 new macros in dispextern.h, frame.h and window.h.
7966
7967 * w32menu.c: Make (few) trivial substitutions for renamed and
7968 new macros in dispextern.h, frame.h and window.h.
7969
7970 * macterm.h (struct mac_output): Move members left_pos, top_pos,
7971 border_width, pixel_height, pixel_width, line_height,
7972 internal_border_width, vertical_scroll_bar_extra,
7973 left_fringe_width, right_fringe_width, fringe_cols,
7974 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
7975 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
7976 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
7977 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
7978 (PIXEL_WIDTH, PIXEL_HEIGHT)
7979 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 7980 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
7981 frame.h and renamed [see frame.h changes].
7982 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
7983 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 7984 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 7985 and renamed [see frame.h changes].
9018a88e 7986
0416870b
KS
7987 * macterm.c: Make (several) trivial substitutions for renamed and
7988 new macros in dispextern.h, frame.h and window.h.
cab27d04 7989 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
7990 (glyph_rect): Use window coordinates returned from
7991 window_from_coordinates rather than frame_to_window_pixel_xy.
7992 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
7993 scroll-bars.
7994 (x_clip_to_row): Remove superfluous whole_line_p arg and code
7995 (fringes are now inside margins, i.e. always in the clipping area).
7996 All callers changed.
7997 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
7998 directly, then call compute_fringe_widths. Don't call
7999 frame_update_line_height.
8000
8001 * macfns.c: Make (several) trivial substitutions for renamed and
8002 new macros in dispextern.h, frame.h and window.h.
9018a88e 8003 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
8004
8005 * macmenu.c: Make (few) trivial substitutions for renamed and
8006 new macros in dispextern.h, frame.h and window.h.
8007
8008 * msdos.h (struct x_output): Remove members left_pos, top_pos,
8009 and line_height, and use corresponding new members in struct
8010 frame. All uses changed.
8011 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
8012 superseeded by corresponding macros in frame.h.
8013
8014 * msdos.c: Make (several) trivial substitutions for renamed and
8015 new macros in dispextern.h, frame.h and window.h.
8016 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 8017 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
8018 (internal_terminal_init): No need to initialize line_height here;
8019 it now defaults to 1.
8020
9018a88e
SM
80212003-05-24 Stefan Monnier <monnier@cs.yale.edu>
8022
8023 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
8024 dropping `down' events.
8025
016bd3c0
AS
80262003-05-24 Andreas Schwab <schwab@suse.de>
8027
8028 * coding.c (find_safe_codings): Fix last change.
8029
4dacadcc
TTN
80302003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
8031
8032 * xfns.c (x_window): Fix typo from 2003-05-21 change.
8033
319830ce
SM
80342003-05-23 Stefan Monnier <monnier@cs.yale.edu>
8035
9018a88e
SM
8036 * xdisp.c (display_mode_element): Increase max depth.
8037 Simplify the error handling code. Use a different error string
8038 for the case where we hit the depth limit.
8039
319830ce
SM
8040 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
8041
8042 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
8043
80442003-05-21 Stefan Monnier <monnier@cs.yale.edu>
8045
8046 * intervals.c (get_local_map): Don't get char-property of previous
8047 point any more: get_pos_property already does it and better.
8048
c67de8ba
DL
80492003-05-21 Dave Love <fx@gnu.org>
8050
8051 [Merged from unicode branch.]
8052
8053 * xfns.c (x_window, x_window): Use use_xim.
8054
8055 * xterm.c (use_xim): Initialize.
8056 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
8057 (x_term_init): Maybe set use_xim.
8058
8059 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
8060
edd3ff1d
JR
80612003-05-21 Jason Rumney <jasonr@gnu.org>
8062
8063 * unexw32.c (_start): Remove _fmode initialization.
8064
8065 * emacs.c (main) [WINDOWSNT]: Move it here.
8066
463f55ee
DL
80672003-05-20 Dave Love <fx@gnu.org>
8068
8069 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
8070
af253914
RS
80712003-05-19 Richard M. Stallman <rms@gnu.org>
8072
8073 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
8074 as value for QCfont attribute.
8075 (realize_default_face): lface should already exist; crash if not.
8076 Specify 0 for FORCE_P when calling set_lface_from_font_name.
8077
8078 * frame.c (Fignore_event): Doc fix.
8079
1d211019
KH
80802003-05-19 Kenichi Handa <handa@m17n.org>
8081
8082 * coding.c (decode_coding_string): Handle post-read-conversion
8083 even if the coding doesn't require decoding.
8084
4dd68254
RS
80852003-05-18 Richard M. Stallman <rms@gnu.org>
8086
8087 * callproc.c (Fcall_process_region): Doc fix.
8088
14d87dc9
SM
80892003-05-17 Stefan Monnier <monnier@cs.yale.edu>
8090
deca5d96
SM
8091 * lread.c (Fload): Print a message if package is obsolete.
8092
14d87dc9
SM
8093 * window.c (Fselect_window): Add optional `norecord' arg.
8094 (select_window_1): Fold into Fselect_window.
8095 (select_window_norecord): New function.
8096 (temp_output_buffer_show): Use it. Preserve current buffer.
8097
8098 * window.h (Fselect_window): Update declaration.
8099
8100 * window.c (delete_window, Fother_window, Fset_window_configuration):
8101 * minibuf.c (read_minibuf):
8102 * macterm.c (x_new_focus_frame):
8103 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
8104 * callint.c (Fcall_interactively):
8105 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
8106
8107 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
8108
78f52183
DK
81092003-05-17 David Kastrup <dak@gnu.org>
8110
8111 * process.c (read_process_output): Back out change from 2003-03-09.
8112
14d87dc9
SM
81132003-05-17 Stefan Monnier <monnier@cs.yale.edu>
8114
8115 * editfns.c (get_pos_property): Don't assume that `object' = nil.
8116
8117 * textprop.c (text_property_stickiness): New arg `buffer'.
8118
8119 * intervals.h (text_property_stickiness): New arg `buffer'.
8120 (get_pos_property): Declare.
8121
8122 * intervals.c (get_local_map): Use get_pos_property, to obey
8123 stickiness and empty overlays.
8124 (create_root_interval, graft_intervals_into_buffer): Use BEG.
8125 (merge_properties, intervals_equal, merge_properties_sticky):
8126 Use XCAR, XCDR.
8127 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
8128
1fd1cc2f
RS
81292003-05-17 Richard M. Stallman <rms@gnu.org>
8130
4f9f637a
RS
8131 * minibuf.c (read_minibuf): If buffer is empty, record the default
8132 in the history.
8133 (Fminibuffer_complete_word): When deleting the overlap, take account
8134 of its real position.
8135
8136 * fns.c (map_char_table): Fix previous change.
8137
1fd1cc2f
RS
8138 * syntax.c (find_defun_start):
8139 When open_paren_in_column_0_is_defun_start,
8140 return beginning of buffer.
8141
8142 * lisp.h (map_char_table): Declare added arg.
8143
8144 * fns.c (map_char_table): New arg TABLE gets the master table.
8145 All calls changed.
8146 Process default and inheritance, resorting to Faref if necessary.
8147
8148 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
8149 (Faccessible_keymaps): Pass new arg to map_char_table.
8150
8151 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
8152
8153 * casetab.c (set_case_table): Pass new arg to map_char_table.
8154
8155 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
8156
8157 * lisp.h (specbinding_func): New typedef.
8158 (struct specbinding): Use specbinding_func, to put the `volatile'
8159 in the right place.
8160
8161 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
8162 to avoid GCC warning.
14d87dc9 8163
b6189c3b 81642003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 8165
14d87dc9 8166 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 8167
35fb885d
SM
81682003-05-15 Stefan Monnier <monnier@cs.yale.edu>
8169
8170 * keyboard.c (apply_modifiers): Don't fill the other cache.
8171
9a274fbd
SM
81722003-05-14 Stefan Monnier <monnier@cs.yale.edu>
8173
c55b5fad
SM
8174 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
8175
9a274fbd
SM
8176 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
8177 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
8178 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
8179 (Fset_window_configuration, Fcurrent_window_configuration)
8180 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
8181 (Fpos_visible_in_window_p, mark_window_cursors_off)
8182 (window_internal_height, window_internal_width, Frecenter)
8183 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
8184 (replace_buffer_in_all_windows, init_window_once, init_window)
8185 (syms_of_window, keys_of_window): Move from lisp.h.
8186 * lisp.h: Move window.c declarations to window.h.
8187
8188 * bytecode.c: Include window.h.
8189 * emacs.c: Include window.h.
8190
14d87dc9 8191 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
8192 (keyremap): Add `parent' field.
8193 (keyremap_step): Use it. Remove `parent' argument.
8194 (read_key_sequence): Setup and use the new `parent' field.
8195
fd93e331
SM
81962003-05-11 Stefan Monnier <monnier@cs.yale.edu>
8197
8198 * keyboard.c (adjust_point_for_property): Ensure termination.
8199
1c4001a1
SM
82002003-05-10 Stefan Monnier <monnier@cs.yale.edu>
8201
8202 * keyboard.c (follow_key): Remove dead variable `did_meta'.
8203 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
8204 duplicated handling of function-key-map and key-translation-map
8205 in read_key_sequence.
8206 (read_key_sequence): Use them.
8207
8208 * keyboard.c (adjust_point_for_property): Try harder to move point
8209 to the non-sticky end of an invisible property.
8210
8211 * xdisp.c (single_display_prop_intangible_p): Make `space' display
8212 property intangible as well.
8213
780379b1
AS
82142003-05-10 Andreas Schwab <schwab@suse.de>
8215
8216 * xmenu.c (single_menu_item): Change last parameter to void* to
8217 avoid warning.
8218
ca2de342
RS
82192003-05-09 Richard M. Stallman <rms@gnu.org>
8220
8221 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
8222 Bind Qinhibit_modification_hooks to t so there will be no GC.
8223 Rename local `tem' to `save_deactivate_mark'.
8224
8225 * eval.c (specpdl_ptr): Declare volatile.
8226 (unbind_to): Copy the whole binding and decrement specpdl_ptr
8227 before doing the work of unbinding it.
8228
8229 * lisp.h (struct specbinding): Declare elements volatile.
8230 (specpdl_ptr): Declare volatile.
8231
8232 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
8233
8234 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
8235 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
8236
347003be
DL
82372003-05-08 Dave Love <fx@gnu.org>
8238
8239 * coding.c (Vlast_coding_system_used): Doc fix.
8240
5adcec23
JR
82412003-05-07 Jason Rumney <jasonr@gnu.org>
8242
8243 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
8244 when system does not support them.
8245
5fe3b8a4
SM
82462003-05-05 Stefan Monnier <monnier@cs.yale.edu>
8247
8248 * fileio.c (Qwrite_region_annotate_functions): New var.
8249 (build_annotations): Use it to process the global part of the hook.
8250 (syms_of_fileio): Init and staticpro it.
8251
8252 * keyboard.c (safe_run_hooks_error): Display a message instead of
8253 silently ignoring the error.
8254
82552003-05-03 Stefan Monnier <monnier@cs.yale.edu>
8256
8257 * keyboard.c (input_available_signal): Mark static.
8258 (menu_bar_items): Use map_keymap.
8259 (menu_bar_one_keymap): Remove.
8260 (menu_bar_item): Adjust arglist (for use in map_keymap).
8261 Properly hide a second binding when not both are keymaps.
8262
8263 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
8264 (single_keymap_panes): Use it and map_keymap.
8265 (single_menu_item): Use skp as well.
8266
8267 * keymap.h (map_keymap_function_t): New type.
8268 (map_keymap): Declare.
8269
8270 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
8271 (map_keymap_call, Fmap_keymap): New functions.
8272 (syms_of_keymap): Defsubr map-keymap.
8273
4b1b4443
JD
82742003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8275
8276 * gtkutil.c (create_dialog, make_widget_for_menu_item)
8277 (make_menu_item, create_menus, xg_update_menu_item): Don't call
8278 ..._with_mnemonic functions for menu items.
8279
1f816871
KH
82802003-05-01 Kenichi Handa <handa@m17n.org>
8281
8282 * coding.c (coding_system_accept_latin_extra_p): Delete this
8283 function.
8284 (find_safe_codings): Pay attention to
8285 the property tranlsation-table-for-encode of each codings.
8286 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
8287
5ed6ba5b
SM
82882003-05-01 Stefan Monnier <monnier@cs.yale.edu>
8289
8290 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
8291
32c06229
SM
82922003-04-30 Stefan Monnier <monnier@cs.yale.edu>
8293
8294 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
8295
8296 * lisp.h (CHECK): Wrap args in parenthesis.
8297 (specbind): Fix doc: symbol = Qnil is not supported any more.
8298
8299 * bytecode.c (Fbyte_code) <unwind-protect>:
8300 Use Fprogn rather than 0 and Qnil.
8301
8302 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
8303 `double', and `triple' modifiers as well.
8304
ed3c3314
RS
83052003-04-30 Richard M. Stallman <rms@gnu.org>
8306
8307 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
8308
8309 * alloc.c (abort_on_gc): New variable.
8310 (Fgarbage_collect): Abort if abort_on_gc is set.
8311
8312 * lisp.h (abort_on_gc): Add decl.
8313
8314 * eval.c (Fsignal): Clear abort_on_gc.
8315
8316 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 8317 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
8318
8319 * xdisp.c (move_it_vertically_backward): Do the final big else
8320 even if nlines is 0.
8321
8322 * xdisp.c (redisplay_internal): Finish the per-frame loop
8323 even if redisplay is suspended by input.
8324
0b325c12
AC
83252003-04-24 Andrew Choi <akochoi@shaw.ca>
8326
8327 * macterm.c (x_list_fonts): Return all fonts that match if
8328 maxnames = -1.
8329
4e837cd0
KH
83302003-04-25 Kenichi Handa <handa@m17n.org>
8331
8332 * syntax.c (skip_chars): Fix previous change.
8333
9af7511a
KH
83342003-04-24 Kenichi Handa <handa@m17n.org>
8335
8336 * syntax.c (skip_chars): Make the code faster by using the common
8337 technique of *p, *stop, and *endp.
8338
e3b2c21f
JD
83392003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8340
8341 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 8342 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
8343 being updated.
8344
32c06229
SM
83452003-04-19 Stefan Monnier <monnier@cs.yale.edu>
8346
8347 * eval.c (Fapply): Undo last change and add a comment about why.
8348
c6464167
MB
83492003-04-18 Miles Bader <miles@gnu.org>
8350
8351 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
8352 pickier PARSE_MULTIBYTE_SEQ.
8353
e509f168
SM
83542003-04-17 Stefan Monnier <monnier@cs.yale.edu>
8355
8356 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
8357 Use XCDR, XCAR, CONSP.
8358 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
8359 (Fapply): Remove unnecessary GCPRO.
8360
8361 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
8362
8363 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
8364
8365 * buffer.h: Don't hardcode BEG==1.
8366
8367 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
8368
5ceea398
RS
83692003-04-16 Richard M. Stallman <rms@gnu.org>
8370
8371 * xdisp.c (try_window, try_window_reusing_current_matrix):
8372 When at end of window, set window_end_pos to Z-ZV.
8373
8374 * buffer.c (Foverlay_recenter): Doc fix.
8375
e509f168
SM
83762003-04-14 Stefan Monnier <monnier@cs.yale.edu>
8377
8378 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
8379
d243e605
AC
83802003-04-14 Andrew Choi <akochoi@shaw.ca>
8381
8382 * macterm.c (mac_check_for_quit_char): Don't check more often than
8383 once a second.
8384
6901b111
SM
83852003-04-11 Stefan Monnier <monnier@cs.yale.edu>
8386
8387 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
8388 specially, so that they can't hide an implicit switch-frame event.
8389 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
8390 (head_table): Use switch-frame as event_kind for select-window.
8391 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
8392
8393 * editfns.c (Fformat): Lisp_Object/int mixup.
8394 (format2): Remove unused var numargs.
8395
e301806f 83962003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 8397
6901b111 8398 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
8399 (Qafter_insert_file_set_coding): New variable.
8400 (syms_of_fileio): Initialize and staticpro it. Delete declaration
8401 for after-insert-file-adjust-coding-function.
8402 (Finsert_file_contents): Call Qafter_insert_file_set_coding
8403 instead of Vafter_insert_file_adjust_coding_function.
8404
38914424
KH
84052003-04-11 Kenichi Handa <handa@m17n.org>
8406
8407 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
8408
8409 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
8410 string. Callers changed.
8411
84122003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 8413
6901b111 8414 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 8415 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
8416 (Finsert_file_contents):
8417 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
8418 decode-format.
8419
f979dc05
JD
84202003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8421
8422 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
8423 get GtkAdjustment as widget now is a GtkRange.
8424
8425 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
8426 GtkRange to avoid memory leak.
8427
f8c6b4c2 84282003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 8429
50ebc53d
KH
8430 * xfaces.c (Vface_font_rescale_alist): New variable.
8431 (struct font_name): New member rescale_ratio.
8432 (font_rescale_ratio): New function.
6901b111 8433 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
8434 (better_font_p): On comparing point sized, pay attention to
8435 recale_ratio member of fonts.
8436 (build_scalable_font_name): Reflect font->rescale_ratio in the
8437 font name.
6901b111 8438 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 8439
cb98871c
KH
8440 * lread.c (read1): Before calling index, check if the 2nd
8441 arguemnt is in ASCII range.
8442
4773b8ca
RS
84432003-04-08 Richard M. Stallman <rms@gnu.org>
8444
b0ada147
RS
8445 * fileio.c (Ffile_symlink_p): Doc fix.
8446
8447 * editfns.c (Fformat): Translate positions of text properties
8448 in the format string to apply them to the result.
8449
4773b8ca
RS
8450 * fileio.c (Finsert_file_contents): Doc fix.
8451 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
8452
84532003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 8454
4773b8ca
RS
8455 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
8456
e8f25745 84572003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 8458
e8f25745
ST
8459 * mac.c (init_mac_osx_environment): Switch libexec and bin so
8460 that self-contained application finds libexec files.
8461
f8c6b4c2 84622003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 8463
6901b111
SM
8464 * coding.c (code_convert_region_unwind):
8465 Set Vlast_coding_system_used to the argument.
2310d84c
KH
8466 (code_convert_region): If post-read-conversion function changed
8467 the value of last-coding-sytem, keep the new value in
8468 coding->symbol so that it won't be overridden.
8469 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
8470 (coding_system_accept_latin_extra_p): New function.
8471 (find_safe_codings): Pay attention to characters registered in
8472 latin-extra-code-table.
2310d84c 8473
39c9a034
TTN
84742003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
8475
8476 * Makefile.in (md5.o): Add missing dependency info.
8477
eb67c5d6
RS
84782003-04-06 Richard M. Stallman <rms@gnu.org>
8479
8480 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
8481
8482 * marker.c (verify_bytepos): New function.
8483
8484 * intervals.c (set_intervals_multibyte_1): When becoming
8485 multibyte, adjust right and left child sizes to a whole set of
8486 characters. If an interval gets zero total-length, delete it.
8487 If an interval consists of just its children, delete one of them.
8488
8489 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
8490 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 8491
eb67c5d6
RS
8492 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
8493 All calls deleted.
8494 (lisp_malloc): Do the work here directly.
8495
b1f81fc5
JB
84962003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
8497
8498 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
8499 char tables.
8500
85012003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
8502
8503 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
8504 destructively change "%S" to "%s".
8505
774666fb
MB
85062003-04-03 Miles Bader <miles@gnu.org>
8507
8508 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
8509 always set.
8510
19c37f01
DL
85112003-04-01 Dave Love <fx@gnu.org>
8512
8513 * xfns.c (xpm_lookup_color): Grok "opaque".
8514
2f4b24c3
AC
85152003-03-31 Andrew Choi <akochoi@shaw.ca>
8516
8517 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
8518 parent window ID.
8519
8520 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
8521
8522 * macterm.h (struct mac_output): Define x_pixels_diff and
8523 y_pixels_diff.
b1f81fc5 8524
9443fcf6
JB
85252003-03-31 Juanma Barranquero <lektu@terra.es>
8526
8527 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
8528 blockinput.h and files included from it.
8529
e072891b
KS
85302003-03-31 Kim F. Storm <storm@cua.dk>
8531
8532 The following changes consolidates the common code related to
8533 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
8534 files into frame.c.
9443fcf6 8535
e072891b
KS
8536 * frame.c: Include blockinput.h.
8537 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
8538 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
8539 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
8540 related vars here.
8541 (struct frame_parm_table, frame_parms): New table for describing
8542 frame parameters and their associated Q-variable.
8543 The order of the parameters corresponds to the sequence of the
8544 frame_parm_handlers table in redisplay_interface.
8545 (x_fullscreen_move, x_set_frame_parameters)
8546 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
8547 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
8548 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8549 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
8550 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
8551 Generic functions for processing of frame parameters.
8552 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
8553 (display_x_get_resource, x_get_resource_string): Functions for
8554 generic access to X resources.
8555 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
8556 (x_default_parameter, Fx_parse_geometry): Functions for generic
8557 access to frame parameters.
6901b111
SM
8558 (x_figure_window_size): Generic calculation of frame size.
8559 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
8560 (syms_of_frame): Intern and staticpro frame parameter variables.
8561 Defvar_lisp Vx_resource_class and Vx_resource_name here.
8562 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 8563
e072891b
KS
8564 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
8565 parameter related vars defined in frame.c.
8566 (EMACS_CLASS): Define here.
8567 (enum FULLSCREEN_*): Define here.
8568 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
8569 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
8570 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
8571 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
8572 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
8573 (x_set_visibility, x_set_autoraise, x_set_autolower)
8574 (x_set_unsplittable, x_set_vertical_scroll_bars)
8575 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
8576 (x_figure_window_size): Add prototypes.
8577
8578 * dispextern.h (frame_parm_handler): New typedef.
8579 (struct redisplay_interface): New member frame_parm_handlers.
8580 (enum resource_types): Move declaration here.
8581 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
8582 (x_default_parameter): Add prototypes.
8583
8584 * window.c: Remove extern decl for frame parameter vars.
8585 (change_window_heights): New generic function;
8586 replaces x_change_window_heights. All users changed.
8587
8588 * window.h (change_window_heights): Add prototype.
8589
8590 * xfaces.c: Remove extern decl for frame parameter vars.
8591
8592 * xterm.h (EMACS_CLASS): Remove. Use generic define.
8593 (struct w32_display_info): Fix type of xrdb member.
8594 (enum FULLSCREEN_*): Remove.
8595 Remove prototypes for generic functions (in frame.h).
8596
8597 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
8598 parameters now defined in frame.h and frame.c.
f63fd14e 8599 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
8600 (enum x_frame_parms): Remove (bogus, unused enum).
8601 (check_x_display_info): Make non-static (for frame.c).
8602 (struct x_frame_parm_table, x_frame_parms): Remove.
8603 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
8604 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
8605 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8606 (x_change_window_heights, x_set_autoraise, x_set_autolower)
8607 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
8608 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
8609 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
8610 Remove. Use generic functions instead.
8611 (enum resource_types): Remove.
8612 (x_set_scroll_bar_default_width): New global function (for frame.c).
8613 (Fx_create_frame): Depend on x_figure_window_size to add space for
8614 toolbar and setup size_hint_flags.
8615 (x_frame_parm_handlers): New table for redisplay_interface.
8616 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 8617
e072891b 8618 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 8619 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
8620 (x_redisplay_interface): Add x_frame_parm_handlers member.
8621
8622 * w32gui.h (XrmDatabase): New (dummy) typedef.
8623
8624 * w32term.h (EMACS_CLASS): Remove. Use generic define.
8625 (struct w32_display_info): Fix type of xrdb member.
8626 (enum FULLSCREEN_*): Remove.
8627 (x_fullscreen_adjust): Remove prototype.
8628
8629 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
8630 parameters now defined in frame.h and frame.c.
f63fd14e 8631 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
8632 (enum x_frame_parms): Remove (bogus, unused enum).
8633 (check_x_display_info): Make non-static (for frame.c).
8634 (struct x_frame_parm_table, x_frame_parms): Remove.
8635 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
8636 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
8637 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8638 (x_change_window_heights, x_set_autoraise, x_set_autolower)
8639 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
8640 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
8641 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
8642 Remove. Use generic functions instead.
8643 (enum resource_types): Remove.
8644 (x_set_scroll_bar_default_width): New global function (for frame.c).
8645 (Fx_create_frame): Depend on x_figure_window_size to add space for
8646 toolbar and setup size_hint_flags.
8647 (w32_frame_parm_handlers): New table for redisplay_interface.
8648 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 8649
e072891b
KS
8650 * w32term.c: Remove unnecessary extern declarations.
8651 (x_fullscreen_adjust): Remove. Use generic instead.
8652 (x_redisplay_interface): Add w32_frame_parm_handlers member.
8653
8654 * w32reg.c (x_get_string_resource): Use XrmDatabase.
8655
8656 * macgui.h (XrmDatabase): New (dummy) typedef.
8657
8658 * macterm.h (EMACS_CLASS): Remove.
8659 (struct mac_display_info): Add xrdb member.
8660 (struct mac_output): Add want_fullscreen member.
8661
8662 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
8663 parameters now defined in frame.h and frame.c.
f63fd14e 8664 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
8665 (check_x_display_info): Make non-static (for frame.c).
8666 (struct x_frame_parm_table, x_frame_parms): Remove.
8667 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
8668 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
8669 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8670 (x_change_window_heights, x_set_autoraise, x_set_autolower)
8671 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
8672 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
8673 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
8674 Remove. Use generic functions instead.
8675 (enum resource_types): Remove.
8676 (x_set_scroll_bar_default_width): New global function (for frame.c).
8677 (mac_frame_parm_handlers): New table for redisplay_interface.
8678 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 8679
e072891b
KS
8680 * macterm.c: Remove unnecessary extern declarations.
8681 (x_redisplay_interface): Add mac_frame_parm_handlers member.
8682
3e6a560b
KS
8683 * Makefile.in (frame.o): Add dependency on blockinput.h and files
8684 included from it (atimer.h and systime.h).
8685
7b7b454e
AS
86862003-03-30 Andreas Schwab <schwab@suse.de>
8687
8688 * xdisp.c (x_insert_glyphs): Fix swapped width and height
8689 parameters for shift_glyphs_for_insert.
8690
8691 * macterm.c (x_redisplay_interface): Add missing entry for
8692 draw_vertical_window_border.
8693
beb402de
KG
86942003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
8695
8696 * fileio.c (Fexpand_file_name): In the no-handler case, after
8697 expanding, look again for a handler and invoke it. This is needed
8698 for filenames like "/foo/../user@host:/bar/../baz" -- the first
8699 expansion produces "/user@host:/bar/../baz" which needs to be
8700 expanded again for the finame result "/user@host:/baz".
8701
b676f356
JD
87022003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8703
8704 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
8705 of area to be redrawn for better performance.
8706
3c671a56
SM
87072003-03-28 Stefan Monnier <monnier@cs.yale.edu>
8708
8709 * xterm.c (take_vertical_position_into_account): Remove.
8710 (xt_action_hook): Call set_vertical_scroll_bar if needed.
8711 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
8712 (xm_scroll_callback, x_create_toolkit_scroll_bar)
8713 (x_set_toolkit_scroll_bar_thumb): Simplify.
8714 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
8715 (XTread_socket): Remove unused var.
8716 (x_make_frame_invisible): Replace goto with else.
8717
8718 * xdisp.c (set_vertical_scroll_bar): New fun.
8719 (redisplay_window): Use it.
8720
84f2e615
RS
87212003-03-26 Richard M. Stallman <rms@gnu.org>
8722
8723 * xdisp.c (update_tool_bar): Recompute tool bar if
8724 update_mode_lines is set. Set w->update_mode_line
8725 only if the tool bar contents actually change.
8726 (update_menu_bar): Undo previous change.
8727
70b6104c
JD
87282003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8729
5fd6f727
JD
8730 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
8731 (xg_frame_set_char_size): Calculate scroll bar width before frame
8732 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
8733 (xg_separator_p): Check for all documented separator types.
8734 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
8735 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
8736
70b6104c
JD
8737 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
8738 so tool bar gets updated.
8739
d9b36d19
SM
87402003-03-26 Stefan Monnier <monnier@cs.yale.edu>
8741
8742 * data.c (store_symval_forwarding): Re-instate part of the code
8743 that was deleted with too much enthusiasm.
8744
87452003-03-25 Stefan Monnier <monnier@cs.yale.edu>
8746
8747 * data.c (store_symval_forwarding): Delete special read-only
8748 hack for type == -1, since we now use ->constant instead.
8749 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
8750
8751 * buffer.c (overlays_in): Declare static.
8752 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
8753 `constant' field rather than the variable's `type' field.
8754
365fa1b3
AC
87552003-03-24 Andrew Choi <akochoi@shaw.ca>
8756
8757 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
8758
8759 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
8760
8761 * fns.c [MAC_OSX]: Do not redefine vector.
8762
8763 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
8764
8765 * macgui.h: Remove definition of No_Cursor.
8766
d9b36d19 8767 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
8768
8769 * xdisp.c: Define No_Cursor.
8770 (x_write_glyphs, notice_overwritten_cursor)
8771 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
8772 (note_mouse_highlight): Remove Mac-specific code.
8773 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 8774
c0bcce6f
JPW
87752003-03-24 John Paul Wallington <jpw@gnu.org>
8776
8777 * xdisp.c (redisplay_window): If mini window's buffer is not
8778 empty, then redisplay it like other windows.
8779
a526b96c
KS
87802003-03-23 Kim F. Storm <storm@cua.dk>
8781
8782 * w32term.c (w32_draw_window_cursor): Fix last change.
8783
37ab321e
KH
87842003-03-23 Kenichi Handa <handa@m17n.org>
8785
a526b96c
KS
8786 * alloc.c (make_string_from_bytes, make_specified_string):
8787 Add `const' for the arg CONTENTS.
37ab321e
KH
8788
8789 * lisp.h (make_string_from_bytes, make_specified_string):
8790 Prototypes adjusted.
8791
7863d625
JD
87922003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8793
a526b96c 8794 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 8795
7863d625
JD
8796 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
8797 (XG_SB_RANGE): New define.
8798
8799 * gtkutil.c (xg_fixed_handle_expose): New function.
8800 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
8801 expose events.
8802 (xg_update_scrollbar_pos): Take two more arguments, left and width
8803 of scroll bar including borders.
8804 Clear left and right part outside scroll bar separately as some
8805 themes have bars that are not an even number of pixels.
d9b36d19 8806 Don't set reallocate_redraws, don't call
7863d625
JD
8807 gdk_window_process_all_updates.
8808 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
8809 so no need to change it. Calculate size and value with XG_SB_RANGE.
8810
d9b36d19
SM
8811 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
8812 Pass left and width of scroll bar including borders to
7863d625
JD
8813 xg_update_scrollbar_pos.
8814
af0ad939
TTN
88152003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
8816
8817 * Makefile.in: Make sure space precedes end-of-line backslashes.
8818
b22139fd
KS
88192003-03-22 Kim F. Storm <storm@cua.dk>
8820
8821 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
8822 Add generic versions here. Remove system specific versions
8823 defined elsewhere.
8824
8825 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
8826 Add prototypes.
8827
6e6410cf
KS
8828 * xterm.h (STORE_NATIVE_RECT): New macro.
8829
5c9cc435
KS
88302003-03-21 Kim F. Storm <storm@cua.dk>
8831
00c64fab
SM
8832 * xdisp.c (get_glyph_string_clip_rect):
8833 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
8834
8835 * dispextern.h (struct redisplay_interface): Add active_p
8836 argument to draw_window_cursor member. All uses changed.
8837
acd37560
KS
88382003-03-21 Kim F. Storm <storm@cua.dk>
8839
8840 The following changes consolidate code related to writing and
8841 inserting glyphs, exposing frame, the tool bar, the mouse face,
8842 the output cursor, and help echo from xterm.c, w32term.c and
8843 macterm.c into xdisp.c. It also generalizes the use of the
8844 window_part enum instead of using numeric values throughout.
af0ad939 8845
acd37560
KS
8846 * xdisp.c: Consolidate gui-independent code here.
8847 Include keymap.h.
8848 (Qhelp_echo): Import.
8849 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
8850 (help_echo_string, help_echo_window, help_echo_object)
8851 (previous_help_echo_string, help_echo_pos): Declare here.
8852 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
8853 (estimate_mode_line_height): Define here. Handle windowing
8854 systems directly (without using estimate_mode_line_height_hook).
8855 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
8856 (update_window_cursor, update_cursor_in_window_tree)
8857 (fast_find_position, fast_find_string_pos)
8858 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
8859 (expose_area, expose_line, expose_overlaps, expose_window)
8860 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
8861 declared static as they are only used locally in xdisp.c.
8862 (draw_glyphs): Rename from x_draw_glyphs and make static.
8863 (tool_bar_item_info, notice_overwritten_cursor): Make static.
8864 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
8865 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 8866 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
8867 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
8868 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
8869 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
8870 (note_mouse_highlight, x_clear_window_mouse_face)
8871 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
8872 (x_intersect_rectangles): New generic functions for use by xdisp.c
8873 and GUI front-ends.
8874 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
8875 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
8876
8877 * dispextern.h (Display_Info): Generic typedef for *_display_info.
8878 (NativeRectangle): Generic typedef for rectangle type.
8879 (enum window_part): Move here from window.c.
8880 (struct redisplay_interface): New members flush_display_optional,
8881 define_frame_cursor, clear_frame_area, draw_window_cursor,
8882 draw_vertical_window_border, shift_glyphs_for_insert.
8883 Rename member clear_mouse_face to clear_window_mouse_face.
8884 (estimate_mode_line_height_hook): Remove hook.
8885 (auto_raise_tool_bar_buttons_p): Don't declare extern.
8886 (tool_bar_item_info): Remove prototype.
8887 (help_echo_string, help_echo_window, help_echo_object)
8888 (previous_help_echo_string, help_echo_pos)
8889 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
8890 (x_stretch_cursor_p, output_cursor): Declare extern.
8891 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
8892 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
8893 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
8894 (display_and_set_cursor, set_output_cursor, x_cursor_to)
8895 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
8896 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
8897 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
8898 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
8899 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
8900 Add prototypes.
8901 (mode_line_string, marginal_area_string): Fix prototypes.
8902
8903 * window.c (enum window_part): Move to dispextern.h.
8904 (coordinates_in_window): Use enum window_part member names
8905 instead of numbers to describe return value.
8906 (struct check_window_data): Change part member to window_part.
8907 (check_window_containing): Return window_part unaltered.
8908 (window_from_coordinates): Change part arg from int to enum
8909 window_part. Allow part arg to be null. All users changed.
8910
8911 * window.h (window_from_coordinates): Fix prototype.
8912
8913 * term.c (estimate_mode_line_height): Move to xdisp.c.
8914
8915 * keyboard.c (make_lispy_event): Use enum window_part.
8916
8917 * dispnew.c (mode_line_string, marginal_area_string): Use enum
8918 window_part instead of int in arg list. Users changed.
8919
8920 * xterm.h (No_Cursor): Declare as None for X.
8921 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 8922
acd37560
KS
8923 * xterm.c: Remove consolidated defines and code.
8924 (BETWEEN): Remove unused macro.
8925 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
8926 (x_define_frame_cursor, x_clear_frame_area)
8927 (x_draw_window_cursor): New X-specific functions for RIF.
8928 (x_redisplay_interface): Add new members.
8929
8930 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
8931
8932 * w32term.h (struct w32_output): Remove cross_cursor member.
8933
8934 * w32term.c: Remove consolidated defines and code.
8935 (BETWEEN): Remove unused macro.
8936 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
8937 (w32_define_frame_cursor, w32_clear_frame_area)
8938 (w32_draw_window_cursor): New W32-specific functions for RIF.
8939 (w32_redisplay_interface): Add new members.
8940
a64387ee 8941 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
8942 (XRectangle): Add X compatible rectangle type.
8943 (NativeRectangle): Declare as RECT for W32.
8944 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
8945
8946 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
8947
8948 * w32console.c: Remove consolidated defines and code.
af0ad939 8949
acd37560
KS
8950 * msdos.h (Display_Info): Add generic typedef.
8951
8952 * msdos.c: Remove consolidated defines and code.
8953 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
8954
8955 * macterm.h (struct mac_output): Replace member cross_cursor by
8956 hand_cursor.
8957 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
8958
8959 * macterm.c: Remove consolidated defines and code.
8960 (BETWEEN): Remove unused macro.
8961 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
8962 (mac_define_frame_cursor, mac_clear_frame_area)
8963 (mac_draw_window_cursor): New Mac-specific functions for RIF.
8964 (x_redisplay_interface): Add new members.
8965
8966 * macgui.h (No_Cursor): Define as 0 for Mac.
8967 (XRectangle): Add X compatible rectangle type.
8968 (NativeRectangle): Declare as Rect for Mac.
8969 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
8970
204ccab1
KS
8971 * macfns.c (x_set_mouse_color): Setup hand_cursor.
8972 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 8973
9443fcf6 8974 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
8975 included from it. Add dependency on keymap.h.
8976
8977 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
8978
8ba01a70 89792003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
8980
8981 * fileio.c (Fexpand_file_name): Fix previous change.
8982
8ba01a70 89832003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
8984
8985 * fileio.c (Ffile_name_directory): Reconstruct file name by
8986 make_specified_string.
8987 (Ffile_name_nondirectory, Ffile_name_as_directory)
8988 (Fdirectory_file_name, Fexpand_file_name)
8989 (Fsubstitute_in_file_name): Likewise.
8990 (Fread_file_name): Compare decoded homedir with DIR and
8991 DEFAULT_FILENAME.
8992
8993 * alloc.c (make_specified_string): If NCHARS is negative, count
8994 the number of characters.
8995
19536747
JD
89962003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8997
de38ae5a
JD
8998 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
8999 all widgets.
9000
19536747
JD
9001 * gtkutil.h: Removed xg_ignore_next_thumb.
9002
37ab321e 90032003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
9004
9005 * coding.c (Vchar_coding_system_table): Remove this variable.
9006 (Vcoding_system_safe_chars): New variable.
9007 (intersection): Remove this function.
9008 (find_safe_codings): Don't use Vchar_coding_system_table, but try
9009 all codings in SAFE_CODINGS.
00c64fab 9010 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
9011 find_safe_codings. Get generic coding systems from
9012 Vcoding_system_safe_chars.
9013 (Fdefine_coding_system_internal): New function.
9014 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
9015 Initialize and staticpro Vcoding_system_safe_chars.
9016
17097258
JD
90172003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9018
2a2071c3
JD
9019 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
9020 equal old values before updating.
9021
17097258
JD
9022 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
9023
9024 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
9025
90262003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9027
9028 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
9029 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
9030 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
9031 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
9032 (xg_create_scroll_bar): Pass bar to button event callback.
9033 (xg_find_top_left_in_fixed): New function.
9034 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
9035 whole scroll bar area. Get old position with
9036 xg_find_top_left_in_fixed, calculate and only clear needed areas.
9037 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
9038 dragging is in progress. Calculate whole as for Motif.
9039 Remove code that saved last values. Call gtk_range functions to
9040 set scroll bar sizes.
9041
9042 * gtkutil.h: Removed xg_ignore_next_thumb.
9043
8cb9dfbf
JB
90442003-03-17 Juanma Barranquero <lektu@terra.es>
9045
9046 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
9047 and files included from it.
9048
00c64fab
SM
90492003-03-18 Stefan Monnier <monnier@cs.yale.edu>
9050
9051 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
9052 multiple occurrences of the same keymap under different prefixes.
9053 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
9054
c45bb3b2
JR
90552003-03-16 Jason Rumney <jasonr@gnu.org>
9056
9057 * w32gui.h: Use HDC for Display.
9058
9059 * w32term.c (w32_encode_char): Prevent double-byte chars from
9060 crashing Emacs.
9061
9062 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
9063 as binary.
9064
2a6d0874
JB
90652003-03-16 Juanma Barranquero <lektu@terra.es>
9066
9067 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
9068
03eb5fab
KS
90692003-03-16 Kim F. Storm <storm@cua.dk>
9070
9071 The following changes consolidate some of the gui-independent
9072 parts of the processing and drawing of "glyph strings" from
9073 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 9074
03eb5fab
KS
9075 * dispextern.h (struct glyph): Reduce face_id member from 22 to
9076 21 bits (this reduces number of faces from 4M to 2M).
9077 Replace W32 specific w32_font_type member (2 bits) by generic
9078 font_type member (3 bits) for portability.
9079 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
9080 (enum draw_glyphs_face): Define here.
9081 (struct glyph_string): Define here. Merge W32 and X versions.
9082 (struct redisplay_interface): New members per_char_metric,
9083 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
9084 (VCENTER_BASELINE_OFFSET): Define here.
9085 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
9086 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
9087
9088 * xdisp.c: Consolidate gui-independent "glyph string" code here.
9089 (dump_glyph_string): Moved here.
9090 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
9091 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
9092 (fill_composite_glyph_string, fill_glyph_string)
9093 (fill_image_glyph_string, fill_stretch_glyph_string)
9094 (left_overwritten, left_overwriting, right_overwritten)
9095 (right_overwriting, get_char_face_and_encoding)
9096 (set_glyph_string_background_width, compute_overhangs_and_x)
9097 (append_glyph, append_composite_glyph, produce_image_glyph)
9098 (take_vertical_position_into_account, append_stretch_glyph)
9099 (produce_stretch_glyph): New generic functions (based on X version).
9100 Call platform specific functions through rif.
9101 (INIT_GLYPH_STRING): New macro, hides W32 details.
9102 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
9103 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
9104 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
9105 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
9106 (notice_overwritten_cursor):
9107 Generic functions exported to platform modules. Users changed.
9108
9109 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
9110 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
9111 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 9112 New macros for consolidated code.
2a6d0874 9113
03eb5fab
KS
9114 * xterm.c: Remove consolidated defines and code.
9115 (x_per_char_metric, x_encode_char)
9116 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
9117 (x_redisplay_interface): Add new members.
9118
9119 * w32gui.h (Display): Add dummy typedef for consolidation.
9120 (XChar2b): Define alias for wchar_t for consolidation.
9121 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
9122
9123 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 9124 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
9125 New macros for consolidation.
9126
fad49844 9127 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
9128 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
9129 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
9130 (w32_per_char_metric): Change font_type arg to int for RIF.
9131 (w32_encode_char): Return int according to RIF requirements.
9132 (w32_compute_glyph_string_overhangs): Adapt to RIF.
9133 (w32_get_glyph_overhangs): New function for RIF. Uses generic
9134 x_get_glyph_overhangs.
9135 (w32_redisplay_interface): Add new members.
9136
9137 * macgui.h (XChar2b): Move typedef here for consolidation.
9138 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
9139
9140 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
9141 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
9142 consolidation.
9143
9144 * macterm.c: Remove consolidated defines and code.
9145 (mac_per_char_metric): New function for RIF.
00c64fab 9146 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
9147 (mac_compute_glyph_string_overhangs): Adapt for RIF.
9148 (x_redisplay_interface): Add new members.
9149
00c64fab
SM
91502003-03-15 Stefan Monnier <monnier@cs.yale.edu>
9151
9152 * keymap.c (Vmenu_events): New var.
9153 (syms_of_keymap): Initialize it.
9154 (where_is_internal): Check more carefully what is a menu event.
9155
225c7a07
RS
91562003-03-14 Richard M. Stallman <rms@gnu.org>
9157
9158 * lread.c (read1): After #!, exit loop on eof.
9159
cea9be54
JD
91602003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9161
9ea0e54d
JD
9162 * gtkutil.h: Add declaration for xg_frame_cleared.
9163
0cb35f4e
JD
9164 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
9165
cea9be54
JD
9166 * gtkutil.c (struct xg_last_sb_pos): New structure.
9167 (handle_fixed_child): New function.
9168 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
9169 and force a redraw on them.
9170 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
9171 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
9172 so we can avoid unneeded redraws.
9173 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
9174 and force a redraw on the scroll bar.
9175 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
9176 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 9177 (xg_frame_cleared): New function.
cea9be54 9178
20b853f3
KH
91792003-03-13 Kenichi Handa <handa@m17n.org>
9180
9181 * coding.c (Fdetect_coding_region): Fix docstring.
9182 (Fdetect_coding_string): Fix docstring.
9183
7a555aff
AS
91842003-03-13 Andreas Schwab <schwab@suse.de>
9185
25cc0080
AS
9186 * gtkutil.c: Add prototype for create_menus.
9187
30225431
AS
9188 * data.c (long_to_cons): Fix type of top.
9189
9190 * xselect.c (selection_data_to_lisp_data): Use int instead of
9191 long for an integer of size 4.
9192
7a555aff 9193 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 9194 (xg_tool_bar_help_callback): Likewise.
7a555aff 9195
a3e4741f
AS
91962003-03-12 Andreas Schwab <schwab@suse.de>
9197
9198 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
9199
9668be7c
KS
92002003-03-12 Kim F. Storm <storm@cua.dk>
9201
03eb5fab 9202 The following changes consolidate the fringe handling from
9668be7c 9203 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 9204
9668be7c
KS
9205 * xdisp.c: Consolidate fringe handling code here.
9206 (left_bits, right_bits, continued_bits, continuation_bits)
9207 (ov_bits, zv_bits): Define fringe bitmaps.
9208 (fringe_bitmaps): New array holding fringe bitmaps.
9209 (draw_fringe_bitmap): Draw a specific bitmap; call display
9210 specific drawing routine via rif->draw_fringe_bitmap.
9211 (draw_row_fringe_bitmaps): Generic replacement for
9212 x_draw_row_fringe_bitmaps; all callers changed.
9213 (compute_fringe_widths): Generic replacement for
9214 x_compute_fringe_widths; all callers changed.
9215
9216 * dispextern.h (enum fringe_bitmap_type): Define here.
9217 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
9218 (fringe_bitmaps): Declare extern.
9219 (struct redisplay_interface): New member draw_fringe_bitmap.
9220 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
9221
9222 * xterm.c: Remove generic fringe code.
9223 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
9224 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
9225
9226 * w32term.c: Remove generic fringe code.
9227 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
9228 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 9229
9668be7c
KS
9230 * macterm.c: Remove generic fringe code.
9231 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
9232 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
9233
00a88f32
SM
92342003-03-11 Stefan Monnier <monnier@cs.yale.edu>
9235
9236 * print.c (Fprin1_to_string): Return unibyte string if possible.
9237
1d1de695
DK
92382003-03-09 David Kastrup <dak@gnu.org>
9239
9240 * process.c (read_process_output): We have allocated enough space
9241 for readmax and carryover, so actually use the alloted space.
9242
257f40f2
JD
92432003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9244
9245 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
9246 toolkit scrollbar click.
9247
9248 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
9249 for USE_GTK.
9250 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
9251 also.
9252 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
9253 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 9254
78819ebb 9255 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
257f40f2
JD
9256
9257 * gtkutil.c (xg_get_scroll_id_for_window): New function.
9258 (xg_tool_bar_item_expose_callback): New function.
9259 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
9260 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
9261 on the tool bar widget.
9262 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
9263 to expose on the tool bar item widgets.
9264
15213141
JD
92652003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9266
26b74a0b 9267 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 9268 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
9269 deleted from the image cache).
9270
15213141
JD
9271 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
9272 the event isn't for a frame (i.e. for dialogs).
9273
20b853f3 92742003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
9275
9276 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
9277 composition components reaches the limit, terminate composing.
9278 (COMPOSITION_OK): New macro.
00a88f32 9279 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
9280 composition is found.
9281 (coding_restore_composition): Adjust the number of composition
9282 components if it is not sane.
9283
c9029fe5
JB
92842003-03-06 Juanma Barranquero <lektu@terra.es>
9285
9286 * w32term.h (struct w32_display_info): Add xrdb member to support
9287 passing resources via -xrm on Windows.
9288
9289 * w32term.c (w32_make_rdb): New function.
9290 (w32_term_init): Use it to initialize xrdb member of w32_display_info
9291 struct. Delete leftover code.
9292
9293 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
9294 for resources passed on the command line.
9295
9296 * w32reg.c (w32_get_rdb_resource): New function.
9297 (x_get_string_resource): Use it, so resources passed with -xrm
9298 supercede the ones in the registry.
9299
9d00001f
JD
93002003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9301
9302 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
9303 instead of x_top_window_to_frame.
9304
ca2417b9
JD
93052003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9306
9307 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
9308 when restarting Emacs.
9309
5b20caf0
RS
93102003-03-03 Richard M. Stallman <rms@gnu.org>
9311
9312 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
9313 to run kill-buffer-query-functions.
9314 (Qkill_buffer_query_functions): New var.
9315 (syms_of_buffer): Init and staticpro it.
9316
58e91b77
JD
93172003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9318
9319 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
9320
932357b4
KS
93212003-02-25 Kim F. Storm <storm@cua.dk>
9322
9323 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
9324 If centering point failed to make whole line visible and vscroll
9325 is non-zero, disable vscroll and try centering point again.
9326
9327 * lread.c (read1): Accept `single space' syntax like (? x).
9328
bb8db7e1
JD
93292003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9330
9331 * keyboard.c (cancel_hourglass_unwind): Surround with
9332 #ifdef HAVE_X_WINDOWS
9333
47d77aab
KH
93342003-02-25 Kenichi Handa <handa@m17n.org>
9335
9336 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
9337 process only when "subprocesses" is defined.
9338
6a097c0c
SM
93392003-02-24 Stefan Monnier <monnier@cs.yale.edu>
9340
9341 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
9342
0b063c27
JB
93432003-02-24 Juanma Barranquero <lektu@terra.es>
9344
d1135afc
JB
9345 * callint.c (fix_command): Declare as static void and move before
9346 Fcall_interactively.
9347
0b063c27
JB
9348 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
9349 (syms_of_xdisp): Don't initialize Qwhen.
9350
0af912f0
JD
93512003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9352
9353 * keyboard.c (cancel_hourglass_unwind): New function.
9354 (command_loop_1): Cancel hourglass with unwind-protect.
9355
120d0a23
RS
93562003-02-23 Richard M. Stallman <rms@gnu.org>
9357
9358 * callint.c (fix_command): New subroutine, from Fcall_interactively.
9359 Detect (when ... (region-beginning)) etc.
9360 (Fcall_interactively): Call fix_command.
9361 (Qif, Qwhen): New variables.
9362 (syms_of_callint): Init and staticpro them.
0b063c27 9363
120d0a23
RS
9364 * regex.c (print_partial_compiled_pattern): Output to stderr.
9365
4ece81a6
KG
93662003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
9367
9368 * dired.c (directory_files_internal): Don't expand directory.
9369 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
9370 instead. From Lars Hansen <larsh@math.ku.dk>.
9371
e52bd6b7
SM
93722003-02-22 Stefan Monnier <monnier@cs.yale.edu>
9373
9374 * fns.c (string_to_multibyte): Remove unused var i.
9375 (Flanginfo): Fix int/Lisp_Object mixup.
9376 (void_call2): New fun.
9377 (Fmap_char_table): Use it in place of call2.
9378
9379 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
9380
9381 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
9382
9383 * keymap.c (copy_keymap_1): Make it static.
9384
9385 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
9386
c33ef7c4
JB
93872003-02-22 David Ponce <david@dponce.com>
9388
9389 * lread.c (Fload): Don't check STRING_MULTIBYTE.
9390
16782258
JD
93912003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9392
9393 * process.h: Removed subtty field from struct Lisp_Process.
9394
9395 * process.c (create_process): Remove setting of subtty.
9396 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
9397 (Fprocess_running_child_p, process_send_signal):
9398 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
9399 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
9400
3abeca61
KG
94012003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
9402
9403 * keymap.c (Fdefine_key): Doc fix.
9404
92a8ce63
JB
94052003-02-21 Juanma Barranquero <lektu@terra.es>
9406
9407 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
9408
9409 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
9410 POLLING_PROBLEM_IN_SELECT.
9411
9412 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
9413 Delete #undef of POLLING_PROBLEM_IN_SELECT.
9414
9415 * s/hpux10-20.h: New file.
9416
e52bd6b7
SM
9417 * process.c (wait_reading_process_input):
9418 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 9419
20f1ef2e
KH
94202003-02-20 Kenichi Handa <handa@m17n.org>
9421
32d0a9dc
KH
9422 * fontset.c (check_fontset_name): If NAME is nil, return the
9423 default fontset.
9424 (override_font_info): New function.
e52bd6b7 9425 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
9426 (Ffontset_info): If FONTSET is not the default fontset, merge
9427 FONTSET onto the copy of the default fontset, and work on that
9428 copy. Document that NAME nil means the default fontset.
9429 (Ffontset_font): Document that NAME nil means the default fontset.
9430
20f1ef2e
KH
9431 * process.c (setup_process_coding_systems): If the process's
9432 in/out descriptor is -1, do nothing.
9433
77d1daf2
AS
94342003-02-19 Andreas Schwab <schwab@suse.de>
9435
e52bd6b7
SM
9436 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
9437 Add prototypes.
77d1daf2 9438
f9a45bb3
KH
94392003-02-19 Kenichi Handa <handa@m17n.org>
9440
9441 * xfaces.c (try_alternative_families): Try all scalable fonts if
9442 Vscalable_fonts_allowed is not Qt.
9443
72ecb43c
JD
94442003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9445
9446 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
9447
ee5be7c3
JD
94482003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9449
9450 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
9451 names.
9452
9453 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 9454 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
9455 x_face_list_fonts.
9456 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
9457 (Fx_list_fonts): Set maxnames to -1 to get all font names.
9458
4cd519a7
KS
94592003-02-18 Kim F. Storm <storm@cua.dk>
9460
068f9882
KS
9461 * lread.c (read1): Fix last change.
9462 "`" is not always special. Allow "?" after a character constant.
4cd519a7 9463
7290a344
AC
94642003-02-18 Andrew Choi <akochoi@shaw.ca>
9465
9466 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
9467
1f7fa69b
AS
94682003-02-18 Andreas Schwab <schwab@suse.de>
9469
9470 * window.c (window_scroll_pixel_based): Move outside a
9471 multi-glyph character before setting new window start.
9472
9473 * xdisp.c (in_display_vector_p): New function.
9474 * dispextern.h (in_display_vector_p): Declare.
9475
23e21195
KS
94762003-02-18 Kim F. Storm <storm@cua.dk>
9477
9478 * lread.c (read1): Fix and relax read syntax.
9479 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
9480 Only recognize "," after dotted-pair dot if inside backquote.
9481 Never include "`" or "," (inside backquote) in a symbol.
9482 Allow dotted-pair dot after a character constant.
9483 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 9484
f098b121
JD
94852003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9486
9487 * gtkutil.c (xg_tool_bar_expose_callback): New function.
9488 (xg_create_tool_bar): Force style of tool bar to be horizontal with
9489 icons. Set name of tool bar to emacs-toolbar.
9490 (update_frame_tool_bar): Connect expose event to
9491 xg_tool_bar_expose_callback.
9492
63020c46
RS
94932003-02-17 Richard M. Stallman <rms@gnu.org>
9494
9495 * keyboard.c (this_command_key_count_reset): New variable.
9496 Initiatize to 0 where this_command_key_count is set.
9497 (read_char): Save and restore this_command_key_count_reset
9498 around input method code.
9499 (read_char): If this_command_key_count_reset, echo reread commands.
9500 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
9501
fb4452cc
KH
95022003-02-17 Kenichi Handa <handa@m17n.org>
9503
9504 * fns.c (string_to_multibyte): Always return a multibyte string.
9505
bd11cc09
JR
95062003-02-16 Jason Rumney <jasonr@gnu.org>
9507
e52bd6b7
SM
9508 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
9509 Negative max_fonts parameter means list all.
bd11cc09 9510
4cdf4bde
DL
95112003-02-14 Dave Love <fx@gnu.org>
9512
9513 * fns.c (Flanginfo): Doc fix.
9514
023b93f6
KS
95152003-02-13 Kim F. Storm <storm@cua.dk>
9516
37cd4238
KS
9517 * lread.c (read_escape): Interpret \s as a SPACE character, except
9518 for \s-X in a character constant which still is the super modifier.
9519 (read1): Signal an `invalid read syntax' error if a character
9520 constant is immediately followed by a digit or symbol character.
9521
140a6b7e
KS
9522 * search.c (Fmatch_data): Doc fix. Explicitly state that
9523 match-data is undefined if last search failed.
9524
023b93f6
KS
9525 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
9526 All uses changed.
9527
7d5c86e5
JB
95282003-02-12 Juanma Barranquero <lektu@terra.es>
9529
9530 * eval.c (Fdefmacro): Fix typo.
9531
295fff2c
KS
95322003-02-12 Kim F. Storm <storm@cua.dk>
9533
9534 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
9535 macro is a string, convert meta modifiers in string when copying
9536 the string into a vector.
9537
60f3202d
KS
95382003-02-11 Kim F. Storm <storm@cua.dk>
9539
9540 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
9541
61cb0b53
KH
95422003-02-11 Kenichi Handa <handa@m17n.org>
9543
9544 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
9545
7392e23c
KS
95462003-02-10 Kim F. Storm <storm@cua.dk>
9547
9548 * process.c: Doc fixes.
9549 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
9550
ce4254bd
KH
95512003-02-10 Kenichi Handa <handa@m17n.org>
9552
9c7a329a
KH
9553 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
9554
ce4254bd
KH
9555 * process.c (QCfilter_multibyte): New variable.
9556 (setup_process_coding_systems): New function.
e52bd6b7
SM
9557 (Fset_process_buffer, Fset_process_filter):
9558 Call setup_process_coding_systems.
ce4254bd
KH
9559 (Fstart_process): Initialize the member `filter_multibyte' of
9560 struct Lisp_Process.
9561 (create_process): Call setup_process_coding_systems.
9562 (Fmake_network_process): New keyward `:filter-multibyte'.
9563 Initialize the member `filter_multibyte' of struct Lisp_Process.
9564 Call setup_process_coding_systems.
9565 (server_accept_connection): Call setup_process_coding_systems.
9566 (read_process_output): If the process has a filter, decide the
9567 multibyteness of a string to given to the filter by
9568 `filter_multibyte' member of the process. If the process doesn't
9569 have a filter and the result of conversion is unibyte, use
9570 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
9571 multibyte form.
9572 (Fset_process_coding_system): Call setup_process_coding_systems.
9573 (Fset_process_filter_multibyte): New function.
9574 (Fprocess_filter_multibyte_p): New function.
9575 (syms_of_process): Intern and staticpro QCfilter_multibyte.
9576 Defsubr Sset_process_filter_multibyte and
9577 Sprocess_filter_multibyte_p.
9578
9579 * process.h (struct Lisp_Process): New member filter_multibyte.
9580
9581 * lisp.h (setup_process_coding_systems): Add prototype.
9582
9583 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
9584 process, update coding systems for the process.
9585
b08d5f59
KH
95862003-02-09 Kenichi Handa <handa@m17n.org>
9587
9588 * fns.c (string_to_multibyte): New function.
9589 (Fstring_to_multibyte): New function.
9590 (syms_of_fns): Defsubr it.
9591
0dfd93c0
AS
95922003-02-08 Andreas Schwab <schwab@suse.de>
9593
9594 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
9595 instead of the substitution.
9596
7b76ca1c
JD
95972003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9598
9599 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
9600
9601 * xmenu.c (menu_position_func): Adjust menu popup position so that
9602 the menu is fully visible.
7b76ca1c 9603
2436a4e4
JD
96042003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9605
9606 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
9607 (x_make_frame_invisible, x_wm_set_icon_position):
9608 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
9609
9610 * xfns.c (x_set_name, x_set_title): Ditto.
9611
37d1e680
RS
96122003-02-04 Richard M. Stallman <rms@gnu.org>
9613
9614 * keyboard.c (echo_now): Update before_command_echo_length.
9615 (Freset_this_command_lengths): Reset this_command_key_count etc.
9616 immediately rather than arranging to do it later.
9617 (before_command_key_count_1, before_command_echo_length_1)
9618 (before_command_restore_flag): Vars deleted.
9619 (add_command_key): Don't handle before_command_restore_flag.
9620 (read_char, record_menu_key): Don't update before_command_key_count or
9621 before_command_echo_length.
9622 (read_char): Don't handle before_command_restore_flag.
9623
9624 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
9625 in direct-output clauses if it wouldn't be called in the ordinary case.
9626
578846a3
KS
96272003-02-04 Kim F. Storm <storm@cua.dk>
9628
9629 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
9630
49853a4d
JD
96312003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9632
9633 * gtkutil.c (remove_from_container): Copying list is not needed.
9634 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
9635 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
9636 on list returned from gtk_container_get_children to avoid memory leak.
9637
8b53dc06
JR
96382003-02-01 Jason Rumney <jasonr@gnu.org>
9639
5d54d177
JR
9640 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
9641 local malloc.
9642 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
9643 definitions in xpm.h.
9644 (init_xpm_functions): New function.
f63fd14e 9645 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
9646 (init_external_image_libraries): Try to load libXpm.dll.
9647
8b53dc06
JR
9648 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
9649 timestamp.
9650
b222e415
DL
96512003-01-31 Dave Love <fx@gnu.org>
9652
9653 * syntax.c (Fskip_chars_forward)
9654 (open-paren-in-column-0-is-defun-start): Doc fix.
9655
c60ee5e7
JB
96562003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
9657
9658 * fileio.c: Support // at start of name for Cygwin (just added proper
9659 preprocessor tests).
9660
9661 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
9662
9663 * Makefile.in: Use @EXEEXT@ for Cygwin.
9664
9665 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
9666
9667 * s/cygwin.h: Added for Cygwin port.
9668
53b37591
JB
96692003-01-31 Juanma Barranquero <lektu@terra.es>
9670
9671 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
9672 when including gif_lib.h.
fe929957 9673 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
9674 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
9675 Windows. Disable color table lookups. Call library functions
53b37591 9676 through pointers determined at runtime.
fe929957
JB
9677 (init_external_image_libraries): Try to load libungif.dll and
9678 libtiff.dll.
53b37591 9679
45415a8f
KH
96802003-01-31 Kenichi Handa <handa@m17n.org>
9681
9682 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 9683 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 9684
a97e4138
JD
96852003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9686
e52bd6b7 9687 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 9688
6eed9bed
DL
96892003-01-30 Dave Love <fx@gnu.org>
9690
9691 * alloc.c (Vgc_elapsed, gcs_done): New variables.
9692 (Fgarbage_collect): Use them.
9693 (init_alloc, syms_of_alloc): Set them up.
9694
100dcd40
JB
96952003-01-30 Juanma Barranquero <lektu@terra.es>
9696
9697 * w32fns.c (init_external_image_libraries): Add missing operator.
9698
fbd852af
JR
96992003-01-29 Jason Rumney <jasonr@gnu.org>
9700
9701 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
9702 an alternative name for jpeg.dll.
9703
8a2d8020
KH
97042003-01-29 Kenichi Handa <handa@m17n.org>
9705
9706 * xdisp.c (set_cursor_from_row): Pay attention to string display
9707 properties.
9708
058c18c7
AC
97092003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
9710
9711 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
9712 <escape>.
9713 (keycode_to_xkeysym_table): Reformat and add more comments.
9714 (XTread_socket): Drop special case for backspace.
9715
385f11cf
AC
97162003-01-28 Andrew Choi <akochoi@shaw.ca>
9717
9718 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
9719 values in old-style RGB specs.
9720
c922a224
JB
97212003-01-27 Juanma Barranquero <lektu@terra.es>
9722
9723 * w32fns.c (init_external_image_libraries): Try alternate names for the
9724 jpeg dll.
9725
0a1d6de0
JD
97262003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9727
9728 * gtkutil.c (create_dialog, xg_separator_p)
9729 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
9730 before calling strcmp or strlen.
9731
a97e4138 97322003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
9733
9734 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
9735 and handle image load failure.
9736
28908312
JR
97372003-01-26 Jason Rumney <jasonr@gnu.org>
9738
9739 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
9740 New functions.
f63fd14e
JB
9741 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
9742 Disable color table lookups. Call jpeg library functions
28908312
JR
9743 through pointers determined at runtime.
9744 (init_external_image_libraries): Try to load jpeg.dll.
9745
84e47416
RS
97462003-01-25 Richard M. Stallman <rms@gnu.org>
9747
9748 * lisp.h: Declare format2 instead of format1.
9749
9750 * fileio.c (barf_or_query_if_file_exists):
9751 Call format2 instead of format1.
9752
9753 * editfns.c (format2): New function, replaces format1
9754 but takes exactly two Lisp Objects as format args.
9755
9756 * buffer.c (Fkill_buffer): Call format2 instead of format1.
9757
a97e4138 97582003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
9759
9760 * xterm.h: Change to return value of x_dispatch_event to int.
9761
9762 * xterm.c (x_filter_event): New function.
9763 (event_handler_gdk, XTread_socket): Call x_filter_event.
9764 (x_dispatch_event): Change to return value of finish.
9765 (event_handler_gdk): Use return value from x_dispatch_event.
9766
9767 * xfns.c (x_window): Call create_frame_xic for GTK version to
9768 initialize input methods.
9769
9770 * gtkutil.h: Add (void) prototypes.
9771
9772 * gtkutil.c (create_menus): Remove code that puts the help menu to
9773 the right.
9774
54eefef1
JR
97752003-01-25 Jason Rumney <jasonr@gnu.org>
9776
9777 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
9778 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
9779 (png_load): Adjust colors for Windows. Use Windows
9780 bitmaps. Disable color table lookups.
c262430d
JR
9781 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
9782 (init_png_functions): New function.
9783 (png_read_from_memory, png_load): Call png library functions
9784 through pointers determined at runtime.
9785 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
9786 (init_external_image_libraries): New function.
9787 (init_xfns): Call it.
54eefef1 9788
1a9e275b
AS
97892003-01-24 Andreas Schwab <schwab@suse.de>
9790
9791 * minibuf.c (Fminibuffer_message): Verify type of parameter.
9792
a97e4138 97932003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
9794
9795 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
9796 of static initializer.
9797
422eec7e
DL
97982003-01-24 Dave Love <fx@gnu.org>
9799
9800 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
9801 architectures.
9802
9803 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
9804 Use __alignof__.
9805
2a026b04
KH
98062003-01-24 Kenichi Handa <handa@m17n.org>
9807
9808 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 9809 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
9810 (command_loop_1): Call adjust_point_for_property with proper
9811 second arg.
9812
a18bb28d
JR
98132003-01-22 Jason Rumney <jasonr@gnu.org>
9814
9815 Sync changes with xterm.c and xfns.c.
9816
9817 * w32term.c (x_draw_glyph_string_foreground)
9818 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9819
9820 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
9821 phys_cursor's hpos is overwritten. This is still not completely
9822 correct, as it doesn't really make sense to use hpos at all to
9823 get the cursor glyph (as that is relative to the width of the
9824 characters on the line, which may have changed during the update).
9825
9826 * w32term.c (notice_overwritten_cursor): Handle the special case
9827 of the cursor being in the first blank non-text line at the
9828 end of a window.
9829
9830 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9831 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9832 Compute from the x position returned by x_draw_glyphs.
9833
9834 (x_display_and_set_cursor): Don't set phys_cursor_width here,
9835 except for NO_CURSOR and system caret, to make phys_cursor_width
9836 contain what its name suggests.
9837 (notice_overwritten_cursor): Consider the cursor image erased if
9838 the output area intersects the cursor image in y-direction.
9839
6a097c0c
SM
9840 * w32term.c (note_mode_line_or_margin_highlight): Rename from
9841 note_mode_line_highlight and extend.
a18bb28d
JR
9842
9843 * w32term.c (last_window): New variable.
9844 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
9845 (note_mouse_movement): Remove reimplemented code in #if 0.
9846
9847 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
9848 not update_mode_lines, and always set it to 1.
9849
ac6e47ef
JR
98502003-01-21 Jason Rumney <jasonr@gnu.org>
9851
9852 * w32fns.c (IDC_HAND): Define it if system headers don't.
9853
98542003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
9855
9856 * w32term.h (struct w32_output): New member hand_cursor.
9857 (WM_EMACS_SETCURSOR): New message definition.
9858
9859 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
9860 function w32_define_cursor.
9861 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
9862 position, change member name output_data.x to output_data.w32 and
9863 add function w32_define_cursor.
9864 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
9865 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
9866 (w32_initialize_display_info):
9867 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
9868
9869 * w32fns.c (Vx_hand_shape): New variable.
9870 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
9871 WM_EMACS_SETCURSOR.
9872 (x-create-frame): Setup Cursor types.
9873
ceb39a17
JB
98742003-01-21 David Ponce <david@dponce.com>
9875
ac6e47ef 9876 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 9877 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 9878 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 9879 2002-09-30.)
ac6e47ef
JR
9880 (w32_draw_relief_rect): Declare all args.
9881 (w32_define_cursor): New.
9882
9883 * w32fns.c (w32_load_cursor): New function.
9884 (w32_init_class): Use it.
9885 (x_put_x_image): Declare all args.
9886
b6189c3b 98872003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
9888
9889 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
9890
a97e4138 98912003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
9892
9893 * gtkutil.c: Must include stdio.h before termhooks.h
9894
83fc9c63
DL
98952003-01-21 Dave Love <fx@gnu.org>
9896
9897 * alloc.c (Fgc_status): Print zombie list.
9898 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
9899 Fix assignment of zombies.
9900 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
9901 Don't take car of non-cons.
9902
9903 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9904
9905 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9906
fe04b8c8
JR
99072003-01-20 David Ponce <david@dponce.com>
9908
9909 * w32menu.c (digest_single_submenu): Declare all args.
9910
9911 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
9912 changes in xmenu.c:
9913
9914 (parse_single_submenu): Use individual keymap's prompt
9915 string as pane name, if there is one.
9916 (set_frame_menubar): Save menu_items_n_panes from each call to
9917 parse_single_submenu and use it when calling digest_single_submenu.
9918
539e69a9
ST
99192003-01-20 Steven Tamm <steventamm@mac.com>
9920
9921 * macterm.c (XTread_socket): Checks for valid, visible window
9922 before sending a scroll-wheel event.
9923
675d000f
RS
99242003-01-20 Richard M. Stallman <rms@gnu.org>
9925
9926 * xdisp.c (redisplay_window): If mini window's buffer is not
9927 a minibuffer, then redisplay it like other windows.
9928
a97e4138 99292003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
9930
9931 * gtkutil.c (xg_create_frame_widgets): Check if there is an
9932 external tool bar before setting tool bar height.
9933
048addec
JD
99342003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9935
9936 * xterm.c (handle_one_xevent): Surround popup_activated
9937 with #ifdef:s for non-toolkit version.
9938
9939 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
9940 (gtkutil.o): New file.
9941 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
9942 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
9943
9944 * gtkutil.c: New file for GTK version.
9945
9946 * gtkutil.h: New file for GTK version.
9947
9948 * xterm.h: Add xt_or_gtk_widget.
9949 Include gtk files for USE_GTK.
9950 (struct x_output): Add toolbar_height.
9951 (struct x_output): Add GTK widgets and Gdk size_hints.
9952 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
9953 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
9954 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
9955
9956 * xterm.c: Include gtkutil.h for USE_GTK.
78819ebb 9957 (free_frame_menubar): Declare extern void for USE_GTK.
048addec
JD
9958 (note_mouse_highlight): Check popup_activated for USE_GTK.
9959 (xt_action_hook): Don't compile if USE_GTK.
9960 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
9961 (xg_scroll_callback): New function.
9962 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
9963 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
9964 for USE_GTK.
9965 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
9966 xg_show_scroll_bar for USE_GTK.
9967 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
9968 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
9969 (event_handler_gdk): New function for USE_GTK.
9970 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
9971 (handle_one_xevent): Make sure widget is mapped before
9972 calling x_real_positions for USE_GTK.
9973 (XTread_socket): Add GTK event loop for USE_GTK.
9974 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
9975 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
9976 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
9977 (x_iconify_frame): Add code for USE_GTK.
9978 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
9979 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
9980 is in gtkutil.c.
9981 (x_term_init): Add initialization for GTK.
9982 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
9983
9984 * xmenu.c: Include gtkutil.h for USE_GTK.
9985 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
9986 (single_menu_item, single_menu_item, Fx_popup_dialog):
9987 Check for USE_GTK.
048addec
JD
9988 (popup_widget_loop): New function for USE_GTK.
9989 (x_activate_menubar): Add code for USE_GTK.
9990 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
9991 (menu_highlight_callback, menubar_selection_callback):
9992 Add USE_GTK versions.
048addec
JD
9993 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
9994 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
9995 (free_frame_menubar): Only compile if not USE_GTK. GTK version
9996 is in gtkutil.c.
9997 (popup_selection_callback): New version for USE_GTK.
9998 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 9999 one USE_X_TOOLKIT version.
048addec
JD
10000 (xmenu_show): Call create_and_show_popup_menu.
10001 (dialog_selection_callback): New version for USE_GTK.
10002 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 10003 one USE_X_TOOLKIT version.
048addec
JD
10004 (xdialog_show): Call create_and_show_dialog.
10005
10006 * xfns.c: Include gtkutil for USE_GTK.
10007 (x_window_to_frame, x_any_window_to_frame)
10008 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
10009 (x_top_window_to_frame): Add code for USE_GTK.
10010 (x_set_background_color): Call xg_set_background_color for GTK.
10011 (x_set_menu_bar_lines): Check for USE_GTK.
10012 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
10013 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
10014 (x_window): Call xg_create_frame_widgets for USE_GTK.
10015 (Fx_create_frame): Check for USE_GTK
10016 (Fx_file_dialog): New implementation for USE_GTK.
10017
10018 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
10019 (update_menu_bar): Add check for USE_GTK.
10020 (update_tool_bar): Add check for USE_GTK and external tool bar.
10021 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
10022 (redisplay_internal): Add check for USE_GTK and popup_activated.
10023 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
10024 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
10025 (display_menu_bar): Add check for USE_GTK
10026
78819ebb 10027 * lisp.h (Vx_resource_name): Declare extern.
048addec 10028
a64387ee 10029 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
10030 for USE_GTK.
10031 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
10032
10033 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
10034 (FRAME_EXTERNAL_TOOL_BAR): New macro.
10035 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
10036
10037 * fileio.c (Fread_file_name): Add check for USE_GTK.
10038
6bdb309a
SM
10039 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
10040 Add check for USE_GTK.
048addec
JD
10041
10042 * config.in: Added HAVE_GTK
10043
10044 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
10045
100462003-01-18 Stefan Monnier <monnier@cs.yale.edu>
10047
10048 * charset.h (Funibyte_char_to_multibyte): Export.
10049
100502003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10051
10052 * xmenu.c (mouse_position_for_popup): New function.
10053 (Fx_popup_menu): Call mouse_position_for_popup for X and
10054 mouse_position_hook for others.
10055
100562003-01-17 Kim F. Storm <storm@cua.dk>
10057
10058 * editfns.c (Finsert): Mention `string-make-multibyte' and
10059 `string-as-multibyte' in doc string.
10060
100612003-01-17 Kenichi Handa <handa@m17n.org>
10062
10063 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 10064
048addec
JD
10065 * editfns.c (Fformat): Convert an unibyte char argument that is
10066 formatted by "%c" to multibyte if the total result must be a
10067 multibyte string.
cd7df9c0 10068
048addec 100692003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 10070
048addec
JD
10071 * process.c (set-process-filter): Document unibyte/multibyte-ness
10072 of string argument.
56210ecd 10073
048addec 100742003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 10075
048addec 10076 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 10077
048addec
JD
10078 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
10079 (re_search_2): Likewise.
6df8b9fe 10080
048addec 100812003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 10082
048addec
JD
10083 * xdisp.c (message_dolog): Fix bug of the case that *Message*
10084 buffer is unibyte.
292ddc31 10085
048addec 100862003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 10087
048addec 10088 * fns.c (Fsubstring): Clarify doc string.
292ddc31 10089
048addec
JD
10090 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
10091 (Fprevious_char_property_change)
10092 (Fnext_single_char_property_change)
10093 (Fprevious_single_char_property_change, Fnext_property_change)
10094 (Fnext_single_property_change, Fprevious_property_change)
10095 (Fprevious_single_property_change, Fadd_text_properties)
10096 (Fput_text_property, Fset_text_properties)
10097 (Fremove_text_properties, Fremove_list_of_text_properties)
10098 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 10099
048addec 101002003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 10101
048addec
JD
10102 * process.h (struct Lisp_Process): New member plist replaces old
10103 member private_vars. All uses changed.
63e4e4c6 10104
048addec 10105 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 10106 (QCplist): Rename from QCvars. Change all uses.
048addec 10107 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 10108 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 10109 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 10110 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 10111
048addec 101122003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 10113
6bdb309a 10114 * m/delta.h: Remove (obsolete).
e833850f 10115
048addec 101162003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 10117
048addec
JD
10118 * fileio.c (Fdelete_directory, Fdelete_file): Document the
10119 behaviour in front of symlinks.
10120 (Fdelete_file): Raise an error on directories.
817cb127 10121
048addec 101222003-01-13 Dave Love <fx@gnu.org>
817cb127 10123
048addec 10124 * fns.c (Freverse): Use QUIT.
3e8cf2ea 10125
048addec 101262003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 10127
048addec
JD
10128 * minibuf.c (minibuffer_completion_contents):
10129 Error if point is inside prompt.
3e8cf2ea 10130
048addec
JD
10131 * keyboard.c (command_loop_1): Don't redisplay directly
10132 if there's a post-command-hook.
3e8cf2ea 10133
048addec
JD
10134 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
10135 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 10136
048addec 101372003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 10138
048addec 10139 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 10140
048addec
JD
10141 * process.c (QCvars): New variable.
10142 (syms_of_process): Intern and staticpro it.
10143 (Fset_process_contact): Removed function.
10144 (Fprocess_variable, Fset_process_variable): New functions.
10145 (syms_of_process): Defsubr them.
10146 (Fstart_process): Initialize private_vars plist to nil.
10147 (Fmake_network_process): New arg :vars to setup the private
10148 variables for new network process.
10149 (server_accept_connection): Copy server's private variables to
10150 client process.
2c10f029 10151
048addec
JD
10152 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
10153 crashes). Code rewritten and simplified. Now directly aligns the
10154 pointer and recalculates pure_bytes_used, rather than aligning the
10155 size and adjusting the pointer.
b8a76c6c 10156
048addec 101572003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 10158
048addec
JD
10159 * process.c (Fset_process_contact): New function.
10160 (syms_of_process): defsubr it.
10161 (make-network-process): Update doc.
3a8d0899 10162
048addec 101632003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 10164
048addec
JD
10165 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
10166 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 10167
048addec 101682003-01-10 Dave Love <fx@gnu.org>
4abc7470 10169
048addec 10170 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 10171
048addec 101722003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 10173
048addec
JD
10174 * process.c (Fmake_network_process): Convert new port number
10175 to host byte order for `:service t' case. From Mario Lang.
bf338245 10176
048addec 101772003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 10178
048addec
JD
10179 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
10180 instead of XtAppProcessEvent.
bf338245 10181
048addec
JD
10182 * xterm.c (handle_one_xevent): New function.
10183 (x_dispatch_event): New function.
10184 (XTread_socket): Call handle_one_xevent.
bf338245 10185
048addec 10186 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 10187
048addec
JD
10188 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
10189 call XQueryPointer to get coordinates.
10190 (popup_get_selection): Do not set popup_activated_flag to zero,
10191 let popup_deactivate_callback do that. Needed for Motif.
10192 Call x_dispatch_event instead of XtDispatchEvent.
10193 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 10194
048addec 101952003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 10196
6bdb309a 10197 * process.c (server_accept_connection): Fix recording of new
048addec
JD
10198 connection's local address in :local property of contact info.
10199 (Fmake_network_process): Record local network address for new
10200 client processes in :local property of contact info.
6bdb309a 10201 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 10202
048addec 102032003-01-07 Dave Love <fx@gnu.org>
00e3ab56 10204
048addec 10205 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 10206
048addec 102072003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 10208
048addec 10209 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 10210
048addec
JD
10211 * eval.c (Fuser_variable_p): Doc change. For custom variables,
10212 use the same test as for custom-variable-p.
8c6d74c6 10213
048addec 102142003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 10215
048addec
JD
10216 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
10217 Count LAST_LINE_MISFIT in scroll margin for end of window.
10218 Move label too_near_end before setting SCROLL_MARGIN_POS.
10219 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 10220
048addec
JD
10221 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
10222 scroll_conservatively case. If scrolling that much doesn't change
10223 STARTP, move it down one line.
e833850f 10224
048addec
JD
10225 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
10226 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 10227
048addec
JD
10228 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
10229 selected frame.
8c6d74c6 10230
048addec
JD
10231 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
10232 (syms_of_keymap): staticpro them.
10233 (Fapropos_internal): Initialize them and clear them out.
10234 Don't GCPRO them.
8c6d74c6 10235
048addec
JD
10236 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
10237 Doc fixes.
8c6d74c6 10238
048addec
JD
10239 * lisp.h: New misc type Lisp_Save_Value.
10240 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
10241 (XSAVE_VALUE): New macro.
10242 (struct Lisp_Save_Value): New data type.
10243 (union Lisp_Misc): Add u_save_value alternative.
78819ebb 10244 (make_save_value): Declare.
8c6d74c6 10245
048addec 10246 * alloc.c (make_save_value): New function.
8c6d74c6 10247
048addec
JD
10248 * xterm.c (x_catch_errors): Save dpy using make_save_value.
10249 (x_catch_errors_unwind): Call XSync.
8c6d74c6 10250
048addec 102512003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 10252
048addec 10253 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 10254
048addec
JD
10255 * keyboard.c (command_loop_1): Call adjust_point_for_property
10256 in direct action cases for Qforward_char and Qbackward_char.
10257 Set already_adjusted so it won't be done twice.
8c6d74c6 10258
b6189c3b 102592002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 10260
048addec
JD
10261 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
10262 type definition of size_t.
8c609cff 10263
048addec 102642003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 10265
048addec
JD
10266 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
10267 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 10268
048addec 102692002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 10270
048addec
JD
10271 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
10272 to default to t.
fa634a5e 10273
048addec 102742002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 10275
048addec 10276 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 10277
048addec 102782002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 10279
048addec
JD
10280 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
10281 allow building in a different directory than source. Uses some
10282 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 10283
048addec 102842002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 10285
048addec
JD
10286 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
10287 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
10288 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
10289 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 10290
048addec 102912002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 10292
048addec
JD
10293 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
10294 <scroll-down-aggressively>: Doc fix.
2155ecf3 10295
048addec
JD
10296 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
10297 string as pane name, if there is one.
10298 (set_frame_menubar): Save menu_items_n_panes from each call to
10299 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 10300
048addec
JD
10301 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
10302 Don't try to make last line fully visible if it is past end of window.
61f1d295 10303
048addec 103042002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 10305
048addec
JD
10306 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
10307 (mac_menu_show): Add support for hierarchical popup menus.
10308 (add_menu_item): Remove indentation support.
10309 (fill_submenu, fill_menu): Create hierarchical menus
10310 instead of using indentation.
0b17a217 10311
048addec 103122002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 10313
048addec
JD
10314 * xdisp.c (try_cursor_movement): Don't call try_window here.
10315 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 10316
048addec 10317 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 10318
048addec 103192002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 10320
048addec
JD
10321 * macterm.c (XTread_socket): Call KeyTranslate for control and
10322 meta to deal correctly shifted non-alpha characters, like C-S-5
10323 being treated like C-%. Does not look for shift key to deal
10324 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 10325
048addec 103262002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 10327
048addec
JD
10328 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
10329 If it is non-nil, run timers. Use an unwind-protect to requeue
10330 the events that were read ahead.
10331 (popup_get_selection_unwind): New subroutine.
10332 (popup_get_selection_queue): File-scope variable now holds that queue.
10333 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
10334 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
10335 Use an unwind-protect to pop down the dialog box.
10336 (xdialog_show_unwind): New subroutine implements that.
f02cac82 10337
048addec
JD
10338 * xdisp.c (row_containing_pos): Change exit test using last_y.
10339 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 10340
048addec
JD
10341 * lread.c (load_error_handler): New function.
10342 (Fload): Handle errors in Fsubstitute_in_file_name.
10343 Don't expect Fsignal to return.
f02cac82 10344
048addec
JD
10345 * eval.c: Errors and throws work right with interrupt blocking.
10346 (struct catchtag): New elt interrupt_input_blocked.
10347 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
10348 (internal_catch, Fcondition_case, internal_condition_case)
10349 (internal_condition_case_1, internal_condition_case_2): Save it.
10350 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 10351
048addec 10352 * editfns.c (Fformat): Add parens.
f02cac82 10353
048addec
JD
10354 * dired.c (file_name_completion): Fix that change.
10355 Delete special quit-handling code; just use QUIT.
f02cac82 10356
b6189c3b 103572002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 10358
048addec
JD
10359 * dired.c (file_name_completion): Close directory on error
10360 just as in directory_files_internal.
1a590729 10361
048addec 103622002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 10363
048addec
JD
10364 * window.c (Fset_window_configuration): Set old_point to correct
10365 value when new_current_buffer == current_buffer.
f02cac82 10366
048addec 103672002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 10368
048addec
JD
10369 Revisited my earlier fix for the following entry in etc/PROBLEMS:
10370 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
10371 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 10372
048addec
JD
10373 These changes were in part based upon suggestions made by Peter
10374 'Luna' Runestig [peter@runestig.com].
9785d95b 10375
048addec
JD
10376 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
10377 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 10378 g_b_init_get_sid_identifier_authority ): Add several static
048addec 10379 global variables.
9785d95b 10380
048addec
JD
10381 * w32.c (globals_of_w32): New function. Used to initialize those
10382 global variables that must always be initialized on startup even
10383 when the global variable initialized is non zero. Its primary
10384 purpose at this time is to set the global variables
10385 g_b_init_is_windows_9x, g_b_init_open_process_token,
10386 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
10387 g_b_init_get_sid_identifier_authority to 0 on startup.
10388 Called from main.
9785d95b 10389
048addec
JD
10390 * w32.c (is_windows_9x): Perform initialization only if
10391 g_b_init_is_windows_9x is equal to 0. On initialization set
10392 g_b_init_is_windows_9x equal to 1.
2308af15 10393
048addec
JD
10394 * w32.c (open_process_token): Perform initialization only if
10395 g_b_init_open_process_token is equal to 0. On initialization set
10396 g_b_init_open_process_token equal to 1.
2308af15 10397
048addec
JD
10398 * w32.c (get_token_information): Perform initialization only if
10399 g_b_init_get_token_information is equal to 0. On initialization
10400 set g_b_init_get_token_information equal to 1.
9785d95b 10401
048addec
JD
10402 * w32.c (lookup_account_sid): Perform initialization only if
10403 g_b_init_lookup_account_sid is equal to 0. On initialization
10404 set g_b_init_lookup_account_sid equal to 1.
9785d95b 10405
048addec
JD
10406 * w32.c (get_sid_identifier_authority): Perform initialization
10407 only if g_b_init_get_sid_identifier_authority is equal to 0.
10408 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 10409
f63fd14e 10410 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
10411 those global variables that must always be initialized on startup
10412 even when the global variable initialized is non zero.
10413 Its primary purpose at this time is to initialize the global variable
10414 track_mouse_event_fn.
9785d95b 10415
a64387ee 10416 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 10417 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 10418
048addec 10419 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 10420
f63fd14e 10421 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
10422 initialize those global variables that must always be initialized
10423 on startup even when the global variable initialized is non zero.
10424 Its primary purpose at this time is to initialize the global
10425 variables get_menu_item_info and set_menu_item_info.
9785d95b 10426
048addec
JD
10427 * w32menu.c (initialize_frame_menubar): Remove initialization of
10428 get_menu_item_info and set_menu_item_info.
9785d95b 10429
048addec 10430 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 10431
048addec
JD
10432 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
10433 Declare them.
9785d95b 10434
048addec
JD
10435 * emacs.c (main): Call globals_of_w32 prior to calling
10436 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
10437 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
10438 is defined.
9785d95b 10439
048addec
JD
10440 * w32term.c (x_update_window_begin): Fix Windows API error
10441 detected by BoundsChecker. Test to determine if
10442 w32_system_caret_hwnd is NULL prior to attempting to use
10443 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 10444
048addec
JD
10445 * w32term.c (x_update_window_end): Fix Windows API error
10446 detected by BoundsChecker. Test to determine if
10447 w32_system_caret_hwnd is NULL prior to attempting to use
10448 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 10449
048addec 104502002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 10451
048addec
JD
10452 * coding.c (coding_system_require_warning): New variable.
10453 (syms_of_coding): DEFVAR it.
b6da19ef 10454
048addec 10455 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 10456
048addec
JD
10457 * fileio.c (choose_write_coding_system): Even if
10458 Vcoding_system_for_write is non-nil, if
10459 coding_system_require_warning is nonzero, call
10460 Vselect_safe_coding_system_function.
bfcf6dbe 10461
048addec 104622002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 10463
048addec
JD
10464 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
10465 (lisp): Add font-core.
2c568af5 10466
048addec 104672002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 10468
048addec
JD
10469 * textprop.c (text_read_only): New arg `propval'.
10470 (get_char_property_and_overlay): Remove unused var `next_overlay'.
10471 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 10472
048addec 104732002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 10474
048addec 10475 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 10476
048addec 104772002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 10478
048addec
JD
10479 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
10480 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
10481 Be more careful about when help_events are generated.
96720f09 10482
048addec 104832002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 10484
048addec
JD
10485 * macterm.c (mac_check_for_quit_char): Correctly set the
10486 modifiers of the event to 0.
10487 * mac.c (sys_select): Duplicate rfds before calling select to
10488 ensure that rfds survive the while loop.
e5ae1c49 10489
048addec 104902002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 10491
048addec
JD
10492 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
10493 row_containing_pos returned NULL.
2eb46b2d 10494
048addec 104952002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 10496
6bdb309a 10497 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 10498 non-blocking.
6bdb309a 10499 (sys_select): Fix sys_select to not use a timeout larger than
048addec 10500 the one given.
b11f1d8a 10501
048addec 105022002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 10503
048addec 10504 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 10505
048addec 105062002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 10507
048addec
JD
10508 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
10509 as the last thing.
a4ac5b17 10510
048addec 105112002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 10512
048addec 10513 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 10514
048addec 105152002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 10516
048addec
JD
10517 * editfns.c (Fformat): Handle precision in string conversion
10518 specifiers like libc functions do (ie, print at most that many
10519 characters).
85cce843 10520
048addec 105212002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 10522
048addec
JD
10523 * xdisp.c (row_containing_pos): Check more carefully
10524 whether charpos is really in the row before returning it.
0d4d26a7 10525
048addec 105262002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 10527
048addec 10528 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 10529
048addec
JD
10530 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
10531 each stack frame. This may change as it could be time consuming.
0d4d26a7 10532
048addec
JD
10533 * macterm.c (mac_check_for_quit_char, quit_char_comp)
10534 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 10535 (mac_initialize): Add code to check for pressing of quit_char
048addec 10536 in the OS event queue.
b11f1d8a 10537
048addec
JD
10538 * mac.c (sys_select): Call mac_check_for_quit_char every second
10539 while blocking on select.
0d4d26a7 10540
048addec
JD
10541 * mac.c (sys_read): Use sys_select to test for input first
10542 before calling read, to allow C-g to break.
9252f7bc 10543
048addec 105442002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 10545
048addec 10546 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 10547
048addec 10548 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 10549
048addec 10550 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 10551
048addec
JD
10552 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
10553 autoload.
9252f7bc 10554
048addec 10555 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 10556
048addec 10557 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 10558
048addec 105592002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 10560
048addec 10561 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 10562
048addec 105632002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 10564
048addec 10565 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 10566
048addec 10567 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 10568
048addec 10569 * alloca.c: Don't use #error.
02d588e2 10570
048addec 105712002-12-03 Dave Love <fx@gnu.org>
02d588e2 10572
048addec
JD
10573 * buffer.c (Qucs_set_table_for_input): New.
10574 (Fget_buffer_create): Use it.
10575 (Qset_buffer_major_mode_hook): Deleted.
10576 (Fset_buffer_major_mode): Revert previous change.
10577 (init_buffer_once): Intern ucs-set-table-for-input.
10578 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
10579 Add &Qucs_set_table_for_input.
451e2697 10580
048addec 105812002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 10582
048addec
JD
10583 * callint.c (Fcall_interactively): Use next_event only if less
10584 than key_count.
72742a99 10585
048addec 105862002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 10587
048addec
JD
10588 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
10589 names to 255 characters.
72742a99 10590
048addec
JD
10591 * macterm.c (XTread_socket): If all frames have been collapsed,
10592 expand the first one before handling drag-and-drop events.
72742a99 10593
048addec
JD
10594 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
10595 which is detected by autoconf.
40e6ff95 10596
048addec 105972002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 10598
048addec
JD
10599 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
10600 offset in two hints table to allow prebinding to be redone and
10601 allow the executable to be stripped.
c02138c6 10602
048addec 106032002-11-29 Dave Love <fx@gnu.org>
c02138c6 10604
048addec
JD
10605 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
10606 already provided.
0e47bbf7 10607
048addec 106082002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 10609
048addec
JD
10610 * xdisp.c (start_display): Check more intelligently for
10611 whether the line is continued.
10612 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 10613
048addec 106142002-11-28 Dave Love <fx@gnu.org>
44129dcb 10615
048addec
JD
10616 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
10617 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 10618
048addec 106192002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 10620
048addec
JD
10621 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
10622 more descriptive error output from lread.c:Fload upon most require
10623 cycles during boostrapping.
1637fd2c 10624
048addec 106252002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 10626
048addec
JD
10627 * fileio.c (Finsert_file_contents): Give a more appropriate error
10628 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 10629
048addec
JD
10630 * dired.c (Ffile_attributes): Don't return negative file sizes for
10631 files bigger than 2Gb when off_t is 32 bit.
540c2788 10632
048addec 106332002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 10634
048addec 10635 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 10636
048addec
JD
10637 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
10638 Test GETPGRP_VOID instead.
10639 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 10640
048addec
JD
10641 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
10642 Don't define.
10643 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 10644
048addec 10645 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 10646
048addec 106472002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 10648
048addec
JD
10649 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
10650 supported.
4042a81a 10651
048addec 106522002-11-25 Dave Love <fx@gnu.org>
4042a81a 10653
048addec 10654 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 10655
048addec 10656 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 10657
048addec 106582002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 10659
048addec 10660 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 10661
048addec 106622002-11-24 Steven Tamm <steventamm@mac.com>
82122254 10663
048addec
JD
10664 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
10665 determine the size of pointers alloced in unexed space instead
10666 of using possibly invalid emacs_zone pointers. This fixes the
10667 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 10668
048addec 106692002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 10670
048addec 10671 * search.c (Fstring_match): Doc fix.
c1ee53bc 10672
048addec
JD
10673 * callint.c (Fcall_interactively): If a command fails because
10674 `*' detects a read-only buffer, but RECORD_FLAG is set,
10675 record it anyway if the args don't actually do tty input.
5598c32e 10676
048addec 106772002-11-22 Dave Love <fx@gnu.org>
5598c32e 10678
048addec 10679 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 10680
048addec
JD
10681 * keyboard.c (interrupt_signal): Provide forward declaration.
10682 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 10683
048addec 10684 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 10685
048addec 106862002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 10687
048addec
JD
10688 * eval.c (interactive_p): Skip any number of bytecode
10689 and special form frames, in any order.
516eea8e 10690
048addec 106912002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 10692
048addec
JD
10693 * w32fns.c (convert_mono_to_color_image): New function.
10694 (xbm_load, xbm_load_image): Use it when foreground or background
10695 is explicitly set.
04dbfa08 10696
048addec 106972002-11-19 Dave Love <fx@gnu.org>
04dbfa08 10698
048addec 10699 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 10700
048addec 107012002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 10702
048addec
JD
10703 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
10704 (XPutPixel): Swap blue and red.
10705 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
10706 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
10707 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
10708 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 10709
048addec 107102002-11-18 Dave Love <fx@gnu.org>
d824beee 10711
048addec 10712 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 10713
048addec 10714 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 10715
048addec 10716 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 10717
048addec
JD
10718 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
10719 malloc, realloc, calloc.
d824beee 10720
048addec
JD
10721 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
10722 (bcmp): Don't define.
d824beee 10723
048addec 10724 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 10725
048addec 10726 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 10727
048addec 10728 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 10729
048addec 10730 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 10731
048addec
JD
10732 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
10733 Don't include alloca.h.
d824beee 10734
048addec 10735 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 10736
048addec 10737 * regex.c (_GNU_SOURCE): Don't define.
1998560a 10738
048addec 10739 * process.c (_GNU_SOURCE): Don't define.
1998560a 10740
048addec 10741 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 10742
048addec 107432002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 10744
048addec 10745 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 10746
048addec 107472002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 10748
048addec
JD
10749 * dispextern.h (struct face): Add `overstrike' field.
10750 * xterm.c (x_draw_glyph_string_foreground)
10751 (x_draw_composite_glyph_string_foreground): Implement overstriking.
10752 * xfaces.c (load_face_font): Set `face->overstrike' based on
10753 result from choose_face_font.
10754 (best_matching_font, choose_face_font): Add `needs_overstrike'
10755 argument, and use it to return whether overstriking is desirable
10756 for this face/font combo.
10757 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 10758
048addec 107592002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 10760
048addec
JD
10761 This change is my fix for the following entry in etc/PROBLEMS:
10762 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
10763 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 10764
048addec
JD
10765 * w32.c: Added wrapper functions around the win32 API functions
10766 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
10767 GetSidIdentifierAuthority. These wrapper functions serve two
10768 purposes:
10769 1. They ensure that the wrapped function can never be called
10770 when Emacs is running on an operating system on which they are
10771 not supported (Microsoft Windows 95 / 98 / ME).
10772 2. They call the wrapped functions via function pointers rather
10773 than calling them directly. This avoids taking advantage of the
10774 undocumented fact that although these functions are not supported
10775 in the 9x branch of Microsoft Windows, the functions do exist in
10776 the version of advapi32.dll that is found in the 9x branch of
10777 Microsoft Windows.
f60ae425 10778
6bdb309a 10779 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
10780 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
10781 and GetSidIdentifierAuthority with calls to the newly added
10782 wrapper functions.
f60ae425 10783
048addec
JD
10784 * w32.h: Added extern declarations for the following functions:
10785 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
10786 syms_of_w32menu, and void syms_of_fontset.
f60ae425 10787
6bdb309a 10788 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
10789 function pointer track_mouse_event_fn in the handler for the
10790 WM_SETFOCUS message.
3582b6a3 10791
6bdb309a 10792 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
10793 reinitialize the function pointers set_menu_item_info and
10794 get_menu_item_info.
f60ae425 10795
048addec 107962002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 10797
048addec
JD
10798 * sound.c: Added a partial implementation of play-sound-internal
10799 for Microsoft Windows. Added various #ifdef / #else / #endif
10800 code blocks to separate the code that will compile under
10801 Microsoft Windows from the code that is specific to Gnu/Linux.
10802 Moved several blocks of code around to make this separation of code
10803 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 10804
048addec 10805 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 10806
048addec
JD
10807 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
10808 added support for play-sound-internal under Windows would be
10809 included in the build of Emacs.
517f42a0 10810
048addec 108112002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 10812
048addec 10813 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 10814
048addec 10815 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 10816
048addec 108172002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 10818
048addec
JD
10819 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
10820 (adjust_point_for_property): Move out of display and invisible even if
10821 we were already inside before (in case a property was added while
10822 we weren't looking). Be more careful when handling invisible props.
10823 Skip invisible text as if it really wasn't there at all.
aab83f91 10824
048addec 108252002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 10826
048addec
JD
10827 * w32term.c (x_draw_image_foreground)
10828 (w32_draw_image_foreground_1): Use standard copy and invert
10829 operations to draw images.
aab83f91 10830
048addec
JD
10831 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
10832 depth of 1.
10833 (xbm_read_bitmap_data): Invert bits as xbm is read in.
10834 (XPutPixel): Don't invert bits here.
a4478a76 10835
048addec 108362002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 10837
048addec
JD
10838 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
10839 (w32_draw_image_foreground_1): Handle image masks.
10840 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 10841
048addec
JD
10842 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
10843 (x_from_xcolors): Adjust RGB values for W32.
10844 (image_background, image_background_transparent)
10845 (postprocess_image, x_to_xcolors, x_disable_image)
10846 (x_build_heuristic_mask): Adapt for W32 and enable.
10847 (x_create_x_image_and_pixmap): Mark images with palettes as such.
10848 (xbm_load): Remove unused variable.
03670a65 10849
048addec 108502002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 10851
048addec 10852 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 10853
048addec 108542002-11-14 Dave Love <fx@gnu.org>
59daa29a 10855
048addec 10856 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 10857
048addec
JD
10858 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
10859 * xmenu.c (unuse_menu_items, digest_single_submenu):
10860 * xfns.c (x_put_x_image):
10861 * xdisp.c (message2_nolog, set_message):
10862 * undo.c (record_point):
10863 * terminfo.c (tparam):
10864 * syntax.c (scan_sexps_forward):
10865 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
10866 * composite.c (update_compositions):
10867 * cm.c (calccost, cmgoto):
10868 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 10869
048addec 10870 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 10871
048addec
JD
10872 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
10873 Don't declare.
59daa29a 10874
048addec 10875 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 10876
048addec
JD
10877 * fns.c (Fcopy_sequence): Doc fix.
10878 (Fmap_char_table): Cast `call2'.
3947677c 10879
048addec
JD
108802002-11-14 Francesco Potorti` <pot@gnu.org>
10881
10882 * s/sol2-8.h: New file.
10883
108842002-11-14 Kim F. Storm <storm@cua.dk>
10885
10886 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
10887 dependency on `risky-local-variable' and the :propertize form.
10888
108892002-11-12 Stefan Monnier <monnier@cs.yale.edu>
10890
10891 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
10892
10893 * syntax.c (scan_sexps_forward): Undo last patch.
10894 Use a more obvious fix: check eob before updating the syntax table.
10895
108962002-11-09 Stefan Monnier <monnier@cs.yale.edu>
10897
10898 * syntax.c (scan_sexps_forward): Update syntax table before reading
10899 a char rather than after so we don't update the table past eob.
10900
109012002-11-09 Dave Love <fx@gnu.org>
10902
10903 * buffer.c (Fset_buffer_major_mode): Fix last change.
10904
10905 * regex.c (regexec): Fix pmatch declaration.
10906
10907 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
10908
10909 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
10910 to self-inserting characters.
10911 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
10912
10913 * coding.c (Vtranslation_table_for_input): New.
10914 (syms_of_coding): DEFVAR it.
10915
109162002-11-08 Juanma Barranquero <lektu@terra.es>
10917
10918 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
10919 window.
10920
109212002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10922
6bdb309a 10923 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
10924 cp, and i.
10925
109262002-11-06 Dave Love <fx@gnu.org>
10927
10928 * buffer.c (Qset_buffer_major_mode_hook): New.
10929 (Fset_buffer_major_mode): Use it.
10930
109312002-11-06 Richard M. Stallman <rms@gnu.org>
10932
10933 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
10934 and stop_polling.
10935
10936 * process.c (wait_reading_process_input):
10937 Test POLLING_PROBLEM_IN_SELECT, not hpux.
10938 Avoid initialization for auto Lisp_Object var.
10939
10940 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
10941
10942 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
10943
109442002-11-05 Richard M. Stallman <rms@gnu.org>
10945
10946 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
10947
10948 * callint.c (Fcall_interactively): New local filter_specs.
10949 (Fcall_interactively): Check for progn as well as let.
10950 Add a gcpro.
10951 (Qprogn): New variable.
10952 (syms_of_callint): Staticpro and init Qprogn.
10953
109542002-11-04 John Paul Wallington <jpw@shootybangbang.com>
10955
10956 * lread.c (Feval_buffer): Doc fix.
10957
109582002-11-04 Dave Love <fx@gnu.org>
10959
10960 * keyboard.c (read_char): Always translate iff
10961 Vkeyboard_translate_table is a char table and c is valid.
10962
10963 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
10964 and fix C types.
10965
109662002-11-03 Stefan Monnier <monnier@cs.yale.edu>
10967
10968 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
10969
10970 * editfns.c (get_pos_property): Don't hardcode Qfield.
10971
10972 * keyboard.c (adjust_point_for_property): Handle `display' prop on
10973 overlays. Also handle `invisible' prop.
10974
109752002-11-02 Stefan Monnier <monnier@cs.yale.edu>
10976
10977 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
10978 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
10979
109802002-11-01 Andreas Schwab <schwab@suse.de>
10981
10982 * editfns.c (Fmessage): Revert last change to properly handle %%.
10983
109842002-11-01 Stefan Monnier <monnier@cs.yale.edu>
10985
10986 * xmenu.c (unuse_menu_items): New fun.
10987 (menu_items_inuse): New var.
10988 (syms_of_xmenu): Initialize it.
10989 (init_menu_items): Use it to detect re-entrance.
10990 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
10991 (Fx_popup_menu): Remove spurious XSETFRAME.
10992
10993 * editfns.c (find_field): Make an exception for nil fields.
10994
109952002-11-01 Dave Love <fx@gnu.org>
10996
10997 * m/gec63.h: Deleted.
10998
109992002-10-31 Dave Love <fx@gnu.org>
11000
11001 * xterm.c (XTread_socket): Fix last change.
11002 (xaw_scroll_callback): Cast call_data to long to avoid warning.
11003
110042002-10-31 Stefan Monnier <monnier@cs.yale.edu>
11005
11006 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
11007
110082002-10-30 Stefan Monnier <monnier@cs.yale.edu>
11009
11010 * editfns.c (overlays_around, get_pos_property): New funs.
11011 (find_field): Use them.
11012 Also be careful not to modify POS before its last use.
11013 (Fmessage): Don't Fformat if there's nothing to format.
11014
110152002-10-30 Dave Love <fx@gnu.org>
11016
11017 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
11018 [HAVE_PTY_H]; Include pty.h.
11019
11020 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
11021
11022 * xterm.c (Qeql): Declare.
11023 (Vx_keysym_table): New.
11024 (syms_of_xterm): Initialize it.
11025 (XTread_socket): Use it. Deal with ASCII keysyms.
11026 (XSetIMValues) [HAVE_X11R6]: Prototype.
11027
11028 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
11029 (lispy_kana_keys): Comment out.
11030 (make_lispy_event) [XK_kana_A]: Comment out.
11031 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
11032 Fix sprintf call.
11033
11034 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
11035 regexp.h change).
11036 (TERMINFO, LIBS_TERMCAP): Define.
11037
11038 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
11039 (bcmp): Define conditional on HAVE_BCMP.
11040 (NO_SIOCTL_H): Don't define.
11041 (TIOCSIGSEND): Don't make conditional on IRIX6.
11042
11043 * s/sol2-5.h: Don't include strings.h.
11044 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
11045
11046 * s/irix6-0.h (IRIX6): Don't define.
11047 (bcopy, bcmp, bzero): Don't undef.
11048
11049 * s/irix6-5.h: Don't include strings.h.
11050 (IRIX6): Don't define.
11051 (bcopy, bcmp, bzero): Don't undef.
11052
11053 * syntax.c (Fforward_comment): Doc fix.
11054
110552002-10-29 Kim F. Storm <storm@cua.dk>
11056
11057 * process.c (Fsignal_process): Allow PROCESS to be specified by
11058 name in addition to pid (as integer or string).
11059
110602002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
11061
11062 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
11063 environments.
11064
110652002-10-27 Kim F. Storm <storm@cua.dk>
11066
11067 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
11068
11069 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
11070
11071 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
11072
11073 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
11074
110752002-10-26 Richard M. Stallman <rms@gnu.org>
11076
11077 * editfns.c (Fformat): Detect invalid format letters for floats.
11078
110792002-10-25 Kenichi Handa <handa@m17n.org>
11080
11081 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
11082 (x_set_title): Likewise.
11083
110842002-10-25 Juanma Barranquero <lektu@terra.es>
11085
11086 * macgui.h:
11087 * w32gui.h: Remove definition of XColor.
11088
11089 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
11090
110912002-10-24 Kim F. Storm <storm@cua.dk>
11092
11093 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
11094 Callers changed (supply dummy arg).
11095
11096 * lisp.h (get_window_cursor_type): Update prototype.
11097
11098 * w32term.c (x_display_and_set_cursor): Get active_cursor from
11099 get_window_cursor_type to track system caret.
11100
111012002-10-24 Kim F. Storm <storm@cua.dk>
11102
11103 * process.c (Fformat_network_address): New function.
11104 (syms_of_process): Defsubr it.
11105 (list_processes_1): Use it to format :local/:remote address if
f9711de4 11106 service/host is not set; before Emacs would crash in that case.
048addec
JD
11107 (Fmake_network_process): Don't use Ffind_operation_coding_system
11108 to setup coding system if host or service is not set.
11109
111102002-10-23 Juanma Barranquero <lektu@terra.es>
11111
11112 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
11113
11114 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
11115 COLORREF.
11116
11117 * macgui.h:
11118 * w32gui.h: Add definition of XColor.
11119
11120 * macfns.c:
11121 * w32fns.c:
11122 * xfaces.c: Remove definition of XColor.
11123
111242002-10-22 Stefan Monnier <monnier@cs.yale.edu>
11125
11126 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
11127
11128 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
11129 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
11130 window if it is dedicated.
11131 (Fshrink_window): Add preserve_before as was done for enlarge_window.
11132 (Vspecial_display_function): Update docstring.
11133
11134 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
11135 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
11136 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
11137
111382002-10-21 Stefan Monnier <monnier@cs.yale.edu>
11139
11140 * casefiddle.c (casify_region): Don't treat a prefix char as part
11141 of a word when at the beginning.
11142
111432002-10-17 Juanma Barranquero <lektu@terra.es>
11144
11145 * lread.c (syms_of_lread): Fix typos.
11146
111472002-10-17 Dave Love <fx@gnu.org>
11148
11149 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
11150
111512002-10-16 Richard M. Stallman <rms@gnu.org>
11152
11153 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
11154
111552002-10-14 Juanma Barranquero <lektu@terra.es>
11156
11157 * w16select.c (syms_of_win16select): Fix docstring for
11158 `selection-coding-system'.
11159
11160 * w32select.c (syms_of_w32select): Likewise.
11161
111622002-10-14 Stefan Monnier <monnier@cs.yale.edu>
11163
11164 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
11165 a backslash-quoted char.
11166 (scan_lists, scan_sexps_forward): Pacify the compiler.
11167
111682002-10-13 Richard M. Stallman <rms@gnu.org>
11169
11170 * window.c (window_scroll): Set immediate_quit.
11171
11172 * print.c (print): When backquote form is the car of a list,
11173 output in old style. Use old_backquote_output to output all
11174 comma forms inside it in old style too.
11175
11176 * buffer.h (struct buffer): Move `undo_list' down below `name'.
11177
111782002-10-11 Markus Rost <rost@math.ohio-state.edu>
11179
11180 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
11181 batch mode).
11182
11183 * lread.c (Fload): Doc fix (load-suffixes).
11184
111852002-10-10 Steven Tamm <steventamm@mac.com>
11186
11187 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
11188 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
11189 Also switch the default to Qnil from Qt.
11190
111912002-10-08 Kenichi Handa <handa@m17n.org>
11192
11193 * coding.c (code_convert_region): When we need more GAP for
11194 conversion, pay attention to the case that coding->produced is not
11195 greater than coding->consumed.
11196
111972002-10-07 Richard M. Stallman <rms@gnu.org>
11198
11199 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
11200
112012002-10-06 Andrew Choi <akochoi@shaw.ca>
11202
11203 * macmenu.c (mac_menu_show): Add j to count menu items; match
11204 menu_item_selection to it to find selected item.
11205
112062002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11207
11208 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
11209 cases. The correct fix is to pass ReparentNotify to Xt.
11210 The shell widget interprets ConfigureNotify differently depending
11211 on if it has been reparented or not.
11212
112132002-10-05 Markus Rost <rost@math.ohio-state.edu>
11214
11215 * editfns.c (Fformat_time_string): Doc fix.
11216
112172002-10-05 John Paul Wallington <jpw@shootybangbang.com>
11218
11219 * fns.c (Flength): Doc fix.
11220
112212002-10-04 Stefan Monnier <monnier@cs.yale.edu>
11222
11223 * keyboard.c (keyremap): New struct.
11224 (read_key_sequence): Use it: globally replace keytran_foo with
11225 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
11226 keytran_next and fkey_next to just `next'.
11227
112282002-10-04 Steven Tamm <steventamm@mac.com>
11229
11230 * macterm.c (keycode_to_xkeysym_table): Change return to be
11231 treated like an X keysym.
11232
112332002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11234
11235 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
11236 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
11237 This is to also handle x/y changes that occur because of a resize.
11238
112392002-10-02 John Paul Wallington <jpw@shootybangbang.com>
11240
11241 * frame.c (Vdelete_frame_functions): New variable.
11242 (syms_of_frame): Initialize and defvar it.
11243 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
11244 it when frame's `tooltip' parameter is non-nil.
11245
11246 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
11247
11248 * w32fns.c (x_create_tip_frame): Likewise.
11249
11250 * macfns.c (x_create_tip_frame): Likewise.
11251
112522002-09-30 Kenichi Handa <handa@m17n.org>
11253
11254 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
11255 -1 before calling ccl_driver.
11256
11257 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
11258 Only when it is non-nil, handle composition sequence.
11259 (setup_coding_system) <0>: Don't force composition handling.
11260
11261 * Makefile.in (lisp, shortlisp): Add utf-16.elc
11262
112632002-09-29 Richard M. Stallman <rms@gnu.org>
11264
11265 * search.c (Freplace_match): Adjust match data for the substitution
11266 just made in the buffer.
11267
11268 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
11269 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
11270
112712002-09-27 Richard M. Stallman <rms@gnu.org>
11272
11273 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
11274 (read_char): Use them. Do all exits thru the end of the function.
11275
112762002-09-27 Kenichi Handa <handa@etl.go.jp>
11277
11278 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
11279 is nil.
11280
112812002-09-26 Richard M. Stallman <rms@gnu.org>
11282
11283 * regex.h (__restrict_arr): Don't define if already defined.
11284
11285 * coding.c (run_pre_post_conversion_on_str):
11286 Save and restore Vdeactivate_mark.
11287
112882002-09-26 John Paul Wallington <jpw@shootybangbang.com>
11289
11290 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
11291
112922002-09-26 Kenichi Handa <handa@etl.go.jp>
11293
11294 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
11295 nonzero, try face's family at first. Otherwise try FAMILY at first.
11296 (choose_face_font): If C is a single byte char or latin-1, call
11297 try_font_list with PREFER_FACE_FAMILY 1.
11298
112992002-09-21 Richard M. Stallman <rms@gnu.org>
11300
11301 * window.c (select_window_1): Don't select frame.
11302 Set frame's selected window only when frame itself is selected.
11303 (Fselect_window): Doc fix.
11304
113052002-09-18 Kim F. Storm <storm@cua.dk>
11306
11307 * process.c (make-network-process): Doc fix (there is no
11308 network-server-log-function hook).
11309
113102002-09-18 Richard M. Stallman <rms@gnu.org>
11311
11312 * print.c (print): Clear out the unused parts of Vprint_number_table.
11313 (syms_of_print): Doc fix for `print-number-table'.
11314
11315 * unexelf.c (unexec): Undo previous change.
11316
113172002-09-17 Andreas Schwab <schwab@suse.de>
11318
11319 * m/alpha.h [LINUX]: Don't define DATA_START.
11320
113212002-09-16 Dave Love <fx@gnu.org>
11322
11323 * unexelf.c (unexec): Deal with .got, reinstating change from
11324 25-08-1999.
11325
113262002-09-13 Richard M. Stallman <rms@gnu.org>
11327
11328 * s/sol2-6.h (UNEXEC): Comment out definition.
11329
11330 * unexsol.c (unexec): Don't downcase first letter of error msg.
11331
11332 * xfaces.c (Fcolor_supported_p): Just one arg is required.
11333
113342002-09-12 Markus Rost <rost@math.ohio-state.edu>
11335
11336 * unexsol.c: Include buffer.h, charset.h, coding.h.
11337
113382002-09-11 Richard M. Stallman <rms@gnu.org>
11339
11340 * unexsol.c: Don't use report_file_error; do it by hand
11341 using dlerror.
11342
11343 * process.c (wait_reading_process_input, both versions):
11344 Before calling turn_on_atimers, call stop_polling.
11345
11346 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
11347
11348 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
11349 we go to too_near_end, call clear_glyph_matrix.
11350 (redisplay_window): After make_cursor_line_fully_visible,
11351 call clear_glyph_matrix and bypass `goto done'.
11352
11353 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
11354 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
11355
113562002-09-10 Richard M. Stallman <rms@gnu.org>
11357
11358 * fileio.c (Fdo_auto_save): Catch error making directory.
11359 Only call push_message if we need to.
11360 At the same time, make an unwind-protect to pop it.
11361 Rename local message_p to old_message_p.
11362 (do_auto_save_make_dir, do_auto_save_eh): New functions.
11363 (do_auto_save_unwind): Don't call pop_message.
11364
11365 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
11366
11367 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
11368
11369 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
11370
11371 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
11372
113732002-09-10 Stefan Monnier <monnier@cs.yale.edu>
11374
11375 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
11376 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
11377 (re_match_2_internal): Be more careful with infinite loops.
11378
113792002-09-10 Kim F. Storm <storm@cua.dk>
11380
11381 * macros.c (end_kbd_macro): New function.
11382 (Fend_kbd_macro): Use it.
11383
11384 * macros.h (end_kbd_macro): Declare extern.
11385
11386 * keyboard.c (Fdiscard_input): If defining keyboard macro,
11387 end and save it instead of discarding it.
11388
113892002-09-09 Markus Rost <rost@math.ohio-state.edu>
11390
11391 * s/sol2-6.h: Fix typo. Add comment.
11392
113932002-09-09 Richard M. Stallman <rms@gnu.org>
11394
11395 * regex.c (regnum_t): Use signed int, not unsigned int.
11396
11397 * s/sol2-6.h: New file.
11398
11399 * s/sol2-5.h (UNEXEC): Definition deleted.
11400
114012002-09-08 Kim F. Storm <storm@cua.dk>
11402
11403 * macros.c (executing_macro_index): Change type to EMACS_INT.
11404 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
11405
11406 * macros.h (executing_macro_index): Change type to EMACS_INT.
11407
114082002-09-06 Richard M. Stallman <rms@gnu.org>
11409
11410 * casetab.c (set_case_table): Make canon table point to eqv table.
11411
114122002-09-06 Juanma Barranquero <lektu@terra.es>
11413
11414 * coding.c (syms_of_coding): Fix spacing.
11415
11416 * composite.c (Fcompose_region_internal)
11417 (Fcompose_string_internal): Likewise.
11418
11419 * data.c (Flsh): Likewise.
11420
11421 * fontset.c (Fset_fontset_font): Likewise.
11422
11423 * macfns.c (Fx_server_max_request_size): Likewise.
11424
11425 * w16select.c (syms_of_win16select): Likewise.
11426
11427 * w32select.c (syms_of_w32select): Likewise.
11428
11429 * xselect.c (syms_of_xselect): Likewise.
11430
114312002-09-05 Richard M. Stallman <rms@gnu.org>
11432
11433 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
11434 call EXTEND_RANGE_TABLE and return a proper value.
11435 (set_image_of_range): Don't call set_image_of_range_1
11436 if no TRANSLATE or if range includes all of Latin-1.
11437 Only call it for the Latin-1 part of the range.
11438 For other cases, make two separate ranges,
11439 one for the original specified characters and one for
11440 their case-conversions.
11441
114422002-09-04 Richard M. Stallman <rms@gnu.org>
11443
11444 * s/sol2-5.h (UNEXEC): Use unexsol.o.
11445
11446 * window.c (displayed_window_lines): Correct for one-off bug
11447 in HEIGHT on non-window displays.
11448
11449 * regex.c (set_image_of_range_1): New function.
11450 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
11451 Return a value to indicate running out of memory.
11452 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
11453 (extend_range_table_work_area): New subroutine.
11454 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
11455 Different calling conventions, and used from set_image_of_range{,_1}.
11456 (IMMEDIATE_QUIT_CHECK): Definitions moved.
11457
114582002-09-04 Juanma Barranquero <lektu@terra.es>
11459
11460 * makefile.w32-in: All dependencies updated.
11461
114622002-09-01 Richard M. Stallman <rms@gnu.org>
11463
11464 * unexsol.c: New file.
11465
11466 * xfns.c (Qbox): Declare external, don't define.
11467
11468 * xdisp.c (redisplay_window) <force-start case>:
11469 If point is on semi-visible last line, reposition
11470 it at previous line.
11471
11472 * alloc.c (display_malloc_warning): Use display-warning.
11473 (malloc_warning_1): Function deleted.
11474
11475 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
11476
11477 * lread.c (read1): Handle #! by skipping the line.
11478
114792002-08-31 Richard M. Stallman <rms@gnu.org>
11480
11481 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
11482 Don't include LDFLAGS.
11483 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
11484
114852002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
11486
11487 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
11488 member of x_display_info unless we compile for some window system.
11489
114902002-08-31 Kim F. Storm <storm@cua.dk>
11491
11492 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
11493 (get_window_cursor_type): Don't use them.
11494 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
11495
114962002-08-30 Kenichi Handa <handa@etl.go.jp>
11497
11498 * xdisp.c (get_next_display_element): Fix previous change.
11499
115002002-08-30 Andrew Choi <akochoi@shaw.ca>
11501
11502 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
11503 (expose_window): Use it to fix the display of overlapping
11504 rows (merge code from xterm.c).
11505
11506 * macfns.c (Qbox): Add extern declaration.
11507
115082002-08-30 Juanma Barranquero <lektu@terra.es>
11509
11510 * w32fns.c (Qbox): Make extern.
11511 (syms_of_w32fns): Remove initialization of Qbox.
11512
115132002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
11514
11515 * xfns.c (Fx_open_connection): Fix error message.
11516
115172002-08-30 Kim F. Storm <storm@cua.dk>
11518
11519 The following changes consolidates the handling of the cursor
11520 type in xdisp.c, moving duplicate code and functionality from
11521 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
11522
11523 * frame.h (enum text_cursor_kinds): Consolidated here.
11524 Added DEFAULT_CURSOR value.
11525 (struct frame) <desired_cursor, cursor_width>
11526 <blink_off_cursor, blink_off_cursor_width>: New fields.
11527 Consolidated from output_x, output_w32 and output_mac structs.
11528 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
11529 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
11530
11531 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
11532 Variables consolidated here.
11533 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
11534 (Vcursor_in_non_selected_windows): Renamed from
11535 cursor_in_non_selected_windows and changed to Lisp_Object.
11536 (syms_of_xdisp): Define and staticpro new and moved variables.
11537 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
11538 consolidated here. Recognize Qhollow setting.
11539 (set_frame_cursor_types): New function to set frame cursor types
11540 based on the frame parameters.
11541 (get_window_cursor_type): New function to calculate new cursor
11542 type and width for the specified window. Based on duplicated
11543 code consolidated here.
11544 Enhancements: cursor-in-non-selected-windows may be a cursor type,
11545 check buffer-local alternate-cursor-type and blink-cursor-alist
11546 before using built-in blink off methods.
11547
11548 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
11549
11550 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
11551 (get_specified_cursor_type, get_window_cursor_type)
11552 (set_frame_cursor_types): Added prototypes.
11553
11554 * macfns.c (x_specified_cursor_type): Removed.
11555 (x_set_cursor_type): Use set_frame_cursor_types.
11556 (Qbar, Qbox): Removed.
11557 (syms_of_macfns): Don't intern or staticpro them.
11558
11559 * macterm.c (x_specified_cursor_type): Remove prototype.
11560 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
11561 (x_display_and_set_cursor): Use get_window_cursor_type.
11562 Remove unused local variables cursor_non_selected, active_cursor.
11563 Redraw cursor if hbar cursor width changes.
11564 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
11565
11566 * macterm.h (enum text_cursor_kinds): Removed.
11567 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
11568 <blink_off_cursor, blink_off_cursor_width>: Members removed.
11569 (FRAME_DESIRED_CURSOR): Macro removed.
11570
11571 * w32fns.c (Vblink_cursor_alist): Removed.
11572 (Qbar, Qhbar, Qbox, Qhollow): Removed.
11573 (syms_of_w32fns): Don't intern, staticpro, or define them.
11574 (x_specified_cursor_type): Removed.
11575 (x_set_cursor_type): Use set_frame_cursor_types.
11576
11577 * w32term.c (x_specified_cursor_type): Remove prototype.
11578 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
11579 (x_display_and_set_cursor): Use get_window_cursor_type.
11580 Remove unused local variables cursor_off_state.
11581 Redraw cursor if hbar cursor width changes.
11582 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
11583
11584 * w32term.h (enum text_cursor_kinds): Removed.
11585 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
11586 <blink_off_cursor, blink_off_cursor_width>: Members removed.
11587 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
11588 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
11589 (struct w32_display_info) <x_highlight_frame>: Renamed member from
11590 w32_highlight_frame.
11591
11592 * xfns.c (Vblink_cursor_alist): Removed.
11593 (Qbar, Qhbar, Qbox, Qhollow): Removed.
11594 (syms_of_xfns): Don't intern, staticpro, or define them.
11595 (x_specified_cursor_type): Removed.
11596 (x_set_cursor_type): Use set_frame_cursor_types.
11597
11598 * xterm.c (x_specified_cursor_type): Remove prototype.
11599 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
11600 (x_display_and_set_cursor): Use get_window_cursor_type.
11601 Remove unused local variables cursor_off_state.
11602 Redraw cursor if hbar cursor width changes.
11603
11604 * xterm.h (enum text_cursor_kinds): Removed.
11605 (struct output_x) <current_cursor, desired_cursor, cursor_width>
11606 <blink_off_cursor, blink_off_cursor_width>: Members removed.
11607 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
11608 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
11609 (x_specified_cursor_type): Remove prototype.
11610
116112002-08-28 Richard M. Stallman <rms@gnu.org>
11612
11613 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
11614 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
11615 (Vblink_cursor_alist): New variable.
11616 (syms_of_w32fns): Initialize and defvar it.
11617 (x_specified_cursor_type): Recognize Qbox for filled box.
11618 Exceptions are hollow boxes.
11619 (Qbox, Qhollow): New variables.
11620 (syms_of_w32fns): Initialize and staticpro them.
11621
11622 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
11623 New macros.
11624 (struct w32_output): New fields blink_off_cursor,
11625 blink_off_cursor_width.
11626 (FRAME_CURSOR_WIDTH): New macro.
11627
11628 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
11629 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
11630
11631 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
11632 for bar cursor.
11633
11634 * w32term.c (expose_overlaps): New function.
11635 (expose_window): Use it to fix the display of overlapping rows.
11636
116372002-08-28 Simon Josefsson <jas@extundo.com>
11638
11639 * xfns.c (Fx_open_connection): Improve help when X connection
11640 fails, xhost is insecure and xauth is better.
11641
116422002-08-28 Juanma Barranquero <lektu@terra.es>
11643
11644 * makefile.w32-in: Add missing dependencies on w32term.h and
11645 composite.h.
11646
11647 * emacs.c (USAGE1): Add missing newline.
11648
116492002-08-27 Andrew Choi <akochoi@shaw.ca>
11650
11651 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
11652
116532002-08-27 Richard M. Stallman <rms@gnu.org>
11654
11655 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
11656 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
11657 (Vblink_cursor_alist): New variable.
11658 (syms_of_xfns): Initialize and defvar it.
11659 (x_specified_cursor_type): Recognize Qbox for filled box.
11660 Exceptions are hollow boxes.
11661 (Qbox, Qhollow): New variables.
11662 (syms_of_xfns): Initialize and staticpro them.
11663
11664 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
11665 New macros.
11666 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
11667
11668 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
11669 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
11670
11671 * emacs.c (main): Handle --script.
11672 (USAGE1): Mention --script.
11673 (standard_args): Define sort order for --script.
11674
116752002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
11676
11677 * xdisp.c (redisplay_updating_p): Variable removed.
11678 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
11679 New variables.
11680 (init_iterator): Don't free realized faces if
11681 inhibit_free_realized_faces is set.
11682 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
11683 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
11684 initialize Qinhibit_free_realized_faces.
11685
11686 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
11687 when iterator is adding glyphs to a glyph matrix.
11688
116892002-08-27 Kenichi Handa <handa@etl.go.jp>
11690
11691 * xdisp.c (get_next_display_element): In unibyte case, don't use
11692 octal form for such eight-bit characters that can be converted to
11693 multibyte char.
11694
116952002-08-26 Kim F. Storm <storm@cua.dk>
11696
b6189c3b
KS
11697 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
11698 foreground and background colors. From Joe Buehler.
048addec
JD
11699
117002002-08-26 Miles Bader <miles@gnu.org>
11701
11702 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
11703
117042002-08-25 Andrew Choi <akochoi@shaw.ca>
11705
11706 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
11707 defined instead of MAC_OSX.
11708
11709 * s/darwin.h (select): Define select to sys_select only if
11710 HAVE_CARBON is defined.
11711 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
11712 (DONT_REOPEN_PTY): #def it.
11713
11714 * macterm.c (XTread_socket): Remove code to call
11715 SendEventToEventTarget for keys with command modifiers when
11716 mac_command_key_is_meta is nil.
11717
117182002-08-24 Andreas Schwab <schwab@suse.de>
11719
11720 * eval.c (Fdefvar): Fix last change.
11721
117222002-08-23 Richard M. Stallman <rms@gnu.org>
11723
11724 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
11725 Record variables in load history as (defvar . VAR).
11726 (Fdefvar): Don't record in load history if no initial value.
11727 (Qdefvar): New variable.
11728 (syms_of_eval): Init and staticpro it.
11729
11730 * lread.c (syms_of_lread): Doc fix.
11731 (build_load_history): Use Fmember to see if a definition
11732 is already in the Vload_history element.
11733
11734 * process.c (Fstart_process): Remove /: from program name.
11735
11736 * emacs.c (decode_env_path): Don't add /: if file name handler
11737 has a `safe-magic' property.
11738
11739 * callproc.c (Fcall_process): Remove /: from program name.
11740
117412002-08-23 Stefan Monnier <monnier@cs.yale.edu>
11742
11743 * regex.c (PATFETCH): Remove the translating fetch.
11744 (PATFETCH_RAW): Rename to PATFETCH.
11745 (set_image_of_range): New fun.
11746 (SET_RANGE_TABLE_WORK_AREA): Use it.
11747 (regex_compile): Don't translate the pattern chars so eagerly.
11748 Only do it when inserting an `exactn' bytecode or when handling
11749 a char-range.
11750 (mutually_exclusive_p): Avoid empty statement.
11751
117522002-08-22 Kim F. Storm <storm@cua.dk>
11753
11754 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
11755 end up on a partially visible line; this reverts a specific part
11756 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
11757 display error which has been reported several times now.
11758 However it introduces the problem that changes was supposed to fix.
11759 See my comments in the source if you want to debug this further.
11760
117612002-08-20 Kenichi Handa <handa@etl.go.jp>
11762
11763 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
11764
117652002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
11766
11767 * msdos.c (croak): Add `void' to definition.
11768
c1380aa6 11769 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
11770 Don't define them, they are defined in msdos.c.
11771
11772 * mem-limits.h [MSDOS]: Declare etext.
11773
11774 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
11775 `const' since CORRECT_DIR_SEPS modifies its target.
11776
117772002-08-19 Kim F. Storm <storm@cua.dk>
11778
2fb0ce67 11779 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
11780 KEEP-RECORD to avoid clearing lossage when we just want to clear
11781 the current key sequence (kmacro needs this).
11782
117832002-08-19 Kenichi Handa <handa@localhost>
11784
11785 * composite.c (run_composition_function): Call FUNC if it is fboundp.
11786
11787 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
11788 cons, return Qnil.
11789
117902002-08-17 Richard M. Stallman <rms@gnu.org>
11791
11792 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
11793
11794 * sysdep.c [!VMS]: Include sys/files.h.
11795
11796 * editfns.c (save_restriction_restore): Defend from unchained marker.
11797
11798 * buffer.c (overlays_at): Handle extending vec uniformly.
11799 (overlays_in): Handle extending vec from length 0 as in overlays_at.
11800
118012002-08-15 Andrew Choi <akochoi@shaw.ca>
11802
11803 * mac.c (init_mac_osx_environment): New function.
11804
11805 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
11806
118072002-08-14 Kim F. Storm <storm@cua.dk>
11808
11809 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
11810 executing macro before appending to it (when used from Lisp).
11811 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
11812 which is called prior to each iteration of macro (for kmacro.el).
11813 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
11814
11815 * lisp.h (Fexecute_kbd_macro): Update prototype.
11816
11817 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
11818
118192002-08-14 Kenichi Handa <handa@etl.go.jp>
11820
11821 * xselect.c (QUTF8_STRING): New variable.
11822 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
11823 (x_atom_to_symbol): Likewise.
11824 (x_get_local_selection): New argument local_request. If it is
11825 nonzero, call handler_fn with the second arg nil.
11826 (x_handle_selection_request): Call x_get_local_selection with
11827 local_request 0.
11828 (lisp_data_to_selection_data): Don't encode the string here.
11829 (Fx_get_selection_internal): Call x_get_local_selection with
11830 local_request 1.
11831 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
11832
11833 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
11834
11835 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
11836
118372002-08-13 Richard M. Stallman <rms@gnu.org>
11838
11839 * minibuf.c (Fminibufferp): New function.
11840 (syms_of_minibuf): Defsubr it.
11841 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
11842
118432002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
11844
11845 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
11846
118472002-08-12 Richard M. Stallman <rms@gnu.org>
11848
11849 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
11850 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
11851 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
11852 already.
11853
11854 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
11855
118562002-08-11 Andrew Choi <akochoi@shaw.ca>
11857
11858 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
11859 (Vmac_pass_command_to_system): New variable.
11860 (Vmac_pass_control_to_system): New variable.
11861 (do_mouse_moved): Check wp with is_emacs_window.
11862 (XTread_socket): Check window_ptr with is_emacs_window.
11863 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
11864 events back to Mac Toolbox for processing, depending on values of
11865 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
11866 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
11867 Vmac_pass_control_to_system.
11868
118692002-08-10 Kenichi Handa <handa@etl.go.jp>
11870
11871 * coding.c (unencodable_char_position): New function.
11872 (Funencodable_char_position): New function.
11873 (syms_of_coding): Defsubr Funencodable_char_position.
11874
118752002-08-10 Andrew Choi <akochoi@shaw.ca>
11876
11877 * mac.c (sys_select) [MAC_OSX]: New function.
11878
11879 * macterm.c (MakeMeTheFrontProcess): New function.
11880 (mac_initialize): Call MakeMeTheFrontProcess.
11881
11882 * s/darwin.h: Define select to sys_select.
11883
118842002-08-09 Richard M. Stallman <rms@gnu.org>
11885
11886 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
11887
118882002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
11889
11890 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
11891 end of the buffer.
11892
118932002-08-08 Ken Raeburn <raeburn@mit.edu>
11894
11895 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
11896
11897 * puresize.h (BASE_PURESIZE): Increase to 910000.
11898
118992002-08-08 Kenichi Handa <handa@etl.go.jp>
11900
11901 * coding.c (Ffind_operation_coding_system): For write-region, if
11902 VISIT is a filename, make it the target.
11903
119042002-08-07 Richard M. Stallman <rms@gnu.org>
11905
11906 * alloc.c (mark_object): Detect long lists for debugging.
11907 (mark_object_loop_halt): New variable.
11908
11909 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
11910
11911 * data.c (Fmake_variable_frame_local): Doc fix.
11912
119132002-08-01 David Ponce <david@dponce.com>
11914
11915 * w32menu.c (local_heap, local_alloc, local_free): New macros.
11916 (malloc_widget_value, free_widget_value)
11917 (w32_free_submenu_strings): Use them.
11918
11919 (push_submenu_start, push_submenu_end, push_left_right_boundary)
11920 (push_menu_pane, push_menu_item, single_keymap_panes)
11921 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
11922 (single_submenu, set_frame_menubar)
11923 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
11924
11925 (Fx_popup_menu): Don't show pop up menu until preceding one is
11926 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
11927
11928 * w32menu.c: Changes adapted from xmenu.c
11929 (set_frame_menubar): First parse all submenus,
11930 then make widget_value trees from them.
11931 Don't allocate any widget_value objects
11932 until we are done with the parsing.
11933 (parse_single_submenu): New function.
11934 (digest_single_submenu): New function.
11935 (single_submenu): Function deleted, replaced by those two.
11936
119372002-08-04 Andrew Choi <akochoi@shaw.ca>
11938
11939 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
11940 returns a valid window pointer before proceeding for keyDown and
11941 autoKey events.
11942
119432002-08-03 Andrew Choi <akochoi@shaw.ca>
11944
11945 * macterm.c (USE_CARBON_EVENTS): New macro.
11946 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
11947 (x_iconify_frame): Call CollapseWindow.
11948 (Vmac_reverse_ctrl_meta): New variable.
11949 (Vmac_wheel_button_is_mouse_2): New variable.
11950 (init_mac_drag_n_drop): New function.
11951 (mac_do_receive_drag): New function.
11952 (mac_handle_service_event): New function.
11953 (init_service_handler): New function.
11954 (mac_to_emacs_modifiers): New function.
11955 (mac_event_to_emacs_modifiers): New function.
11956 (mac_get_mouse_btn): New function.
11957 (mac_convert_event_ref): New function.
11958 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
11959 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
11960 mac_get_mouse_btn.
11961 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
11962
11963 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
11964 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
11965 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
11966 TOOL_BAR_EVENT for MAC_OS as well.
11967 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
11968 as for WINDOWS_NT.
11969 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
11970
11971 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
11972
119732002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
11974
11975 * xdisp.c (forward_to_next_line_start): Fix a condition that
11976 lead to a newline being skipped.
11977
119782002-08-02 Andrew Choi <akochoi@shaw.ca>
11979
11980 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
11981
119822002-08-01 Richard M. Stallman <rms@gnu.org>
11983
11984 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
11985
119862002-07-31 Andrew Choi <akochoi@shaw.ca>
11987
11988 * macfns.c: #undef init_process before #define-ing it.
11989
11990 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
11991 HAVE_CARBON is defined.
11992
119932002-07-31 Richard M. Stallman <rms@gnu.org>
11994
11995 * xmenu.c (set_frame_menubar): First parse all submenus,
11996 then make widget_value trees from them.
11997 Don't allocate any widget_value objects
11998 until we are done with the parsing.
11999 (parse_single_submenu): New function.
12000 (digest_single_submenu): New function.
12001 (single_submenu): Function deleted, replaced by those two.
12002
120032002-07-30 Juanma Barranquero <lektu@terra.es>
12004
12005 * w32proc.c (syms_of_ntproc): Fix docstring of
12006 `w32-get-true-file-attributes'.
12007
120082002-07-28 Richard M. Stallman <rms@gnu.org>
12009
12010 * s/hpux8.h (HPUX8): Define this before including hpux.h.
12011 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
12012
12013 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
12014
12015 * keyboard.c (make_lispy_event):
12016 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
12017 Explicitly clear up_modifier in event->modifiers.
12018
120192002-07-27 Richard M. Stallman <rms@gnu.org>
12020
12021 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
12022
12023 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
12024 for bar cursor.
12025
120262002-07-26 Kenichi Handa <handa@etl.go.jp>
12027
12028 * coding.c (detect_coding_iso2022): While checking a byte sequence
12029 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
12030 it in the normal loop.
12031
120322002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
12033
12034 * xterm.c (expose_overlaps): New function.
12035 (expose_window): Use it to fix the display of overlapping rows.
12036
12037 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
12038
120392002-07-23 Ken Raeburn <raeburn@gnu.org>
12040
12041 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
12042 since it only depends on XUINT.
12043
12044 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
12045 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
12046 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
12047 Macros deleted.
3947677c 12048
77d1daf2
AS
12049 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
12050 its value over other approaches.
12051 * sysdep.c (start_of_data): Don't define the function if a macro
12052 form has been defined.
8a8e19a3 12053
048addec
JD
120542002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
12055
12056 * xdisp.c (redisplay_updating_p): New variable.
12057 (init_iterator): Don't free realized faces when
12058 redisplay_updating_p is set.
12059 (redisplay_internal): Set redisplay_updating_p while updating
12060 the display.
12061
120622002-07-23 Richard M. Stallman <rms@gnu.org>
12063
12064 * editfns.c (Fmessage): Treat "" like nil.
12065
120662002-07-23 Kenichi Handa <handa@etl.go.jp>
12067
12068 * xdisp.c (face_before_or_after_it_pos):
12069 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
12070
120712002-07-22 Juanma Barranquero <lektu@terra.es>
12072
12073 * callproc.c (init_callproc) [DOS_NT]:
12074 Initialize Vshared_game_score_directory to nil.
12075 (syms_of_callproc) [DOS_NT]: Likewise.
12076
120772002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
12078
12079 * xdisp.c (display_line): Replace an abort with xassert.
12080
120812002-07-21 Richard M. Stallman <rms@gnu.org>
12082
12083 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
12084 and END_UNCHANGED when setting buffer_unchanged_p.
12085 Use current_matrix_up_to_date_p to decide whether to use
12086 try_cursor_movement.
12087
12088 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
12089
12090 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
12091
12092 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
12093 Set to nil if dir does not exist.
12094 (syms_of_callproc): Init unconditionally and simply.
12095
12096 * buffer.c (Fbuffer_list): Doc fix.
12097
120982002-07-21 Ken Raeburn <raeburn@gnu.org>
12099
12100 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
12101
12102 * buffer.c (mmap_realloc): When shrinking, make sure number of
12103 pages to unmap is rounded towards zero.
12104
12105 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
12106 (XSETINT): Deleted.
12107
12108 * m/att3b.h (XINT): Don't define.
12109 (VALBITS, VALMASK, XTYPE): Deleted.
12110 (DATA_SEG_BITS): Define.
12111 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
12112 ARRAY_MARK_FLAG): Deleted.
12113 (DATA_SEG_BITS): Define.
12114 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
12115 (DATA_SEG_BITS): Define.
12116
121172002-07-20 Richard M. Stallman <rms@gnu.org>
12118
12119 * print.c (print_error_message): New args CONTEXT and CALLER.
12120 Calls changed.
12121
12122 * lisp.h (print_error_message): Declare new args.
12123
12124 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
12125 and CONTEXT to print_error_message, don't print them here.
12126 For a Quit, don't use Vsignaling_function.
12127 Call message_log_maybe_newline.
12128
12129 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
12130
121312002-07-20 Kim F. Storm <storm@cua.dk>
12132
12133 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
12134
121352002-07-19 Ken Raeburn <raeburn@gnu.org>
12136
12137 * bytecode.c (struct byte_stack): Pointers into byte string now
12138 point to const.
12139 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
12140 const.
12141 * charset.h (BCOPY_SHORT): Source pointer now points to const.
12142 * coding.c (encode_eol, detect_coding, detect_eol):
12143 (decode_coding, encode_coding, detect_coding_system):
12144 Source strings now treated as const.
12145 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
12146 modify Lisp string contents.
12147 * coding.h (decode_coding, encode_coding, detect_coding,
12148 detect_eol): Declarations updated.
12149 * composite.c (compose_chars_in_text): Treat Lisp string contents
12150 as const.
12151 * dispnew.c (safe_bcopy): Source pointer now points to const.
12152 * lisp.h (STRING_COPYIN): New macro.
12153 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
12154 (internal_with_output_to_temp_buffer): Declarations updated.
12155 * print.c (temp_output_buffer_setup):
12156 (internal_with_output_to_temp_buffer): Buffer name argument is now
12157 pointer to const.
12158 * sound.c (struct sound_device): Function pointer field "write"
12159 buffer argument now points to const.
12160 (vox_write): Buffer argument points to const.
12161 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
12162 contents as const.
12163 * sysdep.c (emacs_write): Buffer pointer now const.
12164 * term.c (encode_terminal_code): Buffer pointer now const.
12165 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
12166 (x_face_list_fonts, x_update_menu_appearance):
12167 (hash_string_case_insensitive): Treat Lisp string contents as const.
12168
121692002-07-19 Juanma Barranquero <lektu@terra.es>
12170
048addec
JD
12171 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
12172
12173 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
12174 (Ffile_name_as_directory): Fix argument name in docstring.
12175 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
12176
121772002-07-18 Richard M. Stallman <rms@gnu.org>
12178
12179 * data.c (Fdefalias): Doc fix.
12180
121812002-07-17 Dave Love <fx@gnu.org>
12182
12183 * intervals.h (text_property_stickiness): Use P_.
12184
12185 * ccl.c: Remove `emacs' conditionals.
12186 (ccl_backtrace_table): Fix size spec.
12187 (ccl_driver): Fix type errors.
12188
121892002-07-16 Ken Raeburn <raeburn@gnu.org>
12190
12191 * alloc.c (xstrdup, make_string, make_unibyte_string)
12192 (make_multibyte_string, build_string): String pointer args now
12193 point to const.
12194 * charset.c (find_charset_in_text, c_string_width):
12195 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
12196 * fileio.c (report_file_error):
12197 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
12198 (count_combining_before, count_combining_after, insert_1_both):
12199 (insert, insert_and_inherit, insert_string):
12200 (insert_before_markers, insert_before_markers_and_inherit):
12201 * lread.c (intern, oblookup, hash_string):
12202 * minibuf.c (temp_echo_area_glyphs):
12203 * search.c (fast_c_string_match_ignore_case):
12204 * sysdep.c (emacs_open, set_file_times):
12205 * xfaces.c (xstricmp):
12206 * xdisp.c (store_frame_title, string_char_and_length):
12207 (message_dolog, message2, message2_nolog, set_message): Likewise.
12208 (set_message_1): Cast message string argument to const pointer.
12209 * editfns.c (general_insert_function): Insertion function now
12210 takes pointer to const for input data.
12211 * charset.h (find_charset_in_text, c_string_width):
12212 (parse_str_as_multibyte): Declarations updated.
12213 * dispextern.h (xstricmp): Declaration updated.
12214 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
12215 (count_size_as_multibyte, count_combining_before):
12216 (count_combining_after, insert_1, insert_1_both, message_dolog):
12217 (insert, insert_and_inherit, insert_before_markers)
12218 (insert_before_markers_and_inherit, set_message, message2):
12219 (message2_dolog, build_string, make_string, make_unibyte_string):
12220 (make_multibyte_string, intern, oblookup, report_file_error):
12221 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
12222 (emacs_open, xstrdup): Declarations updated.
12223 * systime.h (set_file_times): Declaration updated.
12224
12225 * charset.c (find_charset_in_text, lisp_string_width): Use const
12226 for pointer to lisp string data.
12227 * charset.h (FETCH_STRING_CHAR_ADVANCE):
12228 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
12229 * coding.c (Ffind_coding_systems_region_interval):
12230 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
12231 (Fmake_directory_internal, Fdelete_directory):
12232 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
12233 * fontset.c (font_family_registry, fs_query_fontset):
12234 (list_fontsets):
12235 * frame.c (Fframe_parameter):
12236 * keyboard.c (cmd_error_internal):
12237 * keymap.c (Fdescribe_buffer_bindings):
12238 * lread.c (complete_filename_p, openp):
12239 * minibuf.c (Fminibuffer_complete_word):
12240 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
12241 (face_before_or_after_it_pos, next_element_from_string):
12242 (get_overlay_arrow_glyph_row, display_mode_element):
12243 (decode_mode_spec_coding):
12244 * xterm.c (same_x_server): Likewise.
12245
12246 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
12247 settings of non-existent fields.
12248
12249 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
12250 copy a lisp value.
12251
12252 * lread.c (Fintern_soft): Use string macros instead of
12253 Lisp_String fields.
12254 * keyboard.c (echo_char, parse_modifiers_uncached):
12255 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
12256 * textprop.c (validate_interval_range, interval_of): Likewise.
12257
12258 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
12259
12260 * charset.h (FETCH_STRING_CHAR_ADVANCE)
12261 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
12262 XSTRING()->size_byte.
12263
12264 * lisp.h (SDATA, SREF): Produce rvalue.
12265 (SSET): New macro.
12266 * alloc.c (make_event_array): Use SSET for storing into a string.
12267 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
12268 a string.
12269 * casefiddle.c (casify_object): Use SSET.
12270 * charset.h (FETCH_STRING_CHAR_ADVANCE)
12271 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
12272 address of string contents.
12273 * data.c (Faref): Use SDATA.
12274 (Faset): Use SDATA, SSET.
12275 * dired.c (directory_files_internal): Use SSET.
12276 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
12277 (Fread_file_name): Use SREF, SSET.
12278 * fns.c (concat): Use SSET.
12279 (concat, Fdelete): Use SDATA.
12280 * insdel.c (insert_from_string_1): Use SDATA.
12281 * keyboard.c (Fevent_convert_list): Use SREF.
12282 * lread.c (Fload): Use SDATA, SSET.
12283 * macfns.c (validate_x_resource_name): Use SSET.
12284 * process.c (status_message): Use SSET.
12285 * search.c (wordify): Use SDATA.
12286 (Freplace_match): Use SREF.
12287 * w32fns.c (validate_x_resource_name): Use SSET.
12288 * xfns.c (validate_x_resource_name): Use SSET.
12289 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
12290
122912002-07-16 Richard M. Stallman <rms@gnu.org>
12292
12293 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
12294
12295 * xdisp.c (reconsider_clip_changes):
12296 Don't test prevent_redisplay_optimizations_p.
12297 (redisplay_internal): Test prevent_redisplay_optimizations_p
12298 along with clip_changed in some cases.
12299 (try_window_id): Likewise.
12300 (redisplay_window): New local var buffer_unchanged_p.
12301
12302 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
12303
12304 * process.c (create_process): Test USG_SUBTTY_WORKS.
12305 (process_send_signal): Clean up handling of GID.
12306 Detect errors in ioctls meant to set GID.
12307
12308 * window.c (temp_output_buffer_show):
12309 Don't set prevent_redisplay_optimizations_p.
12310
123112002-07-15 Juanma Barranquero <lektu@terra.es>
12312
12313 * eval.c (Fdefvaralias): Add docstring argument.
12314
123152002-07-15 Ken Raeburn <raeburn@gnu.org>
12316
12317 * lisp.h (STRING_INTERVALS): Produce rvalue.
12318 (STRING_SET_INTERVALS): New macro.
12319 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
12320 * fns.c (Fstring_as_multibyte): Likewise.
12321 * intervals.c (balance_possible_root_interval, delete_interval)
12322 (create_root_interval, copy_intervals_to_string): Likewise.
12323 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
12324 instead of 0.
12325
123262002-07-14 Ken Raeburn <raeburn@gnu.org>
12327
12328 * lisp.h (STRING_SET_CHARS): New macro.
12329 (SCHARS, SBYTES): Produce rvalues.
12330 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
12331 * fns.c (concat): Likewise.
12332 * lread.c (read_vector): Likewise.
12333
12334 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
12335 (STRING_SET_UNIBYTE): New macro.
12336 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
12337 length of -1) changed to use STRING_SET_UNIBYTE.
12338 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12339 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
12340 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
12341 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
12342 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
12343 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
12344 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
12345 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
12346 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12347 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
12348 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
12349 STRING_BYTES or indirection changed to SCHARS, SBYTES,
12350 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
12351 unchanged for now.
12352
123532002-07-13 Kim F. Storm <storm@cua.dk>
12354
12355 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
12356
123572002-07-12 Richard M. Stallman <rms@gnu.org>
12358
12359 * fileio.c (Fwrite_region): Doc fix.
12360
12361 * print.c (print_error_message): Don't handle Vsignaling_function here.
12362
12363 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
12364 (command_loop_1): Avoid certain actions after memory-full error.
12365
12366 * eval.c (Fsignal): Don't call cancel_hourglass.
12367 For a memory-full error, don't call Vsignal_hook_function
12368 and don't set Vsignaling_function.
12369
12370 * process.c (process_send_signal): Add abort call.
12371
123722002-07-11 Markus Rost <rost@math.ohio-state.edu>
12373
12374 * keymap.c (Fkey_binding): Fix typo.
12375
123762002-07-11 Richard M. Stallman <rms@gnu.org>
12377
12378 * alloc.c (Vmemory_full): New variable.
12379 (Vmemory_signal_data): Renamed from memory_signal_data.
12380 Uses changed.
12381 (syms_of_alloc): Defvar them.
12382 (memory_full, buffer_memory_full): Set Vmemory_full.
12383
12384 * lisp.h (Vmemory_full): Add declaration.
12385 (current_column, indented_beyond_p): Change declaration.
12386
12387 * indent.c (last_known_column): Declare as double, not float.
12388 (current_column, current_column_1, string_display_width)
12389 (position_indentation): Return `double'.
12390 (indented_beyond_p): Arg `column' is `double'. Callers changed.
12391
12392 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
12393 (back_to_previous_visible_line_start)
12394 (reseat_at_next_visible_line_start, next_element_from_buffer):
12395 Use `double', not `float', when calling indented_beyond_p.
12396
12397 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
12398
12399 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
12400
124012002-07-11 Juanma Barranquero <lektu@terra.es>
12402
12403 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
12404 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
12405 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
12406 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
12407 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
12408 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
12409
124102002-07-10 Juanma Barranquero <lektu@terra.es>
12411
d814862a
JB
12412 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
12413 All callers changed.
048addec
JD
12414
124152002-07-09 Stefan Monnier <monnier@cs.yale.edu>
12416
12417 * data.c (Fdefalias): Add an optional `docstring' argument.
12418 (set_internal, Fsetq_default): Use XCAR/XCDR.
12419
12420 * composite.c (HASH_VALUE, HASH_KEY):
12421 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
12422
124232002-07-09 Kenichi Handa <handa@etl.go.jp>
12424
12425 * callproc.c (Fcall_process): Fix previous change.
12426
124272002-07-07 Stefan Monnier <monnier@cs.yale.edu>
12428
12429 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
12430 Add support for hash-tables.
12431 (Ftry_completion): Return t even if the string appears multiple times.
12432
12433 * fns.c (Fnconc): Use XCDR.
12434 (Fprovide): Use CONSP and XCDR.
12435 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
12436 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
12437 (Fmake_hash_table): Accept `:size nil'.
12438 (Fmakehash): Delete: moved to subr.el.
12439 (syms_of_fns): Don't defsubr makehash.
12440
12441 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
12442 (HASH_TABLE_SIZE): Move from fns.c.
12443
124442002-07-07 Richard M. Stallman <rms@gnu.org>
12445
12446 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
12447 Instead just return 0 when there is something to be done.
12448 (try_scrolling): If make_cursor_line_fully_visible returns 0,
12449 retry scrolling as if cursor were off the bottom.
12450 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
12451 return CURSOR_MOVEMENT_MUST_SCROLL.
12452 (redisplay_window): If make_cursor_line_fully_visible returns 0,
12453 go to try_to_scroll.
12454
12455 * buffer.c (Fbuffer_local_value): Store current value into its binding
12456 so we get the up-to-date value for the binding that is loaded.
12457
12458 * eval.c (Fdefmacro): Doc fix.
12459
124602002-07-05 Dave Love <fx@gnu.org>
12461
12462 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
12463 correctly.
12464
12465 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
12466 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
12467 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
12468 CCL_LookupCharConstTbl.
12469 (syms_of_ccl): Defvar translation-hash-table-vector.
12470
124712002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12472
12473 * xdisp.c: Remove unused variable `face'.
12474
124752002-07-04 Juanma Barranquero <lektu@terra.es>
12476
12477 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
12478 obsolescence information.
12479
124802002-07-03 Andrew Choi <akochoi@shaw.ca>
12481
12482 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
12483 pattern. Search cache first.
12484 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
12485 for Japanese font.
12486 (XLoadQueryFont): Use it.
12487
124882002-07-02 Richard M. Stallman <rms@gnu.org>
12489
12490 * keymap.c (Fdefine_key): Doc fix.
12491
12492 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
12493
124942002-07-02 Juanma Barranquero <lektu@terra.es>
12495
12496 * keymap.c (syms_of_keymap): Fix typo.
12497
124982002-07-01 Andrew Choi <akochoi@shaw.ca>
12499
12500 * s/darwin.h: Define POSIX_SIGNALS.
12501
12502 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
12503 and FSRefMakePath to convert FSSpec returned with Apple Event to
12504 Posix pathname.
12505 (mac_initialize) [TARGET_API_MAC_CARBON]:
12506 Call init_required_apple_events and disable the `Quit' menu item
12507 provided automatically by the Carbon Toolbox.
12508
125092002-07-01 Dave Love <fx@gnu.org>
12510
12511 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
12512 for K&R.
12513
12514 * xterm.c: Fix prototype for K&R.
12515
12516 * term.c (costs_set): Declare static, non-initialized for pcc.
12517
125182002-07-01 Richard M. Stallman <rms@gnu.org>
12519
12520 * keyboard.c (timer_last_idleness_start_time): New variable.
12521 (timer_start_idle): Set that.
12522 (read_key_sequence): Use that to reset timer_idleness_start_time
12523 to previous value.
12524
12525 * window.c (Frecenter): With arg, set optional_new_start.
12526
12527 * xdisp.c (redisplay_internal): Make optional_new_start really work.
12528
12529 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
12530 buffer for completion.
12531
125322002-06-29 Ken Raeburn <raeburn@gnu.org>
12533
12534 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
12535
125362002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12537
12538 * keyboard.c (readable_filtered_events): New function that filters
12539 FOCUS_IN_EVENT depending on parameter.
12540 (readable_events): Calls readable_filtered_events, not filtering
12541 FOCUS_IN_EVENT.
12542 (get_filtered_input_pending): New function, filtering parameter passed
12543 to readable_filtered_events.
12544 (get_input_pending): Calls get_filtered_input_pending, not filtering
12545 FOCUS_IN_EVENT.
12546 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
12547 FOCUS_IN_EVENT.
12548
12549 * xterm.h (struct x_output): Add focus_state.
12550
12551 * xterm.c (x_focus_changed): New function.
12552 (x_detect_focus_change): New function.
12553 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
12554 EnterNotify and LeaveNotify to track X focus changes.
12555
125562002-06-28 Andreas Schwab <schwab@suse.de>
12557
12558 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
12559
125602002-06-27 Kim F. Storm <storm@cua.dk>
12561
12562 * xdisp.c: (mode_line_string_list, mode_line_string_face)
12563 (mode_line_string_face_prop): New variables.
12564 (store_mode_line_string): New function.
12565 (display_mode_element): Use store_mode_line_string to
12566 add mode-line string elements to mode_line_string_list
12567 when mode_line_string_list is non-nil.
12568 (Fformat_mode_line): Now returns propertized string by
12569 default. New arg NO-PROPS to ignore properties.
12570 (decode_mode_spec): Only add two dashes for %- in propertized
12571 mode-line string.
12572 (syms_of_xdisp): Init and staticpro mode_line_string_list.
12573
125742002-06-27 Stefan Monnier <monnier@cs.yale.edu>
12575
12576 * minibuf.c (minibuffer_completion_contents): Add return type.
12577
125782002-06-27 Juanma Barranquero <lektu@terra.es>
12579
12580 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
12581
125822002-06-26 Juanma Barranquero <lektu@terra.es>
12583
12584 * fileio.c (read_file_name_cleanup): Add missing return.
12585
125862002-06-26 Richard M. Stallman <rms@gnu.org>
12587
12588 * window.c (Frecenter): Don't set force_start flag.
12589
12590 * minibuf.c (do_completion, Fminibuffer_complete_word)
12591 (Fminibuffer_completion_help): Complete just the text before point.
12592 (minibuffer_completion_contents): New function.
12593
12594 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
12595
12596 * frame.c (frames_bury_buffer): Function deleted.
12597
125982002-06-25 Miles Bader <miles@gnu.org>
12599
12600 * callint.c (Fcall_interactively): When checking to see if doprnt hit
12601 the end of callint_message, allow for a terminating '\0'.
12602
126032002-06-24 Juanma Barranquero <lektu@terra.es>
12604
12605 * w32select.c: Include composite.h
12606
12607 * w16select.c: Likewise.
12608
126092002-06-24 Kenichi Handa <handa@etl.go.jp>
12610
12611 * callproc.c (Fcall_process): If code detection is necessary,
12612 call detect_coding directly here.
12613
12614 * coding.c (detect_eol): Preserve coding->cmp_data.
12615
12616 * w16select.c (Fw16_get_clipboard_data):
12617 * w32fns.c (w32_to_x_font):
12618 * w32select.c (Fw32_get_clipboard_data):
12619 * xselect.c (selection_data_to_lisp_data):
12620 * xterm.c (XTread_socket): Disable composition handling.
12621
126222002-06-24 Stefan Monnier <monnier@cs.yale.edu>
12623
12624 * print.c (temp_output_buffer_setup): Kill all local variables.
12625
126262002-06-22 Stefan Monnier <monnier@cs.yale.edu>
12627
12628 * lread.c (Fread): Remove redundant and imprecise declaration.
12629
12630 * xfns.c (check_x_display_info): Use check_x_frame.
12631
12632 * .gdbinit (xprintsym): Use the new `xname' field.
12633 (xsymbol): Use it.
12634
126352002-06-22 Jason Rumney <jasonr@gnu.org>
12636
12637 * w32fns.c (file_dialog_callback): New function.
12638 (Fx_file_dialog): Allow selecting directories as well as files.
12639
126402002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12641
12642 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 12643 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
12644
126452002-06-17 Andrew Choi <akochoi@shaw.ca>
12646
12647 * macterm.c (mac_scroll_area): Set foreground and backcolor to
12648 black and white before scrolling. Restore frame background and
12649 foreground color after scrolling.
12650 (do_window_update): Call XClearWindow before calling expose_frame.
12651 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
12652 FRAME_FOREGROUND_PIXEL of frame.
12653
12654 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
12655 test Mac command key as <ALT> key.
12656
126572002-06-17 Stefan Monnier <monnier@cs.yale.edu>
12658
12659 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
12660
12661 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
12662 Lookup keys in function-key-map immediately so that key-translation-map
12663 can be applied earlier.
12664 Remove function_key_possible and key_translation_possible, replaced
12665 by checking `keytran_start < t'.
12666
12667 * .gdbinit (xsymbol): Use the new `xname' field.
12668
126692002-06-17 Andrew Choi <akochoi@shaw.ca>
12670
12671 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
12672 test Mac command key as <ALT> key.
12673
12674 * mac.c (do_applescript): Call initialize_applescript if necessary
12675 when first called. Dispose of result_desc only when there is no error.
12676 (Fdo_applescript): Use %d format specifier instead of %ld.
12677
126782002-06-16 Andrew Choi <akochoi@shaw.ca>
12679
12680 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
12681 of FrontWindow for cases keyDown and autoKey.
12682
12683 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
12684 Vdefault_fontset to Monaco with mac-roman coding.
12685
12686 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
12687 init_process before and after inclusion of Carbon/Carbon.h, resp.
12688
12689 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
12690 cursor_gc.
12691 (add_font_name_table_entry): New function.
12692 (init_font_name_table): Use add_font_name_table_entry; add italic,
12693 bold, and bold-italic entries for truetype fonts.
12694
12695 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
12696 for Mac too.
12697 (try_font_list) [MAC_OS]: If no font matches given registry, try
12698 fonts with any registry matching face_family.
12699 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
12700
12701 * s/darwin.h: If autoconf detects the Ncurses library, define
12702 LIBS_TERMCAP to -lncurses to use it.
12703
127042002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
12705
12706 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
12707
127082002-06-15 Richard M. Stallman <rms@gnu.org>
12709
12710 * window.c (Fset_window_configuration): Explicitly preserve
12711 the point value that new_current_buffer had at the start.
12712
127132002-06-14 Juanma Barranquero <lektu@terra.es>
12714
12715 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
12716 Fix typos.
12717
127182002-06-14 Kim F. Storm <storm@cua.dk>
12719
12720 * insdel.c (insert_1_both, insert_from_string_1)
12721 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
12722 insert happened in the end_unchanged region. Otherwise, the
12723 redisplay may be confused and duplicate the last line in the
12724 buffer [seen after save-buffer when require-final-newline==t].
12725
127262002-06-13 Jason Rumney <jasonr@gnu.org>
12727
12728 * w32.c (init_environment): Remove EMACSLOCKDIR.
12729 (stat): Swap _S_IFDIR and _S_IFREG.
12730
127312002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12732
12733 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
12734 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
12735 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
12736 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
12737 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
12738 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
12739 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
12740 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
12741 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
12742 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
12743 SELECTION_REQUEST_EVENT, selection_clear_event to
12744 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
12745 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
12746 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
12747 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
12748 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
12749 no_event to NO_EVENT.
12750
127512002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12752
12753 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
12754
127552002-06-12 Stefan Monnier <monnier@cs.yale.edu>
12756
12757 * intervals.c (textget): Don't forget to `return'.
12758 (lookup_char_property): Use XCAR/XCDR.
12759
127602002-06-12 Juanma Barranquero <lektu@terra.es>
12761
12762 * xdisp.c (Fformat_mode_line): Fix typo.
12763
127642002-06-12 Kim F. Storm <storm@cua.dk>
12765
12766 * xdisp.c (Fformat_mode_line): New function.
12767 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
12768 (store_frame_title_char, store_frame_title): Use unconditionally.
12769 (init_xdisp): Defsubr Fformat_mode_line.
12770 Initialize frame_title_buf etc. unconditionally.
12771
127722002-06-11 Stefan Monnier <monnier@cs.yale.edu>
12773
12774 * keyboard.c (read_key_sequence):
12775 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
12776 things through those maps after downcasing events.
12777 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
12778 applies after function-key-map.
12779 Make sure that keytran can be done in the middle in the sequence.
12780 Be careful not to throw away events past the one we downcase.
12781
12782 * lread.c (read_integer): Remove unused var `tem'.
12783 (read1): Fix int/Lisp_Object mixup.
12784
12785 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
12786
127872002-06-11 Richard M. Stallman <rms@gnu.org>
12788
12789 * keyboard.c (readable_events): Ignore any number of
12790 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
12791
127922002-06-09 Miles Bader <miles@gnu.org>
12793
12794 * xfaces.c (Ftty_supports_face_attributes_p): New function.
12795 (parse_rgb_list, tty_lookup_color): New functions.
12796 (tty_defined_color): Use `tty_lookup_color' to do all the work.
12797 (color_distance, Fcolor_distance): New functions.
12798 (TTY_SAME_COLOR_THRESHOLD): New macro.
12799 (Qtty_color_standard_values): New variable.
12800 (syms_of_xfaces): Initialize new vars & functions.
12801
128022002-06-08 Colin Walters <walters@verbum.org>
12803
12804 * textprop.c (Vchar_property_alias_alist): New variable.
12805 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
12806
12807 * intervals.c (lookup_char_property): New function for looking up
12808 overlay and text properties, created from textget.
12809 (textget): Use it.
12810
12811 * intervals.h (lookup_char_property): Declare.
12812 (Vchar_property_alias_alist): Declare.
12813
12814 * buffer.c (Foverlay_get): Use lookup_char_property.
12815
128162002-06-07 Sam Steingold <sds@gnu.org>
12817
12818 * xselect.c (lisp_data_to_selection_data): Fix last change:
12819 *data_ret is not a Lisp string, while unibyte_string is.
12820
128212002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
12822
12823 * xselect.c (lisp_data_to_selection_data): Fix last change:
12824 set size_ret.
12825
128262002-06-07 Andreas Schwab <schwab@suse.de>
12827
12828 * m/amdx86-64.h: New file.
12829
128302002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
12831
12832 * fns.c (Fstring_make_unibyte): Doc fix.
12833
12834 * xselect.c (lisp_data_to_selection_data): If the requested type
12835 is STRING, call string_make_unibyte to encode the selected text
12836 as a string.
12837
12838 * window.c (Fset_window_hscroll): Doc fix.
12839
128402002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12841
12842 * fileio.c (choose_write_coding_system):
12843 Call select-safe-coding-system properly.
12844
128452002-06-03 Richard M. Stallman <rms@gnu.org>
12846
12847 * xdisp.c (message_with_string): Error if STRING is not a string.
12848
12849 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
12850
12851 * fileio.c (choose_write_coding_system): Pass FILE arg to
12852 Vselect_safe_coding_system_function.
12853
128542002-06-03 Ken Raeburn <raeburn@gnu.org>
12855
12856 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
12857
128582002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
12859
12860 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
12861 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
12862 * keymap.c (describe_command): Likewise.
12863 * minibuf.c (read_minibuf): Likewise.
12864
12865 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
12866 Cast `current_column' return value to int.
12867 (back_to_previous_visible_line_start)
12868 (reseat_at_next_visible_line_start, next_element_from_buffer):
12869 Cast `indented_beyond_p' 3rd arg to float.
12870
12871 * indent.c (last_known_column): Now a float.
12872 (current_column_1, position_indentation, current_column)
12873 (string_display_width): Return float.
12874 (Fcurrent_column): Cast `current_column' return value to int.
12875 (Fcurrent_indentation): Cast `position_indentation' retval to int.
12876 (indented_beyond_p): Third arg now a float.
12877 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
12878
12879 * lisp.h (current_column): Now returns float.
12880 (indented_beyond_p): 3rd arg now a float.
12881
128822002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
12883
12884 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
12885 is Qcompound_text_with_extensions.
12886
12887 * xselect.c (lisp_data_to_selection_data): Always set selection
12888 type as string if x_encode_text returns streingp non-NULL.
12889
12890 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
12891
128922002-05-30 Richard M. Stallman <rms@gnu.org>
12893
12894 * window.c (Fset_window_configuration): Correct the handling
12895 of point in current buffer, to work with multiple windows.
12896
128972002-05-29 Colin Walters <walters@verbum.org>
12898
12899 * lread.c (Fread_from_string): Don't depend on order of evaluation
12900 for C function parameters.
12901
129022002-05-28 Richard M. Stallman <rms@gnu.org>
12903
12904 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
12905 way for blinked-off state and for a nonselected window.
12906
12907 * window.c (window_scroll_pixel_based): Don't call Fbolp;
12908 instead, see if the new start pos is at beginning of line.
12909
12910 * fileio.c (Fwrite_region): If START is a string, don't
12911 make any annotations.
12912
12913 * eval.c (syms_of_eval): Doc fix.
12914
129152002-05-28 Colin Walters <walters@debian.org>
12916
12917 * emacs.c (USAGE1): Add --no-splash.
12918 (standard_args): Ditto.
12919
129202002-05-28 Colin Walters <walters@gnu.org>
12921
12922 * lread.c (readchar_count): New variable.
12923 (readchar): Increment it.
12924 (unreadchar): Decrement it.
12925 (read_multibyte): Decrement it.
12926 (Vread_with_symbol_positions): New variable.
12927 (Vread_symbol_positions_list): New variable.
12928 (read_internal_start): New function, created from Fread and
12929 Fread_from_string. Handle Vread_symbol_positions_list and
12930 Vread_with_symbol_positions.
12931 (readevalloop, Fread, Fread_from_string): Use it.
12932 (read1): Use readchar_count to add symbol positions to
12933 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
12934 (syms_of_lread): DEFVAR_LISP and initialize them.
12935
12936 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
12937 (substitute_object_recurse, substitute_object_in_subtree)
12938 (substitute_in_interval): Prototype.
12939 (read_multibyte): Return c if it's less than zero.
12940
129412002-05-28 Kim F. Storm <storm@cua.dk>
12942
12943 * fileio.c (Fread_file_name_internal): Added brute-force
12944 speed up for using predicate file-directory-p.
12945
129462002-05-28 Kim F. Storm <storm@cua.dk>
12947
12948 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
12949 New variables.
12950 (syms_of_fileio): DEFVAR_LISP them.
12951 (read_file_name_cleanup): New unwind function.
12952 (Fread_file_name_internal): Only return completions satifying
12953 Vread_file_name_predicate. Temporarily unwind protect and rebind
12954 default-directory while checking completions against the predicate.
12955 (Fread_file_name): Added PREDICATE argument. Specbind it to
12956 Vread_file_name_predicate during completion.
12957 Call Vread_file_name_function to read the file name if non-nil.
12958
12959 * lisp.h (Fread_file_name): Now has 6 args.
12960
12961 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
12962 predicate for Fread_file_name when reading directory name.
12963 Supply Qnil for predicate in other calls to Fread_file_name.
12964
129652002-05-26 Miles Bader <miles@gnu.org>
12966
12967 * term.c (tty_capable_p): New function.
12968 * dispextern.h (tty_capable_p): New function declaration.
12969 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
12970 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
12971
129722002-05-23 Stefan Monnier <monnier@cs.yale.edu>
12973
12974 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
12975 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
12976 (Vwrite_region_annotate_functions): Docstring fix.
12977
129782002-05-23 Kim F. Storm <storm@cua.dk>
12979
12980 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
12981 phys_cursor's hpos is overwritten. This is still not completely
12982 correct, as it doesn't really make sense to use hpos at all to
12983 get the cursor glyph (as that is relative to the width of the
12984 characters on the line, which may have changed during the update).
12985
129862002-05-22 Jason Rumney <jasonr@gnu.org>
12987
12988 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
12989 Lisp_Object.
12990 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
12991 Use modified enumfont_t struct.
12992
12993 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12994
12995 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
12996 Handle the `hbar' cursor type.
12997 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12998
12999 * w32fns.c (Qhbar): New variable.
13000 (x_specified_cursor_type): Use it.
13001
130022002-05-21 Ken Raeburn <raeburn@gnu.org>
13003
13004 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
13005 now, when the address is needed.
13006
130072002-05-21 Colin Walters <walters@gnu.org>
13008
13009 * Makefile.in (shortlisp): Add font-core.el.
13010
130112002-05-20 Richard M. Stallman <rms@gnu.org>
13012
13013 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
13014
13015 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
13016 equivalent key bindings here.
13017
130182002-05-20 Ken Raeburn <raeburn@gnu.org>
13019
13020 Change symbol structure to contain a lisp object for the symbol
13021 name:
13022 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
13023 object field named "xname".
13024 (SYMBOL_NAME): New macro.
13025 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
13026 name field.
13027 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
13028 (mark_object, gc_sweep): Use symbol xname field and XSTRING
13029 instead of name field.
13030 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
13031 SYMBOL_NAME instead of XSYMBOL and name field.
13032 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
13033 instead of XSYMBOL and name field.
13034 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
13035 and SYMBOL_NAME instead of XSYMBOL and name field.
13036 * coding.c (Fread_coding_system, code_convert_region1)
13037 (code_convert_string1, code_convert_string_norecord)
13038 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
13039 XSYMBOL and name field.
13040 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
13041 (Fmake_variable_buffer_local, Fmake_local_variable)
13042 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
13043 of XSYMBOL and name field.
13044 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
13045 XSYMBOL and name field.
13046 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
13047 instead of XSYMBOL and name field.
13048 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
13049 XSYMBOL and name field.
13050 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
13051 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
13052 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
13053 instead of XSYMBOL and name field.
13054 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
13055 (parse_modifiers, apply_modifiers, Fevent_convert_list)
13056 (parse_solitary_modifier, Fexecute_extended_command):
13057 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
13058 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
13059 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
13060 of XSYMBOL and name field.
13061 (describe_command, describe_translation): Use SYMBOL_NAME and
13062 assignment instead of XSYMBOL and name field and XSETSTRING.
13063 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
13064 instead of XSYMBOL and name field.
13065 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
13066 name field and XSETSTRING.
13067 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
13068 of XSYMBOL and name field.
13069 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
13070 assignment instead of XSYMBOL and name field and XSETSTRING.
13071 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
13072 XSTRING instead of XSYMBOL and name field.
13073 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
13074 and XSTRING instead of XSYMBOL and name field.
13075 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
13076 and XSTRING instead of XSYMBOL and name field.
13077 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
13078 XSTRING instead of XSYMBOL and name field.
13079 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
13080 of XSYMBOL and name field.
13081 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
13082 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
13083
130842002-05-19 Ken Raeburn <raeburn@gnu.org>
13085
13086 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
13087 and XCDR real rvalues in most configurations.
13088
13089 * buffer.c (fix_overlays_in_range, fix_overlays_before):
13090 Don't take the address of the cdr part of a cons cell; instead, track
13091 the parent cell and call XSETCDR, or set the variable for the head
13092 of the list if we haven't started down the list yet.
13093
130942002-05-19 Richard M. Stallman <rms@gnu.org>
13095
13096 * doc.c (reread_doc_file): Don't ask for confirmation.
13097
130982002-05-18 Jason Rumney <jasonr@gnu.org>
13099
13100 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
13101 (xbm_load_image): Use it.
13102 (xbm_load): Ditto.
13103 (xbm_read_bitmap_data): Reverted to xfns.c version.
13104 From David Ponce <david@dponce.com>.
13105
131062002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
13107
13108 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
13109 2.02 and later.
13110
131112002-05-16 Juanma Barranquero <lektu@terra.es>
13112
13113 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
13114
131152002-05-15 Stefan Monnier <monnier@cs.yale.edu>
13116
13117 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
13118 meaningful test.
13119 (read_char_minibuf_menu_prompt): Fix typo.
13120
131212002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
13122
13123 * eval.c (Fcommandp): Doc fix.
13124
131252002-05-13 Stefan Monnier <monnier@cs.yale.edu>
13126
13127 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
13128 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
13129 (Fset_keymap_parent): Gcpro a bit more.
13130 (access_keymap): Gcpro around meta_map call and around the main loop.
13131 (get_keyelt): Gcpro when following indirect references.
13132 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
13133 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
13134 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
13135 Remove useless ad-hoc remap code.
13136
131372002-05-13 Richard M. Stallman <rms@gnu.org>
13138
13139 * search.c (search_buffer): Give up boyer moore search if inverse
13140 translation change charset_base.
13141
131422002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
13143
13144 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
13145 characters is carried over from the previous block of text, adjust
13146 coding->produced to account for the extra character.
13147
131482002-05-11 Andreas Schwab <schwab@suse.de>
13149
13150 * coding.c (intersection): Keep the elements of the returned list
13151 in the same order as in the first list.
13152
131532002-05-11 Kim F. Storm <storm@cua.dk>
13154
13155 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
13156 only update cmm_size if realloc actually succeeds.
13157 Testing with initial size of 2 elements revealed that using
13158 realloc on GNU/Linux would cause a random trap in xmalloc
13159 later on, so I rewrote the code to use malloc/bcopy/free instead
13160 of realloc.
13161
131622002-05-10 Jason Rumney <jasonr@gnu.org>
13163
13164 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
13165
131662002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
13167
13168 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
13169 parens, to ensure correct evaluation order.
13170
131712002-05-10 Kim F. Storm <storm@cua.dk>
13172
13173 * keymap.c (Vemulation_mode_map_alists): New variable.
13174 (syms_of_keymap): DEFVAR_LISP it.
13175 (current_minor_maps): Process keymap alists in that list before
13176 minor-mode-overriding-map-alist and minor-mode-map-alist.
13177
131782002-05-09 Richard M. Stallman <rms@gnu.org>
13179
13180 * search.c (Freplace_match): Doc fix.
13181
131822002-05-09 Kim F. Storm <storm@cua.dk>
13183
13184 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
13185 Enlarge cursor rectangle drawn around image with non-zero relief.
13186
13187 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
13188 Enlarge cursor rectangle drawn around image with non-zero relief.
13189
13190 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
13191 Enlarge cursor rectangle drawn around image with non-zero relief.
13192
131932002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
13194
13195 * xselect.c (lisp_data_to_selection_data): Don't set selection
13196 type if comes from the Lisp object's car. If the selection
13197 contains a pure ASCII text, always return QSTRING as its type.
13198
131992002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13200
13201 * mac.c (mac-cut-function): Doc fix.
13202
132032002-05-05 Richard M. Stallman <rms@gnu.org>
13204
13205 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
13206
132072002-05-04 Jason Rumney <jasonr@gnu.org>
13208
13209 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
13210 for event-click-count.
13211
13212 * process.c (init_process): Only add server subfeature if we can
13213 use non-blocking I/O.
13214
132152002-05-04 Andrew Choi <akochoi@shaw.ca>
13216
13217 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
13218 repeatedly.
13219
132202002-05-03 Jason Rumney <jasonr@gnu.org>
13221
13222 * process.c (Fmake_network_process): Only support server sockets
13223 when we can make them non-blocking.
13224
13225 * s/ms-w32.h (HAVE_SELECT): Define.
13226
13227 * w32.h (FILE_NDELAY): New flag.
13228
13229 * w32.c (sys_getpeername, fcntl): New functions.
13230 (_sys_read_ahead): Temporarily block on non-blocking sockets.
13231
13232 * w32proc.c: include sys/file.h.
13233
132342002-05-03 Colin Walters <walters@verbum.org>
13235
13236 * callproc.c (Vgame_score_directory): Renamed to
13237 Vshared_game_score_directory.
13238
132392002-04-30 Richard M. Stallman <rms@gnu.org>
13240
13241 * s/gnu.h [emacs]: Include stdio.h.
13242 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
13243
13244 * eval.c (do_autoload): Error if called while preparing to dump.
13245
13246 * fns.c (Frequire): Error if need to load while preparing to dump.
13247
132482002-04-28 Colin Walters <walters@verbum.org>
13249
13250 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
13251 Default to "~/.emacs.d/games".
13252
132532002-04-29 Stefan Monnier <monnier@cs.yale.edu>
13254
13255 * lread.c (openp): Change arg exec_only to predicate.
13256 (build_load_history): Use XCAR/XCDR.
13257 (Flocate_file_internal): New fun.
13258 (syms_of_lread): Defsubr it.
13259 (Fload): Update call to openp.
13260
13261 * lisp.h (openp): Update prototype.
13262
13263 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
13264 * w32proc.c (sys_spawnve):
13265 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
13266 * w32.c (check_windows_init_file):
13267 * sound.c (Fplay_sound_internal):
13268 * process.c (Fstart_process):
13269 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
13270 * mac.c (run_mac_command):
13271 * emacs.c (init_cmdargs):
13272 * callproc.c (Fcall_process): Update call to openp.
13273
13274 * textprop.c (remove_properties): Don't use XCAR without CONSP.
13275
13276 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
13277
132782002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13279
13280 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
13281 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
13282
132832002-04-28 Richard M. Stallman <rms@gnu.org>
13284
13285 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
13286
13287 * eval.c (Fcommandp): New arg for_call_interactively.
13288 * lisp.h (Fcommandp): Declare new arg.
13289
132902002-04-28 Jason Rumney <jasonr@gnu.org>
13291
13292 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
13293
13294 * w32.c (stat, fstat): Use file index information to generate
13295 inodes for directories where available.
13296
132972002-04-26 Andrew Choi <akochoi@shaw.ca>
13298
13299 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
13300 [HAVE_CARBON]: Include Mac object files.
13301
13302 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
13303 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
13304 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
13305 MAC_OSX, and MAC_OS instead of macintosh.
13306
13307 * editfns.c [MAC_OS8]: Include stdio.h.
13308
13309 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
13310
13311 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
13312 Apple Monaco.
13313
78819ebb 13314 * process.c (QCfamily, QCfilte): Declare extern.
048addec
JD
13315 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
13316 calling select.
13317
13318 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
13319
13320 * tparam.c [MAC_OSX]: Don't define BC and UP.
13321
13322 * config.in [HAVE_CARBON]: Add.
13323
13324 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
13325 Move here from mac/src and mac/inc.
13326
13327 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
13328
133292002-04-26 Gerd Moellmann <gerd@gnu.org>
13330
13331 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
13332 Compute phys_cursor_width from the x position returned
13333 by x_draw_glyhs, which is cheaper.
13334 (x_display_and_set_cursor): Compute the buffer-local value
13335 of `cursor-in-non-selected-windows' only when needed.
13336
133372002-04-25 Gerd Moellmann <gerd@gnu.org>
13338
13339 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
13340 cursor on a stretch glyph has a width that depends on
13341 x_stretch_cursor_p.
13342
133432002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13344
13345 * abbrev.c (abbrev-start-location): Doc fix.
13346
13347 * indent.c (Fvertical_motion): Fix last change.
13348
133492002-04-25 Gerd Moellmann <gerd@gnu.org>
13350
13351 * indent.c (Fvertical_motion): Move to the start of the line
13352 containing PT before moving up or down.
13353
133542002-04-24 Gerd Moellmann <gerd@gnu.org>
13355
13356 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
13357 case of writing a whole row, more or less analogous to the case of
13358 writing only parts of a row.
13359
13360 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
13361 0 for NO_CURSOR.
13362
13363 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
13364
133652002-04-23 Colin Walters <walters@verbum.org>
13366
13367 * buffer.c (syms_of_buffer): Doc fix.
13368
133692002-04-23 Gerd Moellmann <gerd@gnu.org>
13370
13371 * xterm.c (notice_overwritten_cursor): Handle the special case
13372 of the cursor being in the first blank non-text line at the
13373 end of a window.
13374
13375 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
13376 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
13377 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
13378 bar cursors only, to make phys_cursor_width contain what its name
13379 suggests.
13380 (notice_overwritten_cursor): Consider the cursor image erased if
13381 the output area intersects the cursor image in y-direction.
13382
133832002-04-23 Simon Marshall <simon@gnu.org>
13384
13385 * xfns.c (x_set_mouse_color): Change default for cross_cursor
13386 to XC_hand2.
13387
133882002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13389
13390 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
13391
133922002-04-22 Kim F. Storm <storm@cua.dk>
13393
13394 * textprop.c (remove_properties): Fixed trap for malformed plist.
13395
133962002-04-22 Richard M. Stallman <rms@gnu.org>
13397
13398 * cmds.c (Fend_of_line): Handle intangible text in mid line.
13399
13400 * window.c (make_window): Initialize height_fixed_p,
13401 last_cursor_off_p, and p->cursor_off_p slots.
13402
134032002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13404
13405 * fns.c (use-dialog-box): Doc fix.
13406
134072002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13408
13409 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
13410 variables `row', `i' and `area'.
13411 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
13412 toolkit library.
13413
134142002-04-19 Stefan Monnier <monnier@cs.yale.edu>
13415
13416 * xfaces.c (clear_font_table): Don't free the default font of
13417 a frame even if it's on another display.
13418 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
13419 that could be Qt.
13420
134212002-04-19 Juanma Barranquero <lektu@terra.es>
13422
13423 * indent.c (Fmove_to_column): Remove unused local variable
13424 `next_boundary_byte'.
13425 (current_column_1): Likewise.
13426
134272002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
13428
13429 * msdos.c (Qhbar): New variable.
13430 (syms_of_msdos): Intern and staticpro it.
13431 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
13432 cursor type.
13433
134342002-04-19 Dave Lambert <dlambert@acm.org>
13435
13436 Theses change implement an underscore-like (`hbar') cursor.
13437
13438 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
13439
13440 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
13441 Handle the `hbar' cursor type.
13442 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
13443
13444 * xfns.c (Qhbar): New variable.
13445 (syms_of_xfns): Intern and staticpro it.
13446 (x_specified_cursor_type): Handle `hbar' cursor.
13447
13448 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
13449 not defined.
13450
134512002-04-18 Richard M. Stallman <rms@gnu.org>
13452
13453 * textprop.c (remove_properties): New arg LIST allows scanning
13454 either a list or a plist.
13455 (interval_has_some_properties_list): New function, like
13456 interval_has_some_properties using list instead of plist.
13457 All callers changed.
13458 (Fremove_list_of_text_properties): New function.
13459 (syms_of_textprop): Defsubr it.
13460
134612002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
13462
13463 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
13464
134652002-04-17 Juanma Barranquero <lektu@terra.es>
13466
13467 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
13468
134692002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
13470
13471 * window.c (coordinates_in_window): Don't report on margin area
13472 if its width is zero.
13473
134742002-04-16 Jason Rumney <jasonr@gnu.org>
13475
13476 * w32fns.c (Fx_file_dialog): Decode file name before using.
13477
13478 * w32term.c (construct_drag_n_drop): Likewise.
13479
134802002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
13481
13482 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
13483 store load-history in pure space.
13484
13485 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
13486
134872002-04-16 Stefan Monnier <monnier@cs.yale.edu>
13488
13489 * xterm.c (Qlatin_1, Qutf_8): New vars.
13490 (syms_of_xterm): Initialize them.
13491 (XTread_socket): Eliminate incorrect optimization that tried to avoid
13492 decoding the output of X*LookupString.
13493 Always use latin-1 to decode the output of XLookupString.
13494 Try Xutf8LookupString if XmbLookupString failed.
13495
13496 * region-cache.c (new_region_cache): Use BEG.
13497
134982002-04-16 Gerd Moellmann <gerd@gnu.org>
13499
13500 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
13501 configuration files.
13502 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
13503 returns 0.
13504
135052002-04-15 Andreas Schwab <schwab@suse.de>
13506
13507 * config.in: Regenerated using autoheader.
13508
13509 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
13510 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
13511 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
13512 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
13513 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
13514 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
13515 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
13516 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
13517 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
13518 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
13519 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
13520 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
13521 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
13522 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
13523 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
13524 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
13525 STACK_DIRECTION, now set by autoconf.
13526
135272002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13528
13529 * dispnew.c (marginal_area_string): Sort arguments.
13530
13531 * dispextern.h (marginal_area_string): Add prototype.
13532
135332002-04-13 Richard M. Stallman <rms@gnu.org>
13534
13535 * fileio.c (Finsert_file_contents):
13536 Don't call temp_output_buffer_setup--do just part, by hand.
13537
13538 * coding.c (run_pre_post_conversion_on_str):
13539 Don't call temp_output_buffer_setup--do just part, by hand.
13540
13541 * keyboard.c (command_loop_1): Don't call start_hourglass
13542 or cancel_hourglass when executing a macro.
13543
13544 * marker.c (count_markers): New function.
13545
13546 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
13547 grow without limit. Move recently used elements to the front.
13548
135492002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
13550
13551 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
13552
135532002-04-12 Gerd Moellmann <gerd@gnu.org>
13554
13555 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
13556 rows marginal areas.
13557 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
13558 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
13559
13560 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
13561
135622002-04-12 Dave Love <fx@gnu.org>
13563
13564 * dispnew.c (marginal_area_string): New.
13565
13566 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
13567 (Qleft_margin, Qright_margin): Declare.
13568 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
13569
13570 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
13571 note_mode_line_highlight and extended.
13572
13573 * keyboard.c (Qleft_margin, Qright_margin): Declare.
13574 (make_lispy_event): Deal with mouse events in margins.
13575
135762002-04-12 Stefan Monnier <monnier@cs.yale.edu>
13577
13578 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
13579
13580 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
13581 than deactivating the mark if tmm is set to `lambda'.
13582 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
13583 Use a single event for HELP_EVENT.
13584 (Fexecute_extended_command): Save last_point_position.
13585
135862002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13587
13588 * lisp.h (Fpropertize): Add prototype.
13589
13590 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
13591
135922002-04-10 Colin Walters <walters@verbum.org>
13593
13594 * config.in: Add HAVE_SHARED_GAME_DIR.
13595
13596 * callproc.c: (Vgame_score_directory): New variable.
13597 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
13598
135992002-04-10 Richard M. Stallman <rms@gnu.org>
13600
13601 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
13602
136032002-04-09 Stefan Monnier <monnier@cs.yale.edu>
13604
13605 * minibuf.c (read_minibuf): Use empty_string.
13606 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
13607 Short-circuit the search as soon as it "failed".
13608 (Fall_completions): Allow lambda forms and lists of strings for alist.
13609 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
13610 when require_match is nil.
13611 (Ftest_completion): Rename from `test_completion' and export to elisp.
13612 Call the predicate also when alist is a list.
13613 Obey Vcompletion_regexp_list.
13614 (do_completion, Fminibuffer_complete_and_exit): Use it.
13615 (Fassoc_string): Rename from `assoc_for_completion'.
13616 Allow list of strings as well and export to elisp.
13617
136182002-04-08 Stefan Monnier <monnier@cs.yale.edu>
13619
13620 * puresize.h (BASE_PURESIZE): Increase to 900KB.
13621
136222002-04-08 Juanma Barranquero <lektu@terra.es>
13623
13624 * w32.c (sys_accept): Don't hide variable `s'.
13625
136262002-04-05 Gerd Moellmann <gerd@gnu.org>
13627
13628 * callint.c (Fcall_interactively): Use INTEGERP instead of
13629 NUMBERP for checking Vhistory_length.
13630
136312002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13632
13633 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
13634 Doc fix to reflect it.
13635
136362002-04-04 Richard M. Stallman <rms@gnu.org>
13637
13638 * xdisp.c (display_mode_element): New arg RISKY.
13639 Disregard text props found or specified within a variable
13640 that isn't marked risky-local-variable.
13641 (Qrisky_local_variable): New variable.
13642 (syms_of_xdisp): Init and staticpro it.
13643
136442002-04-04 Stefan Monnier <monnier@cs.yale.edu>
13645
13646 * undo.c (record_point): New fun.
13647 (record_delete, record_insert): Use it.
13648
136492002-04-03 Juanma Barranquero <lektu@terra.es>
13650
13651 * doc.c (Fdocumentation): Add missing parentheses.
13652 (Fdocumentation_property): Likewise.
13653
136542002-04-03 Stefan Monnier <monnier@cs.yale.edu>
13655
13656 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
13657 data is 0, just return nil.
13658
136592002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
13660
13661 * msdos.c (syms_of_msdos): Fix last change with
13662 mouse_autoselect_window.
13663
136642002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13665
13666 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
13667 mouse_autoselect_window.
13668
136692002-04-02 Stefan Monnier <monnier@cs.yale.edu>
13670
13671 * keyboard.c (make_lispy_event): Handle unknown keysyms together
13672 with system-specific keysyms. Use it also for unknown function keys.
13673
13674 * doc.c (reread_doc_file): Return whether reload was attempted.
13675 (Fdocumentation, Fdocumentation_property): Don't try to reload
13676 if the doc is 0 and only ask once.
13677
13678 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
13679
136802002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
13681
13682 * keyboard.c (read_char): If the event was Qselect_window,
13683 restore timer_idleness_start_time to its previous value.
13684
13685 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
13686
136872002-04-01 Stefan Monnier <monnier@cs.yale.edu>
13688
13689 * region-cache.c (new_region_cache): Use BEG.
13690
13691 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
13692 Use BEG and BEG_BYTE.
13693
13694 * doc.c (get_doc_string): Return nil if the location is wrong.
13695 (reread_doc_file): New fun.
13696 (Fdocumentation, Fdocumentation_property):
13697 Call it if get_doc_string fails.
13698 (Fsnarf_documentation): Make it work for a dumped Emacs.
13699
13700 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
13701 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
13702
13703 * charset.c (Fstring): Allow 0 arguments.
13704
13705 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
13706
13707 * process.c (DATAGRAM_CONN_P, list_processes_1)
13708 (Fprocess_datagram_address, Fset_process_datagram_address)
13709 (Fset_network_process_options, server_accept_connection):
13710 Fix some int/Lisp_Object confusions (thank you union types).
13711
137122002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13713
13714 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
13715
13716 * w32term.c: Likewise.
13717 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
13718
13719 * keyboard.c (Qselect_window): New symbol.
13720 (head_table): Use it.
13721 (keys_of_keyboard): Bound select-window event to handle-select-window.
13722 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
13723
13724 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
13725 (last_window): New variable.
13726 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
13727 (note_mouse_movement): Remove reimplemented code in #if 0.
13728 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
13729 Emacs windows.
13730
13731 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
13732
137332002-03-31 Gerd Moellmann <gerd@gnu.org>
13734
13735 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
13736 Callers changed.
13737
137382002-03-30 Richard M. Stallman <rms@gnu.org>
13739
13740 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
13741 loop whenever it stops making progress.
13742
13743 * widget.c (set_frame_size): Don't call change_frame_size.
13744
137452002-03-30 Gerd Moellmann <gerd@gnu.org>
13746
13747 * dispnew.c (direct_output_for_insert):
13748 Call mark_window_display_accurate.
13749
137502002-03-29 Jason Rumney <jasonr@gnu.org>
13751
13752 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
13753
137542002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
13755
13756 * Makefile.in (lread.o): Depend on coding.h.
13757
13758 * lread.c (openp, Fload): Encode the file name before passing it
13759 to `stat', `access', and `emacs_open'.
13760 (openp): GCPRO the encoded file name. Don't recompute Lisp
13761 strings unnecessarily.
13762
137632002-03-29 Kim F. Storm <storm@cua.dk>
13764
13765 * fns.c (Flax_plist_put): Doc fix.
13766
137672002-03-28 Miles Bader <miles@gnu.org>
13768
13769 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
13770
137712002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13772
13773 * process.c (set-network-process-options): Add usage.
13774 (make-network-process): Doc fix.
13775
137762002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
13777
13778 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
13779
137802002-03-26 Richard M. Stallman <rms@gnu.org>
13781
13782 * fns.c (Fsubstring_no_properties): New function.
13783 (Flax_plist_get, Flax_plist_put): New functions.
13784 (syms_of_fns): defsubr them.
13785
13786 * xdisp.c (update_menu_bar): Test only update_mode_lines;
13787 don't test or alter w->update_mode_line.
13788
13789 * window.c (Fdisplay_buffer): Doc fix.
13790
137912002-03-24 Richard M. Stallman <rms@gnu.org>
13792
13793 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
13794
137952002-03-24 Gerd Moellmann <gerd@gnu.org>
13796
13797 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
13798 (Fdefmacro): Handle `(declare ...)'.
13799 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
13800 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
13801
138022002-03-24 Jason Rumney <jasonr@gnu.org>
13803
13804 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
13805 (xbm_file_p): Add prototypes.
13806 (xbm_format, xbm_image_p): Sync with xfns.c.
13807 (reflect_byte): New function.
13808 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
13809 (xbm_load_image): Create bitmaps with a depth of 1.
13810 (init_xfns): Enable XBM images.
13811
138122002-03-23 Jason Rumney <jasonr@gnu.org>
13813
13814 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
13815 correctly. Do not pass up_modifier to keyboard buffer.
13816
13817 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
13818
138192002-03-22 Stefan Monnier <monnier@cs.yale.edu>
13820
13821 * Makefile.in (bootstrapclean): New target.
13822 (bootstrap-temacs, bootstrap-doc): Remove.
13823 (bootstrap-emacs): Use a bog-standard `temacs'.
13824 Don't bother to build a DOC file.
13825
13826 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
13827
13828 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
13829 in temacs even if !CANNOT_DUMP.
13830 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
13831
13832 * alloc.c (check_pure_size): Only output a warning.
13833
138342002-03-22 Jason Rumney <jasonr@gnu.org>
13835
13836 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
13837 supported.
13838
13839 * w32term.c (zv_bits): Declare as short, for word alignment.
13840 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
13841 (syms_of_w32term): Define x-use-underline-position-properties.
13842
13843 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
13844 (clear_image_cache): Block input, fix logic, clear matrices in
13845 all frames that share this cache.
13846
138472002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
13848
13849 * emacs.c (main): Update the Copyright year in the blurb printed
13850 by "emacs --version".
13851
13852 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
13853
13854 * xterm.c (XTread_socket): If XK_ISO_Lock and
13855 XK_ISO_Last_Group_Lock are defined, handle keysyms between
13856 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
13857
138582002-03-21 Kim F. Storm <storm@cua.dk>
13859
13860 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
13861 menu-bar bindings in keymap and local-map properties _are_ used.
13862 But try keymap property first in accordance with 2002-01-03 patch.
13863 Added comment describing why this is not always reliable.
13864 (tool_bar_items): Ditto for tool-bar.
13865
138662002-03-21 Jason Rumney <jasonr@gnu.org>
13867
13868 * w32fns.c (x_clear_image_1): Disable color table code.
13869
138702002-03-21 Kim F. Storm <storm@cua.dk>
13871
13872 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
13873 removed the wrong version of the DEFUN macro; fixed it.
13874
13875 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
13876 Fmember rather than Fmemq).
13877 (Fprovide): Check that subfeatures is a list.
13878
13879 * process.c (QCfeature, QCdatagram): Removed variables.
13880 (QCtype, Qdatagram): New variables.
13881 (network_process_featurep): Removed function.
13882 (Fmake_network_process): Removed :feature check.
13883 Use :type 'datagram instead of :datagram t to create a datagram
13884 socket. This allows us to add other connection types (e.g. raw
13885 sockets) later in a consistent manner.
13886 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
13887 supported subfeatures for feature make-network-process.
13888 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
13889 Intern and staticpro QCtype and Qdatagram.
13890 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
13891
13892 * xfns.c: (QCtype): Remove duplicate declaration and
13893 initialization (is now declared in process.c).
13894
13895 * w32fns.c: (QCtype): Remove duplicate declaration and
13896 initialization (is now declared in process.c).
13897
138982002-03-21 Richard M. Stallman <rms@gnu.org>
13899
13900 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
13901 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
13902 when jumping to `fail' to avoid undoing reg changes in the
13903 last iteration of the loop.
13904 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
13905
13906 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
13907 Depend on process.h.
13908
139092002-03-20 Jason Rumney <jasonr@gnu.org>
13910
13911 Most of the following changes are still conditional on HAVE_IMAGES
13912 which is not set by default on Windows.
13913
13914 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
13915
13916 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
13917 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
13918 (four_corners_best, x_clear_image_1, x_clear_image)
13919 (x_alloc_image_color, postprocess_image)
13920 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
13921 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
13922 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
13923
13924 * w32gui.h (struct XImage): Define.
13925
13926 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
13927 extract mouse co-ordinates.
13928
139292002-03-20 Jason Rumney <jasonr@gnu.org>
13930
13931 * w32.c (init_winsock): Dynamically load new server and UDP
13932 socket functions.
13933 (socket_to_fd): New function.
13934 (sys_socket): Use it.
13935 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
13936 (sys_recvfrom, sys_sendto): New wrapper functions.
13937
13938 * process.c (QCfamily, QCfilter): Remove duplicate declaration
13939 and initialization.
13940
13941 * makefile.w32-in (LIBS): Remove $(WSOCK32).
13942
139432002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
13944
13945 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
13946 Don't use "sun" as a variable, it's a predefined constant on Sun
13947 machines.
13948
139492002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13950
13951 * bytecode.c (Fbyte_code): Revert last change.
13952
139532002-03-19 Kim F. Storm <storm@cua.dk>
13954
13955 * makefile.w32-in (LIBS): Add $(WSOCK32).
13956 From David Ponce <dponce@voila.fr>.
13957
139582002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13959
13960 * process.c (wait_reading_process_input): Move variables `pname'
13961 and `pnamelen' down where they are used.
13962
13963 * bytecode.c (Fbyte_code): Discard unused computed value to
13964 prevent gcc warning.
13965
13966 * lisp.h (Fplist_member): Add prototype.
13967
139682002-03-18 Kim F. Storm <storm@cua.dk>
13969
13970 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
13971 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
13972
13973 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
13974 Remove explicit GNU_LINUX settings for datagram support.
13975
139762002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13977
13978 * process.c (Fmake_network_process): Remove unused variable `sa'.
13979 Doc fix. Add usage:.
13980 (set_socket_options): Remove unused variables `optnum' and `opttype'.
13981
139822002-03-17 Richard M. Stallman <rms@gnu.org>
13983
13984 * xdisp.c (cursor_type_changed): New variable.
13985 (redisplay_internal): Redisplay all windows if cursor_type_changed.
13986 Clear it when clearing windows_or_buffers_changed.
13987 (try_cursor_movement, redisplay_window, try_window_id)
13988 (try_window_reusing_current_matrix): Test cursor_type_changed
13989 along with windows_or_buffers_changed.
13990
13991 * window.h (cursor_type_changed): New variable.
13992
13993 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
13994 not update_mode_lines, and always set it to 1.
13995
13996 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
13997 if no frames needed redrawing.
13998
139992002-03-17 Kim F. Storm <storm@cua.dk>
14000
14001 The following changes add support for network server processes,
14002 datagram connections, and local (unix) sockets.
14003
14004 * process.h (struct Lisp_Process): New member log.
14005 Doc fix: Member command used to indicate stopped network process.
14006 Doc fix: Member childp contains plist for network process.
14007 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
14008
14009 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
14010 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
14011 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
14012 New variables.
14013 (NETCONN1_P): New macro.
14014 (DATAGRAM_SOCKETS): New conditional symbol.
14015 (datagram_address): New array.
14016 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
14017 (status_message): Use concat3.
14018 (Fprocess_status): Add `listen' status to doc string. Return `stop'
14019 for a stopped network process.
14020 (Fset_process_buffer): Update contact plist for network process.
14021 (Fset_process_filter): Ditto. Don't enable input for stopped
14022 network processes. Server must listen, even if filter is t.
14023 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
14024 New functions.
14025 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
14026 (Fprocess_contact): Added KEY argument. Handle datagrams.
14027 (list_processes_1): Optionally show only processes with the query
14028 on exit flag set. Dynamically adjust column widths. Omit tty
14029 column if not needed. Report stopped network processes.
14030 Identify server and datagram network processes.
14031 (Flist_processes): New optional arg `query-only'.
14032 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
14033 (conv_lisp_to_sockaddr, set_socket_options)
14034 (network_process_featurep, unwind_request_sigio): New helper functions.
14035 (Fprocess_datagram_address, Fset_process_datagram_address):
14036 (Fset_network_process_options): New lisp functions.
14037 (Fopen_network_stream): Removed. Now defined in simple.el.
14038 (Fmake_network_process): New lisp function. Code is based on previous
14039 Fopen_network_stream, but heavily reworked with new property list based
14040 argument list, support for datagrams, server processes, and local
14041 sockets in addition to old client-only functionality.
14042 (server_accept_connection): New function.
14043 (wait_reading_process_input): Use it to handle incoming connects.
14044 Do not enable input on a new connection if process is stopped.
f63fd14e 14045 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
14046 (send_process): Handle datagram sockets.
14047 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
14048 network process is indicated by setting command field to t .
14049 (Fprocess_send_eof): No-op if datagram connection.
14050 (Fstatus_notify): Don't read input for a stream server socket or a
14051 stopped network process.
14052 (init_process): Initialize datagram_address array.
14053 (syms_of_process): Intern and staticpro new variables, defsubr new
14054 functions.
14055
140562002-03-16 Jason Rumney <jasonr@gnu.org>
14057
14058 * w32fns.c (w32_to_all_x_charsets): Return correct type in
14059 startup case.
14060
140612002-03-16 Richard M. Stallman <rms@gnu.org>
14062
14063 * xdisp.c (redisplay_internal, redisplay_windows):
14064 Use list_of_error to call internal_condition_case_1.
14065 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
14066 so as to catch all errors with no possibility of debugger redisplay.
14067 (list_of_error): New variable.
14068 (syms_of_xdisp): Init and staticpro it.
14069
14070 * print.c (print_object): Delete `\ ' from printed rep of frame.
14071
140722002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
14073
14074 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
14075 until its implementation is fixed.
14076
140772002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14078
14079 * xfns.c (png_load): Remove unused variable `gamma_str'.
14080
140812002-03-14 Richard M. Stallman <rms@gnu.org>
14082
14083 * xfns.c (x_real_positions): Handle failure in XQueryTree.
14084
140852002-03-14 Miles Bader <miles@gnu.org>
14086
14087 * intervals.c (adjust_for_invis_intang): New function.
14088 (set_point_both): Use `adjust_for_invis_intang' to do most of the
14089 work for dealing with invisible+intangible regions. Do so before
14090 and after both forward and backward movements, to handle both
14091 front-sticky and rear-sticky cases.
14092 * textprop.c (text_property_stickiness): Function moved here from
14093 `editfns.c'.
14094 * intervals.h (text_property_stickiness): New declaration.
14095 * editfns.c (char_property_eq): Function removed.
14096 (text_property_stickiness): Function moved to `textprop.c'.
14097
140982002-03-13 Jason Rumney <jasonr@gnu.org>
14099
14100 * config.in: Add STRFTIME_NO_POSIX2.
14101
14102 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
14103 and %OX when underlying strftime does not.
14104
141052002-03-13 Stefan Monnier <monnier@cs.yale.edu>
14106
14107 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
14108 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
14109 line) to avoid annoying flicker.
14110 (xm_scroll_callback): Get rid of the now unnecessary kludge.
14111 (XTread_socket): Mark it static.
14112
14113 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
14114
141152002-03-13 Kim F. Storm <storm@cua.dk>
14116
14117 * puresize.h (BASE_PURESIZE): Increase to 775000.
14118
141192002-03-12 Juanma Barranquero <lektu@terra.es>
14120
14121 * editfns.c (syms_of_editfns): Fix typo.
14122
141232002-03-12 Gerd Moellmann <gerd@gnu.org>
14124
14125 * xsmfns.c: Include stdio.h because termhooks.h needs it.
14126 Include termopt.h for interrupt_input.
14127
141282002-03-11 Andreas Schwab <schwab@suse.de>
14129
14130 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
14131
141322002-03-11 Gerd Moellmann <gerd@gnu.org>
14133
14134 * xterm.c (note_mouse_movement): Put code for
14135 x_autoselect_window_p in #if 0.
14136
14137 * lread.c (Fload): Don't assume that message_with_string uses the
14138 string it is given like a C string.
14139
141402002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14141
78819ebb 14142 * xterm.h (x_session_check_input, x_session_initialize): Declare.
048addec
JD
14143
14144 * xterm.c: (XTread_socket): Add call to x_session_check_input and
14145 x_session_have_connection.
14146 (x_initialize): Add call to x_session_initialize.
14147
14148 * termhooks.h (enum event_kind): Add save_session_event.
14149
14150 * keyboard.c: Add Emacs event save_session_event.
14151
14152 * emacs.c (main): Add call to syms_of_xsmfns.
14153
78819ebb 14154 * lisp.h (syms_of_xsmfns): Declare extern.
048addec
JD
14155
14156 * config.in: Add HAVE_X_SM.
14157
14158 * Makefile.in (LIBXT): Add -lSM -lICE
14159 if HAVE_X_SM and not USE_X_TOOLKIT.
14160 (XOBJ): New file xsmfns.c added.
14161
14162 * xsmfns.c: New file for X session management.
14163
141642002-03-09 Jason Rumney <jasonr@gnu.org>
14165
14166 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
14167 read-only when setting modified time.
14168
141692002-03-08 Gerd Moellmann <gerd@gnu.org>
14170
14171 * xdisp.c (move_it_vertically_backward): At the end of the function,
14172 when moving forward by lines, treat terminal frames specially.
14173
14174 * keyboard.c (echo_char): Make sure to add a separator between
14175 keys even if echo_dash hasn't been called.
14176
14177 * xdisp.c: Use new string macros.
14178 (update_echo_area): Pass number of bytes to message3 instead of
14179 number of chars.
14180 (set_message_1): Don't access a string's size_byte directly.
14181 (decode_mode_spec_coding): Use number of bytes of eoltype string
14182 instead number of chars.
14183
14184 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
14185
141862002-03-08 Juanma Barranquero <lektu@terra.es>
14187
14188 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
14189 24-bit.
14190
141912002-03-06 Jason Rumney <jasonr@gnu.org>
14192
14193 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
14194
141952002-03-06 Gerd Moellmann <gerd@gnu.org>
14196
14197 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
14198 (cancel_echoing, echo_length, echo_truncate): Changed to
14199 work with new kboard definition.
14200 (echo_now): Use message3_nolog instead of message2_nolog.
14201
14202 * alloc.c (mark_kboards): Mark echo_string.
14203
14204 * keyboard.h (ECHOBUFSIZE): Removed.
14205 (struct kboard): Member echoptr removed, member echobuf renamed
14206 to echo_string.
14207
14208 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
14209 message3 instead of message2 to display the message using STRING's
14210 text properties.
14211
142122002-03-05 Andreas Schwab <schwab@suse.de>
14213
14214 * xdisp.c (hscroll_margin): Change to EMACS_INT.
14215
142162002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
14217
14218 * frame.c (default-frame-alist): Explain that setting it doesn't
14219 affect existing frames.
14220
142212002-03-05 Stefan Monnier <monnier@cs.yale.edu>
14222
14223 * indent.c (skip_invisible): Fix my brain fart.
14224
14225 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
14226
142272002-03-04 Stefan Monnier <monnier@cs.yale.edu>
14228
14229 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
14230 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
14231 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
14232 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
14233 and variables to use EMACS_INT instead of just int.
14234
14235 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
14236
142372002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
14238
14239 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
14240 environment, pass it down with corrected value.
14241
142422002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14243
14244 * lread.c (read_filtered_event): Do not call start_hourglass
14245 before returning.
14246
142472002-03-04 Juanma Barranquero <lektu@terra.es>
14248
14249 * w32term.c (x_display_and_set_cursor): Fix typo.
14250
142512002-03-03 Richard M. Stallman <rms@gnu.org>
14252
14253 * fileio.c (Fmake_temp_name): Doc fix.
14254
142552002-03-03 Gary Wong <gtw@gnu.org>
14256
14257 * termcap.c [!emacs]: Replace ospeed for building standalone
14258 libtermcap, for binary compatibility.
14259
14260 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
14261
142622002-03-03 Richard M. Stallman <rms@gnu.org>
14263
14264 * xrdb.c (file_p): Rename arg `path' to `filename'.
14265
14266 * abbrev.c (Fexpand_abbrev): Increment plist as use count
14267 only if it is an integer.
14268
14269 * xfns.c (png_load): Set screen_gamma based on f->gamma.
14270 If png_get_sRGB gives an answer, call png_set_gamma
14271 using the default image gamma value.
14272
14273 * lread.c (read1): When reading from a file, default string to
14274 multibyte only if it has some multibyte characters.
14275
14276 * print.c (print_object): Output multibyte chars 128...255
14277 using \x even if ! print_escape_multibyte.
14278
14279 * xdisp.c (display_mode_element): Move the places where
14280 bytepos, charpos, this, and lisp_string are set.
14281 Use lisp_string to set bytepos.
14282
14283 * xdisp.c (redisplay_internal):
14284 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
14285
14286 * xdisp.c (display_mode_element): Merge properties specified with
14287 :propertize onto those that come with the string.
14288
142892002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
14290
14291 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
14292 automatic-hscrolling. Users changed.
14293 <hscroll-margin>: Renamed from automatic-hscroll-margin.
14294 Users changed.
14295 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
14296
142972002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
14298
14299 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
14300
143012002-03-02 Kim F. Storm <storm@cua.dk>
14302
14303 * window.c (Fminibuffer_selected_window): New function.
14304 (syms_of_window): Defsubr it.
14305
143062002-03-01 Kim F. Storm <storm@cua.dk>
14307
14308 * window.h (struct window): New member phys_cursor_width.
14309
14310 * window.c (make_window, replace_window): Init phys_cursor_width.
14311
14312 * xterm.c (x_display_and_set_cursor): Blink box cursor using
14313 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
14314
14315 * w32term.c (x_display_and_set_cursor): Blink box cursor using
14316 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
14317
14318 * lisp.h (GCPRO6): New macro.
14319
14320 * process.c (Fopen_network_stream): Use GCPRO6.
14321
143222002-03-01 Kim F. Storm <storm@cua.dk>
14323
14324 * process.c (Qconnect, Qfailed): New variables.
14325 (syms_of_process): Intern and staticpro them.
14326 (Fprocess_status): Document connect and failed return values.
14327 [NON_BLOCKING_CONNECT]: New conditional.
14328 (connect_wait_mask, num_pending_connects): New variables.
14329 (status_message): Convert Qfailed status.
14330 (Fopen_network_stream): Added support for non-blocking connect.
14331 New optional args: filter, sentinel, non_blocking. Doc updated.
14332 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
14333 (deactivate_process): Handle pending non-blocking connect.
14334 (wait_reading_process_input): Poll for status of non-blocking
14335 connects. Exec sentinel directly when connect succeeds.
14336 (status_notify): Don't read process output if not yet connected.
14337
143382002-02-28 Kim F. Storm <storm@cua.dk>
14339
14340 * window.c: (minibuf_selected_window): Renamed from
14341 Vminibuf_selected_window. Users changed.
14342 (syms_of_window): Staticpro it.
14343
143442002-02-26 Kim F. Storm <storm@cua.dk>
14345
14346 The following changes add a new Vminibuf_selected_window variable
14347 which is similar to Vminibuf_scroll_window, but which is only set
14348 on entry to the minibuffer (from a non-minibuffer window):
14349
14350 * window.c: (Vminibuf_selected_window): New variable.
14351 (struct save_window_data): New member minibuf_selected_window.
14352 (Fset_window_configuration): Restore Vminibuf_selected_window.
14353 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
14354 Set minibuf_scroll_window member to nil if minibuf_level is 0.
14355 (compare_window_configurations): Compare minibuf_selected_window.
14356
14357 * window.h: (Vminibuf_selected_window): Declare extern.
14358
14359 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
14360 entry to minibuffer or on entry from a non-minibuffer window.
14361
14362 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
14363 Vminibuf_selected_window instead of Vminibuf_scroll_window.
14364
14365 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
14366 instead of Vminibuf_scroll_window when deciding in which window
14367 the region should be highlighted. Consequently, the region remains
14368 highlighteded even when a completion buffer is also displayed.
14369
143702002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
14371
14372 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
14373
14374 * xselect.c (Qcompound_text_with_extensions): Renamed from
14375 Qcompound_text_no_extensions.
14376 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
14377
143782002-02-26 Juanma Barranquero <lektu@terra.es>
14379
14380 * w32proc.c (syms_of_ntproc): Doc fix.
14381
143822002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14383
14384 * intervals.h: Include "dispextern.h" unconditionally.
14385
143862002-02-24 Jason Rumney <jasonr@gnu.org>
14387
14388 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
14389 and disp-table.elc.
14390 (lisp): Add emacs-lisp/backquote.elc.
14391
143922002-02-24 Kim F. Storm <storm@cua.dk>
14393
14394 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
14395 The validation of the event type was too strict as it didn't
14396 allow string events; buffer names are used in bindings for
14397 menu-bar-select-buffer (see `menu-bar-update-buffers').
14398
143992002-02-23 Kim F. Storm <storm@cua.dk>
14400
14401 The following changes rework my patch of 2002-02-06 which
14402 added command remapping by entering the commands directly into
14403 the keymaps. Now, command remapping uses an explicit `remap'
14404 prefix in the keymaps, i.e. [remap COMMAND].
14405
14406 * keymap.c (Qremap, remap_command_vector): New variables.
14407 (is_command_symbol): Removed function.
14408 (Fdefine_key): No longer accept a symbol for KEY.
14409 Added validation of [remap COMMAND] argument for KEY.
14410 The DEF is no longer required to be a symbol when remapping a command.
14411 (Fremap_command): New function to remap command through keymaps.
14412 (Flookup_key): Perform command remapping initiated by
14413 Fremap_command directly for speed.
14414 (Fkey_binding): Use Fremap_command for command remapping.
14415 (where_is_internal): Handle new command remapping representation.
14416 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
14417 staticpro them. Defsubr Fremap_command.
14418
14419 * keymap.h (Fremap_command): Declare extern.
14420 (is_command_symbol): Remove extern.
14421
14422 * keyboard.c (command_loop_1): Use Fremap_command for command
14423 remapping; now try command remapping for all symbols.
14424
144252002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
14426
14427 * coding.h (run_pre_post_conversion_on_str): Add prototype.
14428
144292002-02-23 Jason Rumney <jasonr@gnu.org>
14430
14431 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
14432 on the string before encoding it.
14433 (Fw32_get_clipboard_data): Run post-read-conversion on the string
14434 after decoding it.
14435
14436 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
14437
144382002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14439
14440 * w32term.c (enter_timestamp): Remove unused static variable to
14441 prevent warning.
14442
14443 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
14444
144452002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
14446
14447 * w16select.c (Fw16_get_clipboard_data): Fix last change.
14448
14449 * xselect.c (selection_data_to_lisp_data): Fix last change.
14450
144512002-02-22 Jason Rumney <jasonr@gnu.org>
14452
14453 * w32term.h (struct w32_output): New member menu_command_in_progress.
14454
14455 * w32menu.c (menubar_selection_callback): Free the menu and
14456 clear the menu_command_in_progress flag.
14457
14458 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
14459 (menu_free_timer): New variable.
14460 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
14461 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
14462 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
14463 menu command is in progress.
14464 <WM_COMMAND>: Set the menu_command_in_progress flag.
14465 Kill any menu_free_timer that is running.
14466
14467 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
14468 Call ExtTextOutA rather than ExtTextOut.
14469
144702002-02-22 Eli Zaretskii <eliz@gnu.org>
14471
14472 * puresize.h (BASE_PURESIZE): Increase to 755000.
14473
144742002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
14475
14476 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
14477 on the string before encoding it.
14478 (Fw16_get_clipboard_data): Run post-read-conversion on the string
14479 after decoding it.
14480
144812002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
14482
14483 Support for ICCCM Extended Segments in X selections:
14484
14485 * xselect.c <Qcompound_text_no_extensions>: New variable.
14486 (syms_of_xselect): Intern and staticpro it.
14487 (selection_data_to_lisp_data): Run post-read-conversion on decoded
14488 selection text.
14489 (lisp_data_to_selection_data): If next-selection-coding-system is
14490 compound-text-no-extensions, set the type of selection to be
14491 compound-text.
14492
14493 * xterm.h (x_encode_text): Update prototype.
14494
14495 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
14496 callers changed. If SELECTIONP is non-zero, run the
14497 pre-write-conversion function before encoding the selection text.
14498
144992002-02-21 Kim F. Storm <storm@cua.dk>
14500
14501 * frame.c (syms_of_frame): Change mouse-highlight default to t.
14502
14503 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
14504 Correct composing of language-change event.
14505
145062002-02-20 Kim F. Storm <storm@cua.dk>
14507
14508 * keyboard.c (menu_bar_items): Don't include keymap or local-map
14509 bindings at PT when building menu (the menu is not updated often
14510 enough for this to work reliable).
14511 (tool_bar_items): Likewise.
14512 (current_active_maps): Removed unused (and buggy) function.
14513
145142002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14515
14516 * xfns.c (gif_load): Use correct width and height for GIF images.
14517
145182002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
14519
14520 * floatfns.c (Fatan): Accept an optional second arg and call
14521 atan2 if passed 2 args.
14522
145232002-02-18 Jason Rumney <jasonr@gnu.org>
14524
14525 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
14526
145272002-02-17 Jason Rumney <jasonr@gnu.org>
14528
14529 * w32term.c (x_autoselect_window_p): New variable.
14530 (syms_of_w32term): DEFVAR_BOOL and initialize it.
14531 (note_mouse_movement): Use it.
14532
14533 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
14534
14535 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
14536
14537 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
14538 New variables.
14539 (syms_of_w32fns): Intern and staticpro them.
14540 (x_frame_parms) <"fullscreen">: New parameter.
14541 (x_fullscreen_move, x_set_fullscreen): New functions.
14542 (x_set_frame_parameters): Support Qfullscreen.
14543 (x_real_positions): Save x/y_pixels_diff frame params.
14544 (x_figure_window_size): Support full-screen frames.
14545 (Fx_create_frame): Default the fullscreen parameter.
14546
14547 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
14548 (x_fullscreen_adjust): New functions.
14549 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
14550 fullscreen. Call x_check_fullscreen_move, and set the
14551 want_fullscreen member of output_data.w32
14552 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
14553
14554 * w32term.h: New enum for FULLSCREEN_* constants.
14555 (struct w32_output): New members want_fullscreen, x_pixels_diff,
14556 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
14557 (x-fullscreen-adjust): New prototype.
14558
145592002-02-17 Kim F. Storm <storm@cua.dk>
14560
14561 * frame.c: (Vmouse_highlight): New variable.
14562 (syms_of_frame): DEFVAR_LISP it.
14563
14564 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 14565
048addec 14566 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 14567
048addec
JD
14568 * xterm.c (disable_mouse_highlight): Removed variable.
14569 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
14570 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
14571 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
14572 and on after keyboard input.
14573 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 14574
048addec 14575 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 14576
048addec
JD
14577 * msdos.c (disable_mouse_highlight): Removed variable.
14578 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
14579 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
14580 (internal_terminal_init): Initialize mouse_face_hidden.
14581 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
14582 and on after keyboard input.
4f1b1854 14583
048addec 14584 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 14585
048addec
JD
14586 * w32term.c (disable_mouse_highlight): Removed variable.
14587 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
14588 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
14589 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
14590 and on after keyboard input.
14591 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 14592
048addec 145932002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 14594
048addec
JD
14595 * msdos.c (last_mouse_window): New variable.
14596 (dos_rawgetc): Fix last change--if the mouse is in the same window
14597 as recorded in last_mouse_window, don't select this window.
5cb6905d 14598
048addec 14599 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 14600
048addec
JD
14601 * msdos.c (x_autoselect_window_p): New variable.
14602 (syms_of_msdos): Defvar it.
14603 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
14604 which the last mouse movement occured, unless it is already selected.
437dfb9f 14605
048addec
JD
14606 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
14607 New variables.
14608 (syms_of_xdisp): DEVFAR them.
14609 (hscroll_window_tree): Use automatic_hscroll_margin and
14610 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 14611
048addec 146122002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 14613
048addec
JD
14614 * xterm.c (x-autoselect-window): New variable.
14615 (note_mouse_movement): Use it.
9f696a00 14616
048addec 14617 * keyboard.c: Do not include "systime.h" twice.
d57966d7 14618
048addec 146192002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 14620
bfa02563 14621 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 14622
048addec 14623 * alloc.c (NSTATICS): Increase to 1280.
74779f52 14624
048addec 146252002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 14626
048addec 14627 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 14628
048addec
JD
14629 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
14630 (Vx_super_keysym): New variables.
14631 (syms_of_xterm): DEFVAR_LISP them.
14632 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
14633 variables to determine which keys to use for the various modifiers.
a474d59c 14634
048addec 146352002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 14636
048addec
JD
14637 * window.c: (Vmode_line_in_non_selected_windows): Removed.
14638 (mode_line_in_non_selected_windows): New variable.
14639 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 14640
048addec
JD
14641 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
14642 Use mode_line_in_non_selected_windows.
14643 (mode_line_in_non_selected_windows): Declare extern.
14644 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 14645
048addec 146462002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 14647
048addec
JD
14648 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
14649 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
14650 (Fclear_this_command_keys): Doc fixes.
2d10309f 14651
048addec
JD
14652 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
14653 (update_face_from_frame_parameter): Increment face_change_count
14654 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 14655
048addec
JD
14656 * xdisp.c (QCpropertize): New variable.
14657 (mode_line_proptrans_alist): New variable.
14658 (display_mode_element): New arg PROPS; all calls changed.
14659 Implement this, for strings.
14660 Handle literal output of strings by sharing the
14661 main-line code for strings, using local var `literal'.
14662 Handle :propertize feature.
14663 (syms_of_xdisp): Initialze and staticpro QCpropertize and
14664 mode_line_proptrans_alist.
0b1e6b54 14665
048addec 146662002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 14667
048addec
JD
14668 * window.c: (Vmode_line_in_non_selected_windows): New variable.
14669 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 14670
048addec
JD
14671 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
14672 (CURRENT_MODE_LINE_FACE_ID): Use it.
14673 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 14674
048addec
JD
14675 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
14676 to get mode line face.
e17144de 14677
048addec 146782002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 14679
048addec
JD
14680 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
14681 variables; cus-start.el doesn't need them anymore.
44368f8f 14682
048addec 146832002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 14684
048addec
JD
14685 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
14686 reduction. This fixes a display problem where stray newlines were
14687 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 14688
048addec 146892002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 14690
048addec 14691 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 14692
048addec 14693 * xdisp.c (display_mode_lines): Fix last change.
453c5510 14694
048addec 146952002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 14696
048addec
JD
14697 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
14698 match each other.
14699 (w32_load_system_font): Prevent Cleartype fonts from loading.
14700 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 14701
048addec 147022002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 14703
048addec
JD
14704 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
14705 (CURRENT_MODE_LINE_HEIGHT): Use it.
14706 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 14707
048addec
JD
14708 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
14709 (pos_visible_p, handle_face_prop): Likewise.
14710 (display_mode_lines): Likewise, but for the real selected window.
14711 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 14712
048addec
JD
14713 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
14714 in non-selected windows.
14715 (realize_basic_faces): Realize it.
14716 (syms_of_term): Intern and staticpro it.
308dd672 14717
048addec 147182002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 14719
048addec
JD
14720 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
14721 Changed mail addresses to emacs-devel@gnu.org.
308dd672 14722
048addec 147232002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 14724
048addec
JD
14725 * fileio.c (Fsubstitute_in_file_name): If the file name includes
14726 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 14727
048addec 14728 * floatfns.c (Fround): Doc fix.
3c1e6b46 14729
048addec 147302002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 14731
048addec 14732 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 14733
048addec 147342002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 14735
048addec 14736 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 14737
048addec 147382002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 14739
048addec
JD
14740 * keymap.c (where_is_internal): Only check whether definition is
14741 remapped if it fulfills is_command_symbol.
0065bb74 14742
048addec 147432002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 14744
048addec 14745 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 14746
048addec 14747 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 14748
048addec 147492002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 14750
048addec
JD
14751 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
14752 defining command remapping. Doc updated.
14753 (Flookup_key): Remap command through keymap if KEY is a symbol.
14754 (is_command_symbol): New function.
14755 (Fkey_binding): Use it. New optional argument NO-REMAP.
14756 Doc updated. Callers changed. Perform command remapping via
14757 recursive call unless that arg is non-nil.
14758 (where_is_internal): New argument no_remap. Callers changed.
14759 Call recursively to find original key bindings for a remapped
14760 comand unless that arg is non-nil.
14761 (Fwhere_is_internal): New optional argument NO-REMAP.
14762 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 14763
048addec
JD
14764 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
14765 (is_command_symbol): Added prototype.
0d8466cc 14766
048addec
JD
14767 * keyboard.c (Vthis_original_command): New variable.
14768 (syms_of_keyboard): DEFVAR_LISP it.
14769 (command_loop_1): Set it, and perform command remapping.
15fff01d 14770
048addec 147712002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 14772
048addec 14773 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 14774
048addec 147752002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 14776
048addec 14777 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 14778
048addec 147792002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 14780
048addec 14781 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 14782
048addec 147832002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 14784
048addec 14785 * filelock.c (S_ISLNK): Define if not defined.
3a232704 14786
048addec 147872002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 14788
048addec 14789 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 14790
048addec
JD
14791 * lread.c (read1): Redesign strategy for force_multibyte and
14792 force_singlebyte. Now is_multibyte records whether read_buffer
14793 is multibyte. Encountering any multibyte character makes it so.
4e02881b 14794
048addec 147952002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 14796
048addec
JD
14797 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
14798 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 14799
048addec 148002002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 14801
048addec
JD
14802 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
14803 latter never being defined on GNU/Linux.
749f499f 14804
048addec 148052002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 14806
048addec
JD
14807 * xfaces.c (realize_default_face): Don't set the weight and slant of
14808 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 14809
048addec 148102002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 14811
048addec
JD
14812 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
14813 Call cancel_hourglass unconditionally.
d0fd26dd 14814
048addec
JD
14815 * eval.c (Fsignal): Remove duplicated declaration of
14816 the variable `display_hourglass_p'.
b4c45162 14817
048addec 148182002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 14819
048addec 14820 * editfns.c (region_limit): Nicer error message.
c95eaa61 14821
048addec
JD
14822 * coding.c (decode_composition_emacs_mule):
14823 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 14824
048addec
JD
14825 * callint.c (check_mark): New arg to specify clearer error message.
14826 Callers changed.
c95eaa61 14827
048addec 148282002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 14829
048addec 14830 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 14831
048addec 148322002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 14833
048addec
JD
14834 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
14835 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
14836 Fix doc-strings.
c95eaa61 14837
048addec 148382002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 14839
048addec 14840 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 14841
048addec
JD
14842 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
14843 and scroll_up_aggressively.
c95eaa61 14844
048addec 148452002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 14846
048addec 14847 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 14848
048addec 148492002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 14850
048addec
JD
14851 * textprop.c (Fnext_property_change, Fnext_single_property_change)
14852 (Fprevious_property_change, Fprevious_single_property_change):
14853 Stay within the narrowed-buffer boundaries.
e2c3786a 14854
048addec 148552002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 14856
048addec
JD
14857 * term.c (Ftty_display_color_cells): New function.
14858 (syms_of_term): Defsubr it.
14859 (Ftty_display_color_cells, Ftty_display_color_p): Change the
14860 argument name to DISPLAY. Doc fix.
bf794306 14861
048addec
JD
14862 * dispextern.h: Add prototype for set_tty_color_mode and
14863 tty_setup_colors.
bf794306 14864
048addec 148652002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 14866
048addec
JD
14867 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
14868 If region left to draw is not what was expected, mark the frame as
14869 garbaged.
62582985 14870
048addec
JD
14871 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
14872 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 14873
048addec 148742002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 14875
048addec
JD
14876 * w32term.c (x_update_window_begin): Only hide caret if
14877 w32_use_visible_system_caret is set.
14878 (x_update_window_end): Only show caret if
14879 w32_use_visible_system_caret is set.
14880 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 14881
048addec 14882 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 14883
048addec 148842002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 14885
048addec
JD
14886 * unexelf.c (unexec): Define n so as to cause compilation error
14887 for the code where people have often written n instead of nn.
1e9a6186 14888
048addec 14889 * .gdbinit (hookpost-run): Defined.
1e9a6186 14890
048addec 148912002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 14892
048addec 14893 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 14894
048addec 148952002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 14896
048addec
JD
14897 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
14898 if fullscreen is being set.
7c75be36 14899
048addec 149002002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 14901
048addec
JD
14902 * minibuf.c (Fminibuffer_contents)
14903 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
14904 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 14905
048addec 149062002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 14907
048addec 14908 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 14909
048addec 149102002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 14911
048addec
JD
14912 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
14913 height before comparison.
14914 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 14915
048addec 149162002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 14917
048addec
JD
14918 * w32term.c (w32_system_caret_width): Remove.
14919 (w32_use_visible_system_caret): New user flag.
14920 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
14921 Windows reports a screen reader running.
14922 (x_update_window_begin): Hide the system caret.
14923 (x_update_window_end): Show the system caret.
14924 (x_display_and_set_cursor): Don't draw a cursor when
14925 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 14926
048addec
JD
14927 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
14928 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
14929 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
14930 the user requests it. Use system default width when creating.
14931 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 14932
048addec
JD
14933 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
14934 New window messages.
905cc05a 14935
048addec 149362002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 14937
048addec 14938 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 14939
048addec 149402002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 14941
048addec 14942 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 14943
048addec 149442002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 14945
048addec 14946 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 14947
048addec 149482002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 14949
048addec
JD
14950 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
14951 that Windows returns. If a double check fails, try to guess how
14952 ExtTextOut is going to act.
4d0fa4f3 14953
048addec
JD
14954 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
14955 in place of stricmp.
14956 (w32_list_synthesized_fonts): Removed.
14957 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
14958 (struct enumfont_t): New element; list.
14959 (enum_font_cb2): List all style and charset variations of a font.
14960 (Fw32_select_font): New optional argument; include_proportional.
14961 Exclude vertical fonts. Exclude proportional fonts unless
14962 include_proportional is non-nil.
14963 (w32_enable_synthesized_fonts): Change to a boolean.
14964 (Fw32_send_sys_command): Doc fix.
493faf20 14965
048addec 149662002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 14967
048addec
JD
14968 * dispnew.c (update_frame): Move the variable `tem' to the block
14969 where it is used.
4971e491 14970
048addec 149712002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 14972
048addec
JD
14973 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
14974 call to face-set-after-frame-default.
4971e491 14975
048addec 149762002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 14977
048addec
JD
14978 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
14979 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 14980
048addec 149812002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 14982
048addec
JD
14983 * window.c (enlarge_window): When exceeding size of parent,
14984 directly delete all the siblings instead of trying to resize it.
201c831a 14985
048addec 149862002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 14987
048addec 14988 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 14989
048addec 149902002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 14991
048addec 14992 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 14993
048addec 149942002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 14995
048addec
JD
14996 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
14997 is invisible. This can happen if cursor is on top line of a
14998 window, and we switch to a buffer with a header line.
d77fbc16 14999
048addec 15000 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 15001
048addec 150022002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 15003
048addec
JD
15004 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
15005 `dont_resize' only when used.
61e3b944 15006
048addec 15007 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 15008
048addec 150092002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 15010
048addec
JD
15011 * xdisp.c (display_mode_element): When computing charpos, depend
15012 on multibyteness of elt, not the text in field.
8af01033 15013
048addec 150142002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 15015
048addec
JD
15016 * buffer.c (Fkill_all_local_variables):
15017 Increment `update_mode_lines' only once.
7363986a 15018
048addec 150192002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 15020
048addec
JD
15021 * lisp.h (adjust_after_replace_noundo)
15022 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 15023
048addec 15024 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 15025
048addec 150262002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 15027
048addec
JD
15028 Support for the --color command-line argument and tty-color-mode
15029 frame parameter:
f1a85b89 15030
048addec
JD
15031 * term.c (tty_default_color_capabilities, tty_setup_colors)
15032 (set_tty_color_mode): New functions.
15033 (term_init): Call tty_default_color_capabilities.
15034 (Qtty_color_mode_alist): New variable.
15035 (syms_of_term): Intern and staticpro it.
f1a85b89 15036
048addec
JD
15037 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
15038 frames.
15039 (do_switch_frame): For termcap frames, switch the tty
15040 color mode as specified by the frame's parameters.
15041 (Qtty_color_mode): New variable.
15042 (syms_of_frame): Intern and staticpro it.
3a62677f 15043
048addec
JD
15044 * emacs.c (USAGE2): Add the --color option.
15045 (standard_args): Ditto.
72244db2 15046
048addec
JD
150472002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15048
15049 * xterm.h (struct x_output): New members want_fullscreen,
15050 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
15051 y_pixels_outer_diff.
15052 New enum for FULLSCREEN_* constants.
15053 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
15054 is NULL.
15055 (x_fullscreen_adjust): Add prototype.
3a62677f 15056
048addec
JD
15057 * emacs.c (USAGE2): Add the new full-screen arguments.
15058 (standard_args): Ditto.
3a62677f 15059
048addec
JD
15060 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
15061 New variables.
15062 (syms_of_xfns): Intern and staticpro them.
15063 (x_frame_parms) <"fullscreen">: New parameter.
15064 (x_fullscreen_move, x_set_fullscreen): New functions.
15065 (x_set_frame_parameters): Support for Qfullscreen.
15066 (x_real_positions): More accurate computation of the frame position.
15067 (x_figure_window_size): Support full-screen frames.
15068 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 15069
048addec
JD
15070 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
15071 (XTread_socket) <Expose>: Call x_check_fullscreen.
15072 <ConfigureNotify>: Don't resize to fullscreen.
15073 Call x_check_fullscreen_move, and set the want_fullscreen member of
15074 output_data.x.
3a62677f 15075
048addec 150762002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 15077
048addec
JD
15078 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
15079 for mice with more than 3 buttons.
b8523839 15080
048addec
JD
15081 * w32term.c (parse_button): New parameter xbutton. Callers changed.
15082 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 15083
048addec
JD
15084 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
15085 (syms_of_w32fns): DEFVAR_BOOL it.
15086 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 15087
048addec 150882002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 15089
048addec 15090 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 15091
048addec 150922002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 15093
048addec 15094 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 15095
048addec 150962002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 15097
048addec
JD
15098 * .gdbinit (xbuffer): Remove address operator since data is now a
15099 pointer.
c93674bb 15100
048addec 151012002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 15102
048addec 15103 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 15104
048addec 15105 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 15106
048addec 151072002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 15108
048addec
JD
15109 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
15110 when checking for multiple frames.
91175673 15111
048addec 151122002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 15113
048addec
JD
15114 * window.c (delete_window): Rewrite the code for changing the
15115 selected window to handle the case where WINDOW is not a leaf.
91175673 15116
048addec 151172002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 15118
048addec
JD
15119 * process.c (send_process): Set src_multibyte to 1 after the call
15120 top setup_coding_system, not before the call.
e0fead5d 15121
048addec 151222002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 15123
048addec
JD
15124 * xmenu.c (set_frame_menubar, xmenu_show):
15125 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 15126
048addec
JD
15127 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
15128 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 15129
048addec 151302002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 15131
048addec 15132 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 15133
048addec 15134 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 15135
048addec 15136 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 15137
048addec 151382002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 15139
048addec
JD
15140 * insdel.c (make_gap_larger): Make sure buffer size does not
15141 overflow range of int.
62854fe2 15142
048addec 151432002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 15144
048addec
JD
15145 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
15146 OVERLAPS_P.
656f46bb 15147
048addec 15148 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 15149
048addec
JD
15150 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
15151 to the left or to the right of the pointer, put it against
15152 the left screen edge.
15153 (x_frame_parms): Add missing braces around initializer.
036e218d 15154
048addec
JD
15155 * w32term.c (x_setup_relief_colors): Don't compute an image's
15156 background color if it doesn't have a Pixmap.
15157 (notice_overwritten_cursor): Don't depend on
15158 output_cursor and updated_area. Compare pixel coordinates with
15159 window's cursor pixel coordinates.
15160 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
15161 Call notice_overwritten_cursor with new arg list.
15162 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
15163 unconditionally.
15164 (x_draw_image_relief): Use predefined macro instead of
15165 constant when the value of `tool_bar_button_relief' is negative.
036e218d 15166
048addec 15167 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 15168
048addec 151692002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 15170
048addec 15171 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 15172
048addec 151732002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 15174
048addec
JD
15175 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
15176 (Fkey_binding): Try the `keymap' property map first.
15177 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
15178 minor mode bindings.
90647b07 15179
048addec 151802002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 15181
048addec 15182 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 15183
048addec 151842002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 15185
048addec
JD
15186 * keyboard.c (read_key_sequence): Handle the keymap property
15187 before minor mode maps.
9fbc32aa 15188
048addec
JD
15189 * editfns.c (Fformat): Update thissize from field_width
15190 based on the actual width, in the string case.
036e218d 15191
048addec 151922002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 15193
048addec
JD
15194 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
15195 when used as truth value to prevent gcc warnings.
9fbc32aa 15196
048addec
JD
15197 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
15198 * w32proc.c: Include <config.h>.
9fbc32aa 15199
048addec 152002002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 15201
048addec
JD
15202 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
15203 not EMACS_INT, to make them compatible with DEFVAR_INT.
15204 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 15205
048addec 152062002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 15207
048addec
JD
15208 * print.c (print_object): Test print_escape_nonascii only for
15209 unibyte strings.
15210 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
15211 when outputting to a multibyte buffer.
9fbc32aa 15212
048addec 152132001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 15214
048addec
JD
15215 * print.c (print_object): In multibyte string, use hex escapes.
15216 Use octal only for unibyte strings.
15217 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 15218
048addec
JD
15219 * lread.c (read_escape): New arg BYTEREP for reporting whether
15220 escape forces unibyte or multibyte.
15221 (read1): When reading a string, take note of that info.
0142178a 15222
048addec 152232001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 15224
048addec
JD
15225 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
15226 comparison to test lisp value returned by Fget.
d4824a5d 15227
048addec 152282001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 15229
048addec 15230 * lisp.h (max_specpdl_size): Add declaration.
b1356234 15231
048addec 15232 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 15233
048addec
JD
15234 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
15235 Handle modifier bits. Correct typo in error message.
99e380ee 15236
048addec 152372001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 15238
048addec
JD
15239 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
15240 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
15241 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
15242 Update calls to Fdefine_abbrev.
15243 (write_abbrev): Update for changed data format.
15244 Don't list "system" abbrevs.
15245 (Fexpand_abbrev): Update use count with new data format.
15246 (describe_abbrev): Update for changed data format.
15247 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 15248
048addec 15249 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 15250
048addec 15251 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 15252
048addec
JD
15253 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
15254 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 15255
048addec
JD
15256 * keymap.c (Flookup_key): Error message if key has wrong data type.
15257 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
15258 (exclude_key): New variable.
59a86c99 15259
048addec 152602001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 15261
048addec
JD
15262 * xterm.c (x_setup_relief_colors): Don't compute an image's
15263 background color if it doesn't have a Pixmap.
eb77a5f4 15264
048addec
JD
15265 * xterm.c (notice_overwritten_cursor): Don't depend on
15266 output_cursor and updated_area. Compare pixel coordinates with
15267 window's cursor pixel coordinates.
15268 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
15269 Call notice_overwritten_cursor with new arg list.
15270 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
15271 unconditionally.
eb77a5f4 15272
048addec
JD
15273 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
15274 height of the cursor line to the amount to scroll.
eb77a5f4 15275
048addec 152762001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 15277
048addec
JD
15278 * intervals.c (set_point_both): The position after an invisible,
15279 intangible character is not an acceptable stopping point.
bb313871 15280
048addec 152812001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 15282
048addec
JD
15283 * window.c (enlarge_window): In new preserve_before code, convert
15284 CURBEG from lisp object to integer before doing arithmetic.
6052529b 15285
048addec 152862001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 15287
048addec 15288 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 15289
048addec 152902001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 15291
048addec
JD
15292 * keyboard.c (record_char): Ignore duplicate help-echo events only
15293 separated by mouse-movement. When tracking mouse, only record
15294 first and last mouse-movement event in same window.
15295 Don't record mouse-movement events in keyboard macros.
3ce081f5 15296
048addec 152972001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 15298
048addec
JD
15299 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
15300 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 15301
048addec
JD
15302 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
15303 instead of Fstring_as_unibyte.
9fabb2f5 15304
048addec 153052001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 15306
048addec 15307 The following changes remove mocklisp support:
9fabb2f5 15308
048addec 15309 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 15310
048addec
JD
15311 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
15312 `Qmocklisp' and `Qmocklisp_arguments'.
15313 Remove prototype of syms_of_mocklisp.
2fa0eedf 15314
048addec 15315 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 15316
048addec
JD
15317 * callint.c: Do not include mocklisp.h.
15318 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 15319
048addec
JD
15320 * eval.c: Remove variables `Qmocklisp_arguments',
15321 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
15322 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
15323 Do not test for mocklisp case.
15324 (Fwhile): Remove unused variable `tem'.
15325 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 15326
048addec 15327 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 15328
048addec 15329 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 15330
048addec 15331 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 15332
048addec 153332001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 15334
048addec
JD
15335 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
15336 to the left or to the right of the pointer, put it against
15337 the left screen edge.
6108b49c 15338
048addec 153392001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 15340
048addec
JD
15341 * Makefile.in (distclean): Remove .gdbinit if we are building
15342 outside the source tree.
5eea19a4 15343
048addec 153442001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 15345
048addec 15346 * w32.c (emacs_root_dir): New function.
5eea19a4 15347
048addec 15348 * msdos.c (emacs_root_dir): New function.
5eea19a4 15349
048addec
JD
15350 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
15351 of the current drive as the fallback for default_directory.
438e57dd 15352
048addec
JD
15353 * dired.c (file_name_completion): Run the elements of
15354 completion-ignored-extensions through ENCODE_FILE.
438e57dd 15355
048addec
JD
15356 * lisp.h (scmp): Remove prototype, since it's now a static
15357 function private to dired.c.
c88e5347 15358
048addec 153592001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 15360
048addec
JD
15361 * dired.c (scmp): Function moved from minibuf.c.
15362 Delete multibyte handling--used only on encoded strings.
59ce1461 15363
048addec 15364 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 15365
048addec 15366 * fns.c (merge): Add QUIT call.
59ce1461 15367
048addec 153682001-12-18 Dave Love <fx@gnu.org>
8727d588 15369
048addec
JD
15370 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
15371 language/georgian.el.
8727d588 15372
048addec 153732001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 15374
048addec
JD
15375 * Makefile.in (lisp, shortlisp): Synchronize with changes to
15376 lisp/Makefile.in:DONTCOMPILE.
cc63037e 15377
048addec 153782001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 15379
048addec
JD
15380 * xdisp.c (window_box_height): Do not return negative values.
15381 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 15382
048addec 15383 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 15384
048addec 15385 * term.c (keys): Likewise.
deece6f5 15386
048addec 15387 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 15388
048addec 153892001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 15390
048addec
JD
15391 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
15392 patch (COMPOSING_P, not COMPOSING).
28ff4293 15393
048addec 153942001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 15395
048addec 15396 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 15397
048addec
JD
15398 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
15399 before calling decode_coding.
9b46de40 15400
048addec 15401 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 15402
048addec
JD
15403 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
15404 instead of only for COMPOSITION_DISABLED.
9b46de40 15405
048addec 154062001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 15407
048addec 15408 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 15409
048addec 15410 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 15411
048addec
JD
15412 * buffer.h (struct buffer): New field `display_error_modiff'.
15413 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 15414
048addec 15415 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 15416
048addec
JD
15417 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
15418 Call redisplay_window, but not if display_error_modiff field says no.
15419 (redisplay_window_error): New function.
15420 (displayed_buffer): New variable.
15421 (redisplay_internal, redisplay_windows): Call the new functions
15422 instead of redisplay_window directly.
2cd23960 15423
048addec 154242001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 15425
048addec 15426 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 15427
048addec 154282001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 15429
048addec 15430 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 15431 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 15432 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 15433
048addec 154342001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 15435
048addec
JD
15436 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
15437 parameter have a numeric value all the time.
f6fa0866 15438
048addec 15439 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 15440
048addec 154412001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 15442
048addec 15443 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 15444
048addec
JD
15445 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
15446 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 15447
048addec 154482001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 15449
048addec
JD
15450 * xdisp.c (move_it_vertically_backward): Change heuristic
15451 for the case that we didn't move far enough initially.
91c153e2 15452
048addec
JD
15453 * window.c (Frecenter): Simplify computation in the case of window
15454 system frames and ARG < 0; use window_box_height.
65b7d3e7 15455
048addec 154562001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 15457
048addec
JD
15458 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
15459 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 15460
048addec 154612001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 15462
048addec
JD
15463 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
15464 arg is negative.
be676094 15465
048addec 154662001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 15467
048addec
JD
15468 * m/hp800.h: Split the __hpux conditional into the parts
15469 that are right for GNU/Linux too and the parts that are not.
15470 Use the former if GNU_LINUX.
15471 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 15472
048addec 15473 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 15474
048addec 154752001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 15476
048addec
JD
15477 * macros.c, msdos.c, w16select.c: Change doc-string comments to
15478 `new style' [w/`doc:' keyword].
032a857d 15479
048addec 154802001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 15481
048addec
JD
15482 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
15483 before using.
b6270150 15484
048addec 154852001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 15486
048addec
JD
15487 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
15488 keyword].
98cbb9fa 15489
048addec 154902001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 15491
048addec 15492 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 15493
048addec 15494 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 15495
048addec 154962001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 15497
048addec 15498 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
78819ebb 15499 Add comment to explain where the struct came from.
048addec
JD
15500 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
15501 (add_menu_item): Process pop-up menus first to avoid memory leak.
15502 (add_menu_item, w32_menu_display_help): Use `help' field as
15503 Lisp_Object.
15504 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 15505
048addec 155062001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 15507
048addec 15508 * COPYING: Moved back.
fa336b91 15509
048addec
JD
15510 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
15511 Add parentheses around && within ||.
077907d4 15512
048addec 15513 * indent.c (compute_motion): Likewise.
aa2af83a 15514
048addec 15515 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 15516
048addec
JD
15517 * coding.c (setup_coding_system, shrink_encoding_region)
15518 (Fdecode_sjis_char): Likewise.
60a653f1 15519
048addec 155202001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 15521
048addec
JD
15522 * xdisp.c (display_mode_element): Don't read past end of string if
15523 it ends with '%'.
60a653f1 15524
048addec
JD
15525 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
15526 can hold.
60a653f1 15527
048addec
JD
15528 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
15529 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
15530 type changed to Lisp_Object.
15531 (syms_of_data): DEFVAR_LISP them.
60a653f1 15532
048addec 155332001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 15534
048addec
JD
15535 * callproc.c (init_callproc): Set Vdata_directory based on the source
15536 location whenever Emacs was run uninstalled.
60a653f1 15537
048addec 155382001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 15539
048addec
JD
15540 * config.in (HAVE_WORKING_VFORK): New #undefs.
15541 * process.c (create_process):
15542 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
15543 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
15544 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
15545 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
15546 * m/intel386.h (HAVE_VFORK): Likewise.
15547 * m/mips-siemens.h (HAVE_VFORK): Likewise.
15548 * m/mips.h (HAVE_VFORK): Likewise.
15549 * s/freebsd.h (vfork): Remove #define.
15550 * s/lynxos.h (HAVE_VFORK): Remove #undef.
15551 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 15552
048addec 155532001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 15554
048addec
JD
15555 * s/hpux10.h (random): Add undef.
15556 (HAVE_RANDOM): Define it just once.
60a653f1 15557
048addec 155582001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15559
048addec 15560 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 15561
048addec 155622001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 15563
048addec
JD
15564 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
15565 scroll bars of the frame before deleting the frame itself. If the
15566 frame has a widget, delete the frame with XtDestroyWidget, and do
15567 not call XDestroyWindow before that.
60a653f1 15568
048addec 155692001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 15570
048addec 15571 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 15572
048addec 15573 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 15574
048addec 155752001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 15576
048addec
JD
15577 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
15578 excessively large.
60a653f1 15579
048addec
JD
15580 * insdel.c (make_gap_larger): New function.
15581 (make_gap_smaller): New function.
15582 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
15583 Call make_gap_smaller if arg is negative.
60a653f1 15584
048addec 155852001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15586
048addec
JD
15587 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
15588 Pass a dummy argument when calling interrupt_signal.
15589 (parse_menu_item): Mark disabled items before checking for empty def.
15590 (read_char_minibuf_menu_prompt): Make safety more visible.
15591 (read_key_sequence): Add a `first_unbound' variable.
15592 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
15593 unbound prefix as soon as we can detect it.
60a653f1 15594
048addec
JD
15595 * doc.c (Fsnarf_documentation): Add prototype.
15596 (get_doc_string): Handle negative arguments.
15597 (Fdocumentation): Use AREF and ASIZE.
15598 Move the calls to get_doc_string to a single place.
15599 Don't confuse an interactive-spec for a docstring reference.
15600 (Fdocumentation_property): Take advantage of the fact that
15601 get_doc_string now ignores the sign of the docstring position.
60a653f1 15602
048addec 15603 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 15604
048addec 156052001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15606
a64387ee 15607 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 15608
048addec 156092001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15610
048addec
JD
15611 * xterm.c (x_draw_image_relief): Use predefined macro instead of
15612 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 15613
048addec 156142001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 15615
048addec
JD
15616 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
15617 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 15618
048addec 15619 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 15620
048addec 156212001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15622
048addec 15623 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 15624
048addec 156252001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 15626
048addec 15627 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 15628
048addec 156292001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 15630
f63fd14e 15631 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 15632
048addec
JD
15633 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
15634 [!WM_MOUSELEAVE]: Define.
60a653f1 15635
048addec
JD
15636 * w32menu.c (current_popup_menu, get_menu_item_info):
15637 (set_menu_item_info): New vars.
15638 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
15639 (w32_menu_show): Set current_popup_menu.
15640 (add_menu_item): Allocate new strings for owner-drawn menu items
15641 and help strings.
15642 Use owner-draw for disabled menu items again.
15643 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
15644 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 15645
048addec
JD
15646 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
15647 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
15648 <WM_EXITMENULOOP>: Free menu strings.
15649 <WM_MOUSELEAVE>: Stop tracking mouse.
15650 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 15651
048addec
JD
15652 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
15653 and mouse face.
60a653f1 15654
048addec 156552001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 15656
048addec
JD
15657 The following changes add left-fringe and right-fringe
15658 frame parameters to adjust fringe widths, or remove one or
15659 both fringes.
60a653f1 15660
048addec
JD
15661 * frame.h (struct frame): Remove trunc_area_pixel_width and
15662 trunc_area_cols fields.
15663 (Qleft_fringe, Qright_fringe): Declare.
15664 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 15665
048addec
JD
15666 * frame.c (Qleft_fringe, Qright_fringe): New vars.
15667 (syms_of_frame): Initialize them.
60a653f1 15668
048addec
JD
15669 * window.c (coordinates_in_window): Handle separate left and right
15670 fringe widths.
60a653f1 15671
048addec
JD
15672 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
15673 and fringe_cols fields.
15674 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
15675 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
15676 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
15677 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
15678 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
15679 (x_compute_fringe_widths): Add prototype.
60a653f1 15680
048addec
JD
15681 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
15682 fill fringe evenly with small dashes.
f63fd14e 15683 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
15684 clip the new ZV bitmap to avoid jitter between rows.
15685 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
15686 background. Don't draw fringe bitmaps if fringe width is zero.
15687 (x_compute_fringe_widths): New function.
15688 (x_new_font, x_set_window_size_1): Use it.
60a653f1 15689
048addec
JD
15690 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
15691 (x_set_frame_parameters): Process `font' parameter before other
15692 parameters as fringe widths depend on it.
15693 (x_set_fringe_width): New function.
15694 (x_figure_window_size): Use x_compute_fringe_widths.
15695 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
15696 parameters.
60a653f1 15697
048addec
JD
15698 * widget.c (set_frame_size): Use x_compute_fringe_widths.
15699 (EmacsFrameSetCharSize): Ditto.
60a653f1 15700
048addec
JD
15701 * w32term.h: Merged changes from xterm.h.
15702 * w32term.c: Merged changes from xterm.c.
15703 * w32fns.c: Merged changes from xfns.c.
60a653f1 15704
048addec 157052001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15706
048addec 15707 * COPYING: Removed.
60a653f1 15708
048addec 157092001-11-29 Dave Love <fx@gnu.org>
60a653f1 15710
048addec
JD
15711 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
15712 extra extra slot.
15713 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 15714
048addec 157152001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15716
048addec
JD
15717 * fileio.c (file-name-coding-system)
15718 (default-file-name-coding-system): Doc fix (links to referenced
15719 variables added).
60a653f1 15720
048addec 157212001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15722
048addec
JD
15723 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
15724 Add dummy uses of gcproN variables.
60a653f1 15725
048addec
JD
15726 * category.c (describe_category, describe_category_1)
15727 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
15728 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 15729
048addec 157302001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 15731
048addec 15732 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 15733
048addec
JD
15734 * Makefile.in (lispdir): New variable, referring to build dir.
15735 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 15736
048addec 157372001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 15738
048addec
JD
15739 * w32menu.c (w32_menu_display_help): Actually add the new argument
15740 OWNER.
60a653f1 15741
048addec 157422001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 15743
048addec
JD
15744 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
15745 menu items. From David Ponce <dponce@wanadoo.fr>.
15746 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
15747 conditionally.
f63fd14e 15748 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 15749 help event in the owner frame's keyboard buffer.
60a653f1 15750
048addec
JD
15751 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
15752 (Fx_show_tip): Don't subtract last width from row width.
15753
15754 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
15755 (w32_read_socket): Use EQ to compare frames.
60a653f1 15756
048addec 157572001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 15758
048addec
JD
15759 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
15760 OVERLAPS_P.
60a653f1 15761
048addec 157622001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15763
048addec
JD
15764 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
15765 `gcpro3' and `gcpro4'.
60a653f1 15766
048addec 15767 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 15768
048addec 157692001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15770
048addec 15771 * ccl.c: Use AREF and ASIZE.
60a653f1 15772
048addec 157732001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15774
048addec
JD
15775 * lisp.h (run_hook_list_with_args): Remove.
15776 (LIST_END_P): Fix call to wrong_type_argument.
15777 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 15778
048addec 157792001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15780
048addec
JD
15781 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
15782 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 15783
048addec
JD
15784 * eval.c: Use AREF and ASIZE.
15785 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 15786
048addec
JD
15787 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
15788 which match the end of the file-name.
15789 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
15790 is not a valid env var, but leave it as is instead.
60a653f1 15791
048addec
JD
15792 * keymap.c (access_keymap): Handle t bindings like nil bindings.
15793 Make nil bindings in char-tables transparent.
15794 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 15795
048addec 157962001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 15797
048addec
JD
15798 * textprop.c (set_text_properties_1): Allow START, END in either order.
15799 Do nothing if range is empty.
60a653f1 15800
048addec 15801 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 15802
048addec
JD
15803 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
15804 (clean): Not here.
60a653f1 15805
048addec 158062001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15807
048addec
JD
15808 * textprop.c (set_text_properties_1): Clearly mark that the
15809 interval should not be empty.
60a653f1 15810
048addec
JD
15811 * intervals.c (graft_intervals_into_buffer):
15812 Don't call set_text_properties_1 on an empty interval.
60a653f1 15813
048addec 158142001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 15815
048addec 15816 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 15817
048addec
JD
15818 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
15819 don't lose the data in it.
60a653f1 15820
048addec 158212001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 15822
048addec 15823 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 15824
c62aec78 15825 * buffer.c (Fkill_buffer): Likewise.
60a653f1 15826
c62aec78 15827 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 15828
048addec 158292001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15830
048addec 15831 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 15832
048addec 158332001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 15834
048addec
JD
15835 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
15836 Niemitalo <kon@iki.fi>.
60a653f1 15837
048addec 158382001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 15839
048addec 15840 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 15841
048addec
JD
15842 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
15843 (Fx_show_tip): Block input during frame creation.
15844 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 15845
048addec 158462001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 15847
048addec
JD
15848 * lread.c (Fload): Detect recursive load error for more than 3
15849 nestings of the same file.
15850 (Vrecursive_load_depth_limit): Variable deleted.
15851 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 15852
048addec 158532001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 15854
048addec
JD
15855 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
15856 mouse position if either left or top is not specified.
60a653f1 15857
048addec
JD
15858 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
15859 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
15860 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
15861 (my_create_tip_window): Assign tip_window.
15862 (x_create_tip_frame): Use same defaults as X.
15863 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 15864 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 15865
048addec
JD
15866 * w32term.c (x_after_update_window_line): Doc fix.
15867 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
15868 frames.
15869 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 15870
048addec
JD
15871 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
15872 for all Windowed systems.
60a653f1 15873
048addec 158742001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 15875
048addec
JD
15876 * msdos.c (IT_clear_screen): If the frame's faces are not yet
15877 realized, use the initial screen colors to clear the screen.
60a653f1 15878
048addec 158792001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15880
048addec
JD
15881 * textprop.c (Fset_text_properties): Remove unused variables
15882 `unchanged', `prev_changed', `s' and `len'.
60a653f1 15883
048addec
JD
15884 * search.c (Freplace_match): Remove unused variable `inslen'.
15885
15886 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
15887
158882001-11-22 Jason Rumney <jasonr@gnu.org>
15889
15890 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
15891 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
15892 (my_create_tip_window): New function.
15893 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
15894 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
15895
158962001-11-20 Jason Rumney <jasonr@gnu.org>
15897
15898 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
15899 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
15900
15901 * w32fns.c (Vw32_system_coding_system): Remove.
15902 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
15903
159042001-11-19 Stefan Monnier <monnier@cs.yale.edu>
15905
15906 * fileio.c (Fwrite_region): Move choose_write_coding_system to
15907 after build_annotations.
15908
15909 * syntax.c (describe_syntax): Add dummy arg.
15910 (describe_syntax_1): Update call to describe_vector.
15911
15912 * category.c (describe_category): Add dummy arg.
15913 (describe_category_1): Update call to describe_vector.
15914
15915 * keymap.c (Fdescribe_vector): Add `describer' parameter.
15916 (describe_command, describe_translation): Add dummy second param.
15917 (describe_map): Call elt_describer with two arguments.
15918 (describe_vector_princ): Add `fun' parameter.
15919 Call it instead of the hardcoded `princ'.
15920 (describe_vector): Add arg `args'.
15921 Pass it as a new second argument to elt_describer.
60a653f1 15922
048addec 15923 * keymap.h (describe_vector): Update prototype.
60a653f1 15924
048addec
JD
15925 * frame.c: Don't include keymap.h any more.
15926 (keys_of_frame): Remove.
60a653f1 15927
048addec 15928 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 15929
048addec 15930 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 15931
048addec 159322001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 15933
048addec
JD
15934 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
15935 if defined, 0 otherwise.
15936 (MAP_FAILED): Define if not defined and use it to test mmap failure.
15937 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 15938
048addec 159392001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 15940
048addec 15941 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 15942
048addec 159432001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 15944
048addec
JD
15945 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
15946 (x_draw_bar_cursor): If the background color of the glyph under
15947 the cursor equals the frame's cursor color, use the glyph's
15948 foreground color for drawing the bar cursor.
15949 (x_after_update_window_line): Clear internal border in different
15950 circumstances.
15951 (w32_set_vertical_scroll_bar): Check for width and height > 0.
15952 (w32_draw_relief_rect): Correct relief by 1 pixel.
15953 (x_set_glyph_string_background_width):
15954 Set extends_to_end_of_line_p if the row's fill_line_p is set and
15955 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
15956 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
15957 if cursor_in_non_selected_windows is false.
15958 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
15959 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
15960 Notice if cursor gets overwritten.
15961 (notice_overwritten_cursor): Renamed from
15962 note_overwritten_text_cursor. Rewritten to take glyph widths
15963 into account, and to take X positions as parameters.
15964 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15965 around call to x_draw_glyphs.
15966 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15967 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15968 color to use for image glyph reliefs.
15969 (x_draw_image_relief): Accept zero tool_bar_button_relief.
15970 (glyph_rect): Remove unused variable `area'.
60a653f1 15971
048addec
JD
15972 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
15973 some items.
15974 (x_set_internal_border_width): Set frame garbaged when window
15975 doesn't exist yet.
15976 (Fx_create_frame): Accept zero tool_bar_button_relief.
15977 (x_clear_image_1, four_corners_best, image_background)
15978 (image_background_transparent): New functions.
15979 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
15980 (gs_format): Add `:background' entry.
15981 (lookup_image): Set IMG's background color if specified.
15982 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15983 when appropriate.
15984 (x_clear_image_1): Reset `background_valid' and
15985 `background_transparent_valid' fields.
15986 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15987 calculating it here. Set IMG's background_transparent field.
15988 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15989 (enum png_keyword_index): Add PNG_BACKGROUND.
15990 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15991 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15992 (enum gif_keyword_index): Add GIF_BACKGROUND.
15993 (enum gs_keyword_index): Add GS_BACKGROUND.
15994 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
15995 Pre-calculate image background color where necessary.
15996 (x_create_x_image_and_pixmap, xbm_load, gs_load):
15997 Use display info's n_cbits entry for screen depth.
15998 (Fx_show_tip): Remove unused variables `buffer', `top',
15999 `left', `max_width' and `max_height'.
60a653f1 16000
048addec 16001 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 16002
048addec 160032001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 16004
048addec 16005 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 16006
048addec 160072001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16008
048addec 16009 * frame.c (Fframe_live_p): Doc fix.
60a653f1 16010
048addec 160112001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 16012
048addec
JD
16013 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
16014 (message_dolog_marker3): New static variables hold three markers.
16015 (syms_of_xdisp): Initialize and staticpro them.
16016 (message_dolog): Use message_dolog_marker1..3 instead of
16017 allocating markers each time. Unchain them when done.
60a653f1 16018
048addec 160192001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 16020
048addec 16021 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 16022
048addec 160232001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 16024
048addec 16025 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 16026
048addec 160272001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 16028
048addec 16029 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 16030
048addec 160312001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 16032
048addec 16033 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 16034
048addec 160352001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 16036
048addec
JD
16037 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
16038 with invalid position.
60a653f1 16039
048addec 160402001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 16041
048addec 16042 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 16043
048addec
JD
16044 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
16045 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
16046 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 16047
048addec 16048 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 16049
048addec 160502001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16051
048addec
JD
16052 * fileio.c (build_annotations): Split off the tail.
16053 (build_annotations_2): New fun. Extracted from build_annotations.
16054 (Fwrite_region): Split the call to build_annotations into two
16055 calls to build_annotations and build_annotations_2.
077907d4 16056
048addec 160572001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 16058
048addec
JD
16059 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
16060 clear_waiting_for_input with argument.
1756e2fb 16061
048addec 16062 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 16063
048addec 16064 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 16065
048addec 16066 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 16067
048addec 16068 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 16069
048addec 160702001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 16071
048addec
JD
16072 * fileio.c (choose_write_coding_system): New fun, extracted
16073 from Fwrite_region.
16074 (Fwrite_region): Use it.
fa336b91 16075
048addec
JD
16076 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
16077 (funcall_lambda, run_hook_with_args): Make static and add prototype.
16078 (ml_apply, find_handler_clause): Add prototype.
fa336b91 16079
048addec 160802001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 16081
048addec 16082 * config.in: Add #undef HAVE_COFF_H.
fa336b91 16083
048addec
JD
16084 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
16085 Required for ISC 4.1.
fa336b91 16086
048addec 160872001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 16088
048addec
JD
16089 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
16090 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 16091
048addec 160922001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 16093
048addec
JD
16094 The following changes are made to clean up the various internal
16095 references to the fringes to actually use the term `fringe' for
16096 them. Previously, they were called `flags areas', `bitmap areas',
16097 `left/right side of windows', or implicitly as `flags' or
16098 `bitmaps':
fa336b91 16099
048addec 16100 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 16101 Comments fixed. Use renamed symbols.
06e8f738 16102
f63fd14e 16103 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 16104
048addec
JD
16105 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
16106 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
16107 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 16108
048addec 16109 * msdos.c: Comment fix.
9ce647f4 16110
048addec 16111 * w32fns.c: Use renamed symbols.
9b784ab8 16112
f63fd14e 16113 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
16114 (fringe_bitmap_type): Renamed from bitmap_type.
16115 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
16116 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
16117 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 16118
f63fd14e 16119 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
16120 (fringes_extra): Renamed from flags_areas_extra.
16121 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
16122 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
16123 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
16124 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
16125 (FRAME_X_LEFT_FRINGE_WIDTH):
16126 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
16127 (FRAME_X_RIGHT_FRINGE_WIDTH):
16128 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 16129
048addec 16130 * widget.c: Use renamed symbols.
9f7e52b4 16131
f63fd14e 16132 * window.c: Comment fixes. Use renamed symbols.
048addec 16133 (coordinates-in-window-p): Doc fix.
fa336b91 16134
f63fd14e 16135 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 16136
048addec 16137 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 16138
048addec 16139 * xfns.c: Use renamed symbols.
89512fcd 16140
f63fd14e 16141 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
16142 (fringe_bitmap_type): Renamed from bitmap_type.
16143 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
16144 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
16145 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 16146
f63fd14e 16147 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
16148 (fringes_extra): Renamed from flags_areas_extra.
16149 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
16150 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
16151 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
16152 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
16153 (FRAME_X_LEFT_FRINGE_WIDTH):
16154 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
16155 (FRAME_X_RIGHT_FRINGE_WIDTH):
16156 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
16157
161582001-11-15 Jason Rumney <jasonr@gnu.org>
16159
16160 * w32menu.c (add-menu-item): Make help_echo and radio buttons
16161 work for most menu items. From David Ponce
16162 <david.ponce@wanadoo.fr>.
16163
161642001-11-15 Gerd Moellmann <gerd@gnu.org>
16165
16166 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
16167 Some x_set_* function expect to be called even if old and new
16168 value are equal.
16169
16170 * xdisp.c (build_desired_tool_bar_string): Accept zero
16171 tool_bar_button_relief.
16172
16173 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
16174
16175 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
16176
16177 * xterm.c (x_draw_bar_cursor): If the background color of the
16178 glyph under the cursor equals the frame's cursor color, use
16179 the glyph's foreground color for drawing the bar cursor.
16180
16181 * dispnew.c (direct_output_forward_char): Fix character/byte
16182 position comparison.
7d18891d 16183
048addec 161842001-11-15 Miles Bader <miles@gnu.org>
d2936d21 16185
048addec
JD
16186 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
16187 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
16188 Update arguments to find_field.
16189 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
16190 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
16191 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
16192 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 16193
048addec 161942001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 16195
048addec 16196 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 16197
048addec
JD
16198 * dispextern.h (image_background, image_background_transparent):
16199 Conditionalize on HAVE_X_WINDOWS.
7d18891d 16200
048addec 162012001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 16202
048addec 16203 * print.c (Fprin1_to_string): Doc fix.
7d18891d 16204
048addec 16205 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 16206
048addec 16207 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 16208
048addec 16209 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 16210
048addec 16211 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 16212
048addec 16213 * eval.c (syms_of_eval): Doc fix.
7d18891d 16214
048addec 16215 * coding.c (syms_of_coding): Doc fix.
7d18891d 16216
048addec 16217 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 16218
048addec 16219 * dispnew.c (syms_of_display): Doc fix.
9474c847 16220
048addec 16221 * category.c (Fget_unused_category): Doc fix.
9474c847 16222
048addec 16223 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 16224
048addec 162252001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 16226
048addec 16227 * print.c (prin1, print): Doc fix.
e3059a5d 16228
048addec 162292001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 16230
048addec
JD
16231 * fontset.h: Remove declarations of variables
16232 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 16233
048addec
JD
16234 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
16235 `Vclip_large_size_font'.
eae936e2 16236
048addec 162372001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 16238
048addec 16239 * w32fns.c: Doc fix.
ddb67bdc 16240
048addec 162412001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 16242
048addec 16243 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 16244
048addec 16245 * fns.c: Doc fix.
6e1b91d7 16246
048addec 16247 * emacs.c: Doc fix.
1c1d3d69 16248
048addec 16249 * coding.c: Doc fix.
1c1d3d69 16250
048addec
JD
16251 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
16252 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
16253 `new style' [w/`doc:' keyword].
b6f4c7ba 16254
048addec 162552001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 16256
048addec
JD
16257 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
16258 LeaveNotify events. Only FocusIn and FocusOut do that now.
16259 (x_display_and_set_cursor): Do display hollow cursors in active
16260 minibuffer windows when they are not selected.
b6f4c7ba 16261
048addec 162622001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 16263
048addec 16264 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
16265 * w32term.c: Change doc-string comments to `new style'
16266 [w/`doc:' keyword]. Doc fixes.
a89f435d 16267
048addec
JD
16268 * w32fns.c: Don't define max.
16269 (Fx_open_connection): Only execute once.
a4cd0cd7 16270
048addec 162712001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 16272
048addec
JD
16273 * ccl.c: Change macros to use do-while block instead of if-else.
16274 Use braces to follow GNU Coding Standards.
eafb659a 16275
048addec 162762001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 16277
048addec 16278 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 16279
048addec 16280 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 16281
048addec
JD
16282 * insdel.c (replace_range): Use adjust_markers_for_replace
16283 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 16284
78819ebb 16285 * intervals.h (set_text_properties, set_text_properties_1): Declare.
a4cd0cd7 16286
048addec
JD
16287 * textprop.c (set_text_properties_1): New subroutine
16288 broken out of set_text_properties.
16289 (set_text_properties): Use set_text_properties_1.
91823618 16290
048addec
JD
16291 * intervals.c (graft_intervals_into_buffer):
16292 Use set_text_properties_1 to clear out properties.
91823618 16293
048addec
JD
16294 * search.c (Freplace_match): Use replace_range to insert
16295 and delete. Don't request property inheritance from
16296 surrounding text.
86928dfb 16297
048addec 162982001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 16299
048addec 16300 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 16301 vertical fonts. Allow them if face name is explicitly specified.
048addec 16302 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 16303
048addec 163042001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 16305
048addec
JD
16306 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
16307 instead of malloc/free.
a78e0303 16308
048addec 163092001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 16310
048addec
JD
16311 * xfaces.c (merge_face_vectors): Use braces to follow GNU
16312 Coding Standards.
16313 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 16314
048addec 16315 * buffer.c (Fbury_buffer): Likewise.
0c99b139 16316
048addec 16317 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 16318
048addec
JD
16319 * coding.c (encode_coding): Use precomputed value of `src'.
16320 (encode_coding): Remove unused variable `src_end'.
16321 (code_convert_region): Remove unused variables `count'.
830ddd77 16322
048addec 163232001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 16324
048addec
JD
16325 * w32term.c (x_display_and_set_cursor): Do not move system caret
16326 if cursor_glyph is NULL.
55c6d645 16327
048addec 163282001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 16329
048addec 16330 * keymap.c (access_keymap): Fix compilation error.
5de38842 16331
048addec 163322001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 16333
048addec 16334 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 16335
048addec 163362001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 16337
048addec
JD
16338 * intervals.c (graft_intervals_into_buffer):
16339 Remove #ifdef'd-out code.
16340 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 16341
048addec
JD
16342 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
16343 code (eval-current-buffer).
16344 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 16345
048addec 163462001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 16347
048addec 16348 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 16349
048addec 163502001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 16351
048addec 16352 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 16353
048addec
JD
16354 * keyboard.c (make_lispy_event): Check integerness and fix
16355 Lisp_Object/int mixup.
17893c65 16356
048addec 163572001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 16358
048addec 16359 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 16360
048addec
JD
16361 * fontset.c (fontset_font_pattern): Remove unused variable
16362 `family_registry'.
d5360cc7 16363
048addec 16364 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 16365
048addec 163662001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 16367
048addec 16368 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 16369
048addec
JD
16370 * buffer.c (Fkill_buffer): Don't delete auto save file
16371 if buffer is modified.
d9d54213 16372
048addec 163732001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 16374
048addec
JD
16375 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
16376 CHECK_NUMBER_CDR.
b116830b 16377
048addec 163782001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 16379
048addec 16380 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 16381
048addec 163822001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 16383
048addec 16384 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 16385
048addec 163862001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 16387
048addec 16388 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 16389
048addec 163902001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 16391
048addec
JD
16392 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
16393 the program image directly.
982f6c7e 16394
048addec 163952001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 16396
048addec 16397 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 16398
048addec 163992001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 16400
048addec
JD
16401 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
16402 and CHECK_BUFFER.
d31053f9 16403
048addec
JD
16404 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
16405 (record_char): Likewise.
d31053f9 16406
048addec
JD
16407 * keyboard.c (make_lispy_event): Don't insist a drag event must
16408 move to a different buffer position. Instead, check for moving at
16409 least double_click_fuzz.
982f6c7e 16410
048addec 16411 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 16412
048addec 16413 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 16414
048addec
JD
16415 * indent.c (current_column_1, Fmove_to_column): Separate the code
16416 for display-table glyphs from the code for buffer text, to fix
16417 bugs in the former.
830047fd 16418
048addec 164192001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 16420
048addec
JD
16421 * buffer.c (Fbuffer_local_value): New function.
16422 (syms_of_buffer): Defsubr it.
2df5238c 16423
048addec
JD
16424 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
16425 value of `cursor-in-non-selected-windows'.
4e397688 16426
048addec
JD
16427 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
16428 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
16429 (syms_of_xdisp): Initialize it.
48b0f3ae 16430
048addec 164312001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 16432
048addec 16433 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 16434
048addec
JD
16435 * coding.c: Change doc-string comments to `new style' [w/`doc:'
16436 keyword].
3ecaf7e5 16437
048addec
JD
16438 * eval.c (top_level_value, top_level_set): Remove commented and
16439 #ifdef'd-out code.
16440 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 16441
048addec 164422001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 16443
048addec 16444 * xfns.c: Include unistd.h, if it exists.
8db2e33b 16445
048addec 16446 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 16447
048addec 16448 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 16449
048addec 164502001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 16451
048addec
JD
16452 * lisp.h (CHECK_STRING_CAR): New macro.
16453 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
16454 treating XCAR and XCDR as lvalues.
16455 (openp): Use CHECK_STRING_CAR.
16456 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 16457
048addec 164582001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 16459
048addec
JD
16460 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
16461 (SIGMASKTYPE): Define.
1b1acc13 16462
048addec 16463 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 16464
048addec 164652001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 16466
048addec
JD
16467 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
16468 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
16469 Fix typos in comments.
6cb16f95 16470
048addec
JD
16471 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
16472 and #ifdef'd-out code.
16473 Fix and reindent comments.
6cb16f95 16474
048addec 16475 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 16476
048addec
JD
16477 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
16478 argument `i' in macros.
6cb16f95 16479
048addec
JD
16480 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
16481 `i' in macros.
7e9d3c2f 16482
048addec
JD
16483 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
16484 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
16485 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
16486 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
16487 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
16488 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
16489 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
16490 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
16491 in macros.
7e9d3c2f 16492
048addec
JD
16493 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16494 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
16495 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
16496 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
16497 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
16498 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
16499 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
16500 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
16501 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
16502 (remove unused second argument).
7e9d3c2f 16503
048addec 165042001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 16505
048addec
JD
16506 * syntax.c (describe_syntax): New wrapper.
16507 (Finternal_describe_syntax_value): Rename from describe_syntax.
16508 Don't insert space at front and \n at the end.
16509 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 16510
048addec
JD
16511 * regex.c (re_wctype): Try to fix some warnings.
16512 (regcomp, regexec): Don't forget the __restrict.
9ba48103 16513
048addec 165142001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 16515
048addec 16516 * textprop.c (Fget_char_property): Doc fix.
9ba48103 16517
048addec 165182001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 16519
048addec 16520 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 16521
048addec 16522 * data.c (Fsetq_default): Ditto.
c22e59e1 16523
048addec 16524 * callint.c (Finteractive): Ditto.
9271ed2c 16525
048addec 165262001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 16527
048addec
JD
16528 * macros.c: Don't include keymap.h any more.
16529
165302001-11-01 Richard M. Stallman <rms@gnu.org>
16531
16532 * data.c (Fmake_local_variable): Doc fix.
16533
16534 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
16535 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 16536
048addec 16537 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
16538 bindings along with or instead of the buffer local map.
16539 Make the overriding maps override what they should.
16540
f00691a3 165412001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
16542
16543 * window.c (grow_mini_window): Fix typo in comment.
16544
27188d11
GM
165452001-11-01 Gerd Moellmann <gerd@gnu.org>
16546
7b49b9d2
GM
16547 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
16548 (XTset_vertical_scroll_bar): Likewise.
16549
43f7c3ea
GM
16550 * xfns.c (x_build_heuristic_mask): Use four_corners_best
16551 instead of IMAGE_BACKGROUND.
c22e59e1 16552
b350c2e5
GM
16553 * xfns.c (four_corners_best): Reindent.
16554
c22e59e1 16555 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
16556 Handle :box so that it is possible to specify sexprs.
16557
bf00d461
EZ
165582001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
16559
16560 * s/hpux11.h: New file.
16561
f00691a3 165622001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 16563
2b209b97
PJ
16564 * emacs.c (USAGE1): Show command line option --no-window-system
16565 instead of --no-windows in usage.
16566 (standard_args): Rename --no-windows to --no-window-system.
16567 (bug_reporting_address): Follow Emacs coding conventions.
16568
9dbc9081
PJ
16569 * eval.c (Fcommandp): Doc fix.
16570 Change doc-string comments to `new style' [w/`doc:' keyword].
16571
4e10df59
PJ
16572 * frame.c (Fframe_live_p): Doc fix.
16573
16574 * buffer.c (selective-display-ellipses): Doc fix.
16575
dd387b25
GM
165762001-10-31 Gerd Moellmann <gerd@gnu.org>
16577
fe957e65
GM
16578 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
16579
dd387b25
GM
16580 * xfaces.c (realize_x_face): If C is not a single-byte character,
16581 set the face's colors_copied_bitwise_p instead of the defaulted_p
16582 members which have a different meaning.
16583 (free_face_colors): Do nothing for a face whose colors have been
16584 copied bitwise.
16585
c22e59e1 16586 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 16587
f00691a3 165882001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 16589
687784e8
PJ
16590 * marker.c, mocklisp.c: Change doc-string comments to `new style'
16591 [w/`doc:' keyword].
2e1280f8 16592
b9d9a9b9
GM
165932001-10-31 Gerd Moellmann <gerd@gnu.org>
16594
16595 * fns.c (require_unwind): Return Lisp_Object.
16596
f00691a3 165972001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 16598
fa1361cb
PJ
16599 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
16600 (last-input-char): Revert doc-string to be the same as the
16601 doc-string of `last-input-event'.
16602
6c465a15 16603 * xdisp.c: Fix typos in comments.
48400103 16604
eafa3196
GM
166052001-10-31 Gerd Moellmann <gerd@gnu.org>
16606
16607 * window.c (grow_mini_window): Handle case that the root
16608 window is already smaller than the nominal mininum height.
16609
747d3f2a
SM
166102001-10-30 Stefan Monnier <monnier@cs.yale.edu>
16611
bf9bb76f
SM
16612 * emacs.c (main): Don't call keys_of_macros any more.
16613
16614 * lisp.h (keys_of_macros): Remove.
16615
16616 * macros.c (keys_of_macros): Remove.
16617
747d3f2a
SM
16618 * xfaces.c (Fface_attribute_relative_p): Declare args.
16619
5e905a57
JR
166202001-10-30 Jason Rumney <jasonr@gnu.org>
16621
16622 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
16623 (enum_font_cb2): Ignore fonts with vertical orientation.
16624
3a426197
RS
166252001-10-30 Richard M. Stallman <rms@gnu.org>
16626
16627 * keyboard.c (Finput_pending_p): Doc fix.
16628
a742d646
GM
166292001-10-30 Gerd Moellmann <gerd@gnu.org>
16630
259cf6bc
GM
16631 * xterm.c (x_after_update_window_line): Don't run the code
16632 clearing in borders for rows whose visible height is 0.
16633
3f99f948
GM
16634 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
16635 resized_p flag is set. If not set, use the much less flickering
16636 method previously used.
16637
16638 * dispnew.c (change_frame_size_1): Set frame's resized_p.
16639
16640 * frame.h (struct frame) <resized_p>: New member.
16641
b4a3be43
GM
16642 * lread.c (to_multibyte): Ensure read_buffer is at least twice
16643 as large as the number of bytes to convert.
747d3f2a 16644
a742d646
GM
16645 * lread.c (to_multibyte): New function.
16646 (read1): Use it.
16647
cacbb9e9
EZ
166482001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
16649
16650 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
16651
99cb6b2f
GM
166522001-10-30 Gerd Moellmann <gerd@gnu.org>
16653
327f42ee 16654 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
16655 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
16656 if the row's fill_line_p is set and drawing the last glyph with
16657 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 16658
99cb6b2f
GM
16659 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
16660
8e8223e2
SM
166612001-10-29 Stefan Monnier <monnier@cs.yale.edu>
16662
16663 * xmenu.c: Include coding.h and charset.h.
16664 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
16665 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
16666 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
16667 Explicitly set wv->help. Use `TRUE' rather than `True'.
16668 (menu_help_callback): Use empty_string.
16669
16670 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
16671 (Fx_popup_dialog): Explicitly init f.
16672 (w32_menu_display_help): Use empty_string.
16673
4d083a8f
RS
166742001-10-29 Richard M. Stallman <rms@gnu.org>
16675
b2304472
RS
16676 * fns.c (Frequire): Detect recursive try to require the same
16677 feature 3 or more levels deep, and get error.
16678 (require_unwind): New subroutine.
16679 (require_nesting_list): New variable.
16680 (syms_of_fns): Init and staticpro it.
16681
4d083a8f
RS
16682 * print.c (print_object): Clarify indication of insertion type.
16683
2fe41216
EZ
166842001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
16685
90480000
EZ
16686 * coding.c (syms_of_coding): Document that locale-coding-system is
16687 used for decoding input on X.
16688
2fe41216
EZ
16689 * window.c (Fscroll_left, Fscroll_right): Doc fix.
16690
f00691a3 166912001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
16692
16693 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
16694 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
16695
60ebcfe8
GM
166962001-10-29 Gerd Moellmann <gerd@gnu.org>
16697
9a7bdceb
GM
16698 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
16699 use NO_CURSOR if cursor_in_non_selected_windows is false.
16700
3f08fcd2
GM
16701 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
16702 the slant attribute if FRAME is t.
16703
0ccfdad2
GM
16704 * xfns.c (x_set_internal_border_width): Set frame garbaged
16705 when X window doesn't exist yet.
16706
ef253080
GM
16707 * xterm.c (x_after_update_window_line): Clear internal border
16708 in different circumstances.
b116830b 16709
60ebcfe8
GM
16710 * xterm.c (XTread_socket) <KeyPress>: Don't use
16711 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
16712 <handa@etl.go.jp>.
16713
73d25f9c
EZ
167142001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
16715
16716 * m/ibms390.h: New file. From Adam Thornton
16717 <athornton@sinenomine.net>.
16718
cac1daf0
GM
167192001-10-28 Gerd Moellmann <gerd@gnu.org>
16720
053b3256 16721 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 16722
cac1daf0
GM
16723 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
16724 a loop counter.
16725
f00691a3 167262001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 16727
f9711de4 16728 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 16729
4707d2d0
PJ
16730 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
16731 keyword].
16732 Fix typos in comments.
b116830b 16733
d883731c
PJ
16734 * emacs.c (bug_reporting_address): New function.
16735 Use it when displaying usage message.
16736
04012254
PJ
16737 * minibuf.c (read_minibuf): Remove unused external declaration of
16738 variable `Qread_only'.
16739
13b1a09c
PJ
16740 * keymap.c (access_keymap): Remove unused variable `charset'.
16741
5bbf4378
MB
167422001-10-28 Miles Bader <miles@gnu.org>
16743
16744 * xfaces.c (merge_face_heights): Handle TO being relative as well.
16745 Remove #ifdef'd-out code.
16746 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
16747 (syms_of_xfaces): Initialize them.
16748
1ce1e4ee
JR
167492001-10-27 Jason Rumney <jasonr@gnu.org>
16750
16751 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
16752 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
16753 position using the system caret.
16754
16755 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
16756 (w32_system_caret_height, w32_system_caret_x)
16757 (w32_system_caret_y): New variables for tracking system caret.
16758 (w32_initialize): Initialize them.
c2d53558 16759 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 16760
c2d53558
SM
16761 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
16762 New messages types.
1ce1e4ee
JR
16763
16764 * w32term.c (note_mouse_highlight): Clear old help_echo.
16765
f00691a3 167662001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 16767
bb4600a4
PJ
16768 * xterm.c: Fix typo in a comment.
16769
7db35a48
PJ
16770 * emacs.c: Fix typos in comments.
16771 Remove unnecessary spaces.
16772 Change doc-string comments to `new style' [w/`doc:' keyword].
16773 (USAGE2): Fix typos in usage string.
16774
a7248e4f
PJ
16775 * xterm.c: Fix typo in a comment.
16776
4e30ce42
PJ
16777 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
16778 emacs.c.
16779
62725a92
GM
167802001-10-27 Gerd Moellmann <gerd@gnu.org>
16781
798dbe1f 16782 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 16783 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
16784 farther backward when target_y was not reached.
16785
62725a92
GM
16786 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
16787 Display errno only if non-zero.
16788 (sound_warning): New function.
16789 (vox_configure): Don't treat failing to set sample rate as error.
16790 (various places): Improve error messages.
16791
d4e34d24
EZ
167922001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
16793
944e6f60
EZ
16794 * fileio.c (Faccess_file): Run the argument filename through
16795 Fexpand_file_name, before using it.
16796
d4e34d24
EZ
16797 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
16798 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
16799
38d2af0c
GM
168002001-10-26 Gerd Moellmann <gerd@gnu.org>
16801
da80a8d5
GM
16802 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
16803
38d2af0c
GM
16804 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
16805 Fix clearing in the case of scroll bars on the right.
c2d53558 16806
45de4a6f 168072001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
16808
16809 * w32gui.h (XImage): Add a dummy typedef.
16810
fbd5ceb2
GM
168112001-10-26 Gerd Moellmann <gerd@gnu.org>
16812
c2d53558 16813 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 16814
b23236fb
EZ
168152001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
16816
16817 * frame.c (Fframe_parameter): Fix last change.
16818
5d991fc4
EZ
16819 * fileio.c: Revert last change (which removed old commented-out
16820 version of expand-file-name). Add a comment that explains why
16821 this old version should not be removed.
16822
879eadc3
GM
168232001-10-25 Gerd Moellmann <gerd@gnu.org>
16824
75700ff2
GM
16825 * frame.c (Fframe_parameter): Fix a bug whereby some
16826 ``artificial'' frame parameters, like `minibuffer' were not
16827 obtained by calling Fframe_parameters.
16828
dfe92a6a
GM
16829 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
16830 cursor differently.
16831
879eadc3
GM
16832 * xdisp.c (move_it_vertically_backward): Compute line height
16833 differently. Add heuristic to try to be more compatible to 20.x.
16834
e1010ebe
SM
168352001-10-25 Stefan Monnier <monnier@cs.yale.edu>
16836
d73a471b
SM
16837 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
16838
d6da5a06
GM
16839 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
16840 boolean.
e1010ebe 16841
f66bd220
MB
168422001-10-25 Miles Bader <miles@gnu.org>
16843
16844 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
16845 BG is a pointer to a structure, not a structure.
16846 (gif_format, png_format): Add missing commas.
16847
d436d538
RS
168482001-10-24 Richard M. Stallman <rms@gnu.org>
16849
16850 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 16851 (syms_of_xfaces): Defsubr it.
d436d538 16852
f00691a3 168532001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
16854
16855 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
16856 variable `area'.
16857
f00691a3 168582001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 16859
c2d53558 16860 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 16861
e2a57b34
MB
168622001-10-25 Miles Bader <miles@gnu.org>
16863
16864 * dispextern.h (struct image): Add `background',
16865 `background_valid', and `background_transparent' fields.
16866 (image_background, image_background_transparent): New declarations.
16867 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
16868 * xfns.c (image_background, image_background_transparent)
16869 (four_corners_best): New functions.
c2d53558 16870 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
16871 (gs_format): Add `:background' entry.
16872 (lookup_image): Set IMG's background color if specified.
16873 (pbm_load, xbm_load_image, png_load): Set IMG's background field
16874 when appropriate.
16875 (x_clear_image_1): Reset `background_valid' and
16876 `background_transparent_valid' fields.
16877 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
16878 calculating it here. Set IMG's background_transparent field.
16879 (enum xpm_keyword_index): Add XPM_BACKGROUND.
16880 (enum png_keyword_index): Add PNG_BACKGROUND.
16881 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
16882 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
16883 (enum gif_keyword_index): Add GIF_BACKGROUND.
16884 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 16885 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
16886 Pre-calculate image background color where necessary.
16887 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
16888 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
16889 color to use for image glyph reliefs.
16890
b547b6e8
GM
168912001-10-24 Gerd Moellmann <gerd@gnu.org>
16892
d9e3b8c6
GM
16893 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
16894 in full-width rows.
c2d53558 16895
b547b6e8
GM
16896 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
16897 Fix clearing of area not covered by scroll bar.
16898
f00691a3 168992001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
16900
16901 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
16902 and `real_start'.
c2d53558 16903 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
16904 (glyph_rect): Remove unused variable `area'.
16905
76cb5e06
GM
169062001-10-24 Gerd Moellmann <gerd@gnu.org>
16907
bdbdebff 16908 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
16909
16910 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
16911 (row_containing_pos): Take additional argument DY.
16912 Treat rows ending in middle of char differently.
62e33982
GM
16913 (display_line): Handle tabs on window systems differently.
16914
16915 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
16916 with additional argument.
16917
16918 * dispextern.h (row_containing_pos): Adjust prototype.
16919
76cb5e06
GM
16920 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
16921 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
16922 (try_window_id, try_window_reusing_current_matrix)
16923 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 16924 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 16925
f00691a3 169262001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 16927
c9e60620
PJ
16928 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
16929 gnuemacs).
16930 (HAVE_BOXES): Fix typo in comment.
16931 (push_menu_pane): Fix typo in comment.
16932
3b552d56
PJ
16933 * xdisp.c: (display_prop_string_p): Remove unused local declaration
16934 of `Qwhen'.
16935 (single_display_prop_string_p): Remove unused local declarations
16936 of `Qwhen' and `Qmargin'.
16937 (string_buffer_position): Remove unused variable `around'.
16938 (store_frame_title): Remove unused variable `width'.
16939
15c565ac
PJ
16940 * window.c: Don't define max.
16941 (coordinates_in_window): Remove unused variable `uy'.
16942
a8818eb9
PJ
16943 * widget.c: Don't define max.
16944
996fee11
PJ
16945 * process.c: Don't define max.
16946 (create_process): Remove unused variable `buffer'.
16947
496e1a5b
GM
169482001-10-23 Gerd Moellmann <gerd@gnu.org>
16949
c2d53558 16950 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 16951
5905ae8b
EZ
169522001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
16953
16954 * xfaces.c (Finternal_set_lisp_face_attribute)
16955 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
16956 frame is on a windowed display.
16957
24db49fb
GM
169582001-10-23 Gerd Moellmann <gerd@gnu.org>
16959
c2d53558
SM
16960 * dispnew.c (sync_window_with_frame_matrix_rows):
16961 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
16962 of marginal areas.
16963
c2d53558 16964 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 16965
f0487f05
EZ
169662001-10-23 Andreas Schwab <schwab@suse.de>
16967
16968 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
16969 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
16970
f0a48a01
GM
169712001-10-23 Gerd Moellmann <gerd@gnu.org>
16972
c2d53558 16973 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
16974 REAL_END. Notice if cursor gets overwritten.
16975 (notice_overwritten_cursor): Take X positions as parameters.
16976 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
16977 around call to x_draw_glyphs.
16978
f00691a3 169792001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 16980
fc11dff0
PJ
16981 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
16982 instead of C) and usage.
a50a10a0 16983
fc11dff0
PJ
16984 * editfns.c (char-to-string): Fix argument names (use CHAR instead
16985 of C) and usage.
a50a10a0
PJ
16986
16987 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
16988 `left', `max_width' and `max_height'.
16989
8738febd
GM
169902001-10-23 Gerd Moellmann <gerd@gnu.org>
16991
16992 * xdisp.c (display_line): For a tab continued to the next line,
16993 set row's ends_in_middle_of_char_p.
16994
653c329b
GM
169952001-10-22 Gerd Moellmann <gerd@gnu.org>
16996
16997 * xdisp.c (display_line): Fix computation of continuation lines
16998 width for TABs.
16999
f00691a3 170002001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 17001
7ba51063
PJ
17002 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
17003 `Qlaplace'.
17004
f958c5ac
PJ
17005 * fileio.c: Remove unused code.
17006
eb360291
MB
170072001-10-22 Miles Bader <miles@gnu.org>
17008
17009 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
17010 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
17011 Remove `DOC_STRINGS_IN_COMMENTS' cases.
17012
98515cf0
JR
170132001-10-21 Jason Rumney <jasonr@gnu.org>
17014
17015 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
17016
93026d88
EZ
170172001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
17018
17019 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
17020 (Finsert_string): Avoid the multi-line string literals warning.
17021
c9a95b79
MB
170222001-10-22 Miles Bader <miles@gnu.org>
17023
17024 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
17025 (Fdocumentation): Don't use it.
17026 (syms_of_doc): Don't initialize it.
17027
17028 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
17029 * print.c (Fwith_output_to_temp_buffer): Likewise.
17030 * window.c (Fsave_window_excursion): Likewise.
c2d53558 17031 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 17032 (Fsave_restriction): Likewise.
c2d53558
SM
17033 * eval.c (Frun_hooks, Frun_hook_with_args)
17034 (Frun_hook_with_args_until_failure)
17035 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
17036 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
17037 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
17038 (Funwind_protect, Fcondition_case): Likewise.
17039 * coding.c (Ffind_operation_coding_system): Likewise.
17040 * keyboard.c (Ftrack_mouse): Likewise.
17041
a3b10252
MB
170422001-10-21 Miles Bader <miles@gnu.org>
17043
c2d53558 17044 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
17045 (Fmake_hash_table): Add usage: string to doc string.
17046 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 17047 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
17048 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
17049 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
17050 (Fml_prefix_argument_loop): Likewise.
17051
f00691a3 170522001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 17053
c2d53558 17054 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 17055
c6f73eec
PJ
17056 * sysdep.c (init_sys_modes): Change doc-string comments to `new
17057 style' [w/`doc:' keyword].
17058
17059 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
17060 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
17061 comments to `new style' [w/`doc:' keyword].
17062
3cf3436e
JR
170632001-10-21 Jason Rumney <jasonr@gnu.org>
17064
17065 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
17066
c169b8f1
JR
17067 * w32term.c (remember_mouse_glyph): New function.
17068 (w32_mouse_position): Use it.
17069 (note_mouse_movement): If the mouse moved off the glyph, remember
17070 its new position.
c2d53558 17071
4fdd691b
JR
17072 * w32term.h (struct w32_output): Correct spelling of x_compatible.
17073 (w32_display_info): Add mouse_face_overlay.
17074
c169b8f1
JR
17075 * w32term.c (notice_overwritten_cursor): Renamed from
17076 note_overwritten_text_cursor. Rewritten to take glyph widths into
17077 account.
17078 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
17079 (fast_find_string_pos): New function.
17080 (fast_find_position): Return the correct vpos. Add parameter
17081 STOP. In the final row, stop before glyphs having STOP as object.
17082 Don't consider glyphs that are not from a buffer.
17083 (fast_find_position) [0]: Add a presumably more correct version
17084 for after 21.1.
17085 (expose_window_tree, expose_frame): Don't compute intersections here.
17086 (expose_window): Do it here instead.
17087 (expose_window_tree, expose_window, expose_line): Return 1 when
17088 overwriting mouse-face.
17089 (expose_window): If W is the window currently being updated, mark
17090 the frame garbaged.
17091 (expose_frame): If mouse-face was overwritten, redo it.
17092 (x_use_underline_position_properties): New variable.
17093 (syms_of_xterm): DEFVAR_BOOL it.
17094 (x_draw_glyph_string): Add comment to use it in future.
17095 (x_draw_glyph_string): Restore clipping after drawing box.
17096 Fix a computation of the underline position.
17097 (w32_get_glyph_string_clip_rect): Minor cleanup.
17098 (x_fill_stretch_glyph_string): Remove an assertion.
17099 (x_produce_glyphs): Don't convert multibyte characters
17100 to unibyte characters in unibyte buffers.
17101 (cursor_in_mouse_face_p): New function.
17102 (x_draw_stretch_glyph_string): Use it to choose a different GC
17103 when drawing a cursor within highlighted text. Don't draw
17104 background again if it has already been drawn.
17105 (x_draw_glyph_string_box): Don't draw a full-width
17106 box just because the glyph row's full_width_p flag is set.
17107 (x_draw_glyphs): Fix computation of rightmost x for
17108 full-width rows.
17109 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
17110 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 17111 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
17112 (x_update_window_end): Handle overwritten mouse face
17113 also for tool bar windows.
17114 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
17115 DRAW is DRAW_IMAGE_RAISED.
17116 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
17117 actually redrawn. Make the function static.
17118 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
17119 optimize away highlighting if we pass over that same overlay again.
17120 (note_mouse_highlight): Call mouse_face_overlay_overlaps
17121 to detect a case where we have to highlight a different region
17122 despite not having left the currently highlighted region.
17123 Set mouse_face_overlay in the x_display_info. Avoid changing the
17124 mouse pointer shape when show_mouse_face has already done it, or
17125 there is no need. Handle mouse-face and help-echo in strings.
17126 (glyph_rect): New function.
17127 (w32_mouse_position): Use it to raise the threshold for mouse
17128 movement event generation.
17129 (w32_initialize_display_info): Initialize the x_display_info's
17130 mouse_face_overlay.
17131 (w32_set_vertical_scroll_bar): Don't clear a zero height
17132 or width area.
17133 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
17134 a widget to zero height.
17135
3cf3436e 17136 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 17137 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
17138 equivalents in menu_items.
17139 (w32_menu_show): Don't overwrite an item's name with its key
17140 description in case the description is a multibyte string.
17141 (single_submenu): Some cleanup.
17142
17143 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
17144 (postprocess_image): New function.
17145 (lookup_image): Call it for all image types except PostScript.
17146 (x_kill_gs_process): Call postprocess_image.
17147 (tiff_error_handler, tiff_warning_handler): New functions.
17148 (tiff_load): Install them as handlers.
17149 (x_kill_gs_process): Recognize if someone has cleared the image
17150 cache under us.
17151 (valid_image_p): Protect better against invalid image
17152 specifications. Previous code could signal an error.
17153 (Fx_hide_tip, Fshow_tip): Doc fix.
17154 (Fv_max_tooltip_size): New variable.
17155 (syns_of_xfns): DEFVAR_LISP it.
17156 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 17157 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
17158 window_width. Use a maximum tooltip size specified by
17159 Vx_max_tooltip_size, if that has valid contents.
17160 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
17161 Make sure the tooltip is completely visible.
17162 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
17163 (Fx_create_frame): Adjust the frame's height for presence
17164 of the tool bar before calling x_figure_window_size.
17165 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
17166 when the window gets smaller.
17167 (x_set_foreground_color): Set frame's cursor_pixel.
17168 (x_set_foreground_color, x_set_background_color): Cleaned up.
17169 (x_set_font): Handle case of x_new_fontset returning the same name
17170 as before, although there was a change in fontsets.
17171
386ca361
MB
171722001-10-21 Miles Bader <miles@gnu.org>
17173
c2d53558 17174 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
17175 (Flogxor): Add usage: string to doc string.
17176 * charset.c (Fstring): Likewise.
17177 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
17178 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
17179
f00691a3 171802001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 17181
03be2694
PJ
17182 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
17183
17184 * alloc.c: Reindent DEFUNs with doc: keywords.
17185
17186 * abbrev.c (Finsert_abbrev_table_description): Reindent.
17187
14ff1ee0
PJ
17188 * frame.c: Change doc-string comments to `new style' [w/`doc:'
17189 keyword].
17190
2f147815 17191See ChangeLog.9 for earlier changes.
6922b018
KH
17192
17193;; Local Variables:
49b3bd82 17194;; coding: iso-2022-7bit
6922b018 17195;; End:
2a34a036 17196
2f147815 17197 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
17198 Copying and distribution of this file, with or without modification,
17199 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
17200
17201;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4