*** empty log message ***
[bpt/emacs.git] / src / ChangeLog
CommitLineData
c10bb00a
KS
12005-02-10 Kim F. Storm <storm@cua.dk>
2
3 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
4 if it moves outside window or it doesn't display text.
5
9ca0f64a
KS
62005-02-09 Kim F. Storm <storm@cua.dk>
7
8 * undo.c (Fprimitive_undo): Check that undo function does not
9 switch buffer.
10
b8d6f4af
JD
112005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12
13 * xselect.c (selection_data_to_lisp_data): For the special case
14 type == XA_ATOM, data contains array of int, not array of Atom.
15 (x_property_data_to_lisp, selection_data_to_lisp_data): Comment
16 update: data must be array of int for format == 32.
17
3419757d
SM
182005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
19
20 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
21
3a441526
JD
222005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
23
fc34503b
JD
24 * xfns.c (Fx_change_window_property): Use long array when format is 32.
25 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
26 convert long array returned from XGetWindowProperty to an int array.
bae45dc3
JD
27 (x_set_tool_bar_lines): Check that width and height is greater than
28 zero before clearing area.
fc34503b
JD
29
30 * xselect.c (x_reply_selection_request): Pass long array to
31 XChangeProperty so that 64 bit longs are handeled correctly.
32 (x_get_window_property): If format is 32 and long is bigger than 32
33 bits convert data from XGetWindowProperty from long array to int array.
34 (lisp_data_to_selection_data): When the input is a vector and the
35 format is 32, allocate a long array even if long is bigger than 32 bits.
36 (x_fill_property_data): Use char, short and long as the man page
37 for XChangeProperty specifies. This way the data returned is OK for
38 both 32 and 64 bit machines.
39 (x_handle_dnd_message): Calculate size correctly even for 64 bit
40 machines.
41 (Fx_send_client_event): Undo change from 2005-02-05,
42 x_fill_property_data now handles that case.
43
3419757d 44 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3a441526
JD
45 reason for the approach in the code.
46
82ec225b
KS
472005-02-07 Kim F. Storm <storm@cua.dk>
48
49 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
50
ba2c991c
RS
512005-02-06 Richard M. Stallman <rms@gnu.org>
52
53 * eval.c (Frun_hook_with_args)
54 (Frun_hook_with_args_until_success)
55 (Frun_hook_with_args_until_failure): Doc fixes.
56
e120ea40
AS
572005-02-05 Andreas Schwab <schwab@suse.de>
58
3419757d 59 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
e120ea40 60
31f16913
JD
612005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
62
63 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
64 the longs in a XClientMessageEvent correctly when long is 64 bits.
65
6082a820
EZ
662005-02-05 Eli Zaretskii <eliz@gnu.org>
67
68 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
69 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
70
0e95095b
JD
712005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
72
73 * xmenu.c (menubar_selection_callback): Force out GTK buffered
74 events so the menu event comes after them. This is to prevent sit-for
75 from exiting on buffered events directly after a menu selection,
76 lisp code for Help => About Emacs uses sit-for.
77
78 * gtkutil.c (create_menus): Connect selection-done event instead of
79 the deactivate event to deactivate_cb. This will make the last
80 leave event come before the call to deactivate_cb, so the leave
81 event does not make sit-for exit after a menu selection.
82
5bb6a3c1
KS
832005-02-03 Kim F. Storm <storm@cua.dk>
84
85 * dispnew.c (build_frame_matrix_from_leaf_window)
86 [!GLYPH_DEBUG]: Fix xassert.
87
88 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
89
90 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
91
e9859e26
YM
922005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
93
94 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
95 the compiling OS version.
96
97 * macfns.c (x_create_tip_frame): Likewise.
98
3419757d 99 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
e9859e26 100
4e07258f
RS
1012005-02-03 Richard M. Stallman <rms@gnu.org>
102
103 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
104
105 * xdisp.c (echo_area_display): Clear echo_message_buffer.
106
107 * buffer.c (Fbury_buffer): Doc fix.
108
4a34b529
ST
1092005-02-02 Steven Tamm <steventamm@mac.com>
110
f6c62d96
ST
111 * macfns.c (unwind_create_frame): Fixing compile error due to
112 xassert being uncondition, but predicate is.
4a34b529 113 * dispnew.c (update_window): Fixing compile error due to
f6c62d96 114 xassert being uncondition, but predicate is.
4a34b529 115
d78f30b8
MB
1162005-02-02 Miles Bader <miles@gnu.org>
117
118 * dispextern.h (xassert): Enable unconditionally.
119
b044278d
KS
1202005-02-02 Kim F. Storm <storm@cua.dk>
121
122 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
123
56072160
KH
1242005-02-02 Kenichi Handa <handa@m17n.org>
125
126 * casefiddle.c (casify_object): Enable changing characters of
127 different byte length.
128 (casify_region): Fix loop condition, args to replace_range_2, and
129 update opoint_byte.
130
131 * insdel.c (replace_range_2): Fix bugs in adjusting markers and
132 point.
133
5e1674c5
KS
1342005-02-01 Kim F. Storm <storm@cua.dk>
135
136 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
137 stack before calling handle_display_prop.
138
fb89c330
KS
1392005-01-31 Kim F. Storm <storm@cua.dk>
140
141 * undo.c (Qapply): New lisp var.
142 (syms_of_undo): Intern and staticpro it.
143 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
144 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
145
146 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
147
7bf72fa6
JH
1482005-01-30 Jesper Harder <harder@phys.au.dk>
149
a050b1a9
KS
150 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
151 <mac-emulate-three-button-mouse>: Fix docstring indentation.
7bf72fa6 152
03c64f2e
LT
1532005-01-29 Luc Teirlinck <teirllm@auburn.edu>
154
155 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
6de38aa3 156 Increase value to 3 Meg.
03c64f2e 157
49b8b5dc
JD
1582005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
159
160 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
161 button events are not received otherwise.
162
5a92a9eb
RS
1632005-01-29 Richard M. Stallman <rms@gnu.org>
164
165 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
166
167 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
168
5c243ee4
SM
1692005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
170
171 * keymap.c (access_keymap): YAILOM.
172
caf533af
KS
1732005-01-27 Kim F. Storm <storm@cua.dk>
174
175 * xdisp.c (get_phys_cursor_geometry): New function to calculate
176 phys cursor position and size for hollow cursor. Position is
177 aligned with get_glyph_string_clip_rect and ensures that a hollow
178 cursor is shown, even when the actual glyph is not visible.
179
180 * dispextern.h (get_phys_cursor_geometry): Add prototype.
181
182 * xterm.c (x_clip_to_row): Ensure y >= 0.
183 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
184
185 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
186
187 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
188
043f7f73
SM
1892005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
190
191 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
192
889f3641
KS
1932005-01-27 Kim F. Storm <storm@cua.dk>
194
195 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
196 glyph, even when row is only partially visible and actual cursor
197 position is not visible.
198
29099c2f
RS
1992005-01-24 Richard M. Stallman <rms@gnu.org>
200
201 * xterm.c (x_error_quitter): No longer static, and moved after
202 x_error_handler.
203
6adb6f01
KS
2042005-01-24 Kim F. Storm <storm@cua.dk>
205
206 * xdisp.c (move_it_by_lines): If we move forward after going too
207 far back, cancel move if end position is same as start position.
208
4d904fa0
ST
2092005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
210
211 * dispextern.h (struct glyph_string): New members clip_head and
212 clip_tail.
6adb6f01 213
4d904fa0
ST
214 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
215 region to the area between clip_head and clip_tail.
216 (draw_glyphs): Record the area that need to be actually redrawn to
217 the new variables clip_head and clip_tail when there are
218 overhangs. Set values of these variables to the corresponding
219 members in struct glyph_string. Refine x coordinates for
220 notice_overwritten_cursor using clip_head and clip_tail.
6adb6f01 221
4d904fa0
ST
222 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
223
224 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
225 QDTextBounds.
226 (x_draw_glyph_string): Don't fill the background of the successor
6adb6f01 227 of a glyph with a right overhang if the successor will draw a cursor.
4d904fa0 228 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
6adb6f01 229 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4d904fa0 230
f2417699
KS
2312005-01-24 Kim F. Storm <storm@cua.dk>
232
6f67f013
KS
233 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
234 direction if window height was smaller than next-screen-context-lines.
235 Now always scroll at least one line in the requested direction.
236 Ensure that we actually do scroll backwards when requested to do so.
237
f2417699
KS
238 * xdisp.c (redisplay_window): Only try to make cursor line fully
239 visible once (to avoid redisplay loop).
240
a354b72c
KS
2412005-01-23 Kim F. Storm <storm@cua.dk>
242
6b3d88f7 243 * window.c (Fpos_visible_in_window_p): Simplify return value for
8f958b40 244 partially visible rows.
6b3d88f7
KS
245 (window_scroll_pixel_based): Adapt to that change.
246
5c20cae2
KS
247 * window.c (window_scroll_pixel_based): Force moving to next line
248 if scrolling doesn't move start point, e.g. if looking at tall image.
249
a354b72c 250 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
5c20cae2
KS
251 Clear last_height before calling line_bottom_y to get real height.
252 Fix calculation of y.
a354b72c 253
d9e7c622
ST
2542005-01-22 Steven Tamm <steventamm@mac.com>
255
256 * s/darwin.h: Removed PTY_ITERATION from here.
043f7f73 257 (DARWIN): Define.
d9e7c622
ST
258 * process.c (init_process): Default process-connection-type to
259 nil on darwin 6 or less, t if it is 7 or higher. This way the
260 broken pty behavior is still allowed on darwin 6 for interactive
261 processes for people that know what they are doing.
262
d00e399a
KS
2632005-01-22 Kim F. Storm <storm@cua.dk>
264
265 * window.c (auto_window_vscroll_p): New boolean.
266 (syms_of_window): DEFVAR_BOOL it.
267 (Fpos_visible_in_window_p): Extend return value to include RTOP
268 and RBOT values if FULLY is nil.
269 (window_scroll_pixel_based): Adjust vscroll for partially visible
270 rows if auto_window_vscroll_p is set.
271 (Fset_window_vscroll): Do nothing if vscroll is not modified.
272
273 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
274 to return number of partially invisible pixels at top and bottom
275 of the dislay row at POS.
276
277 * lisp.h (pos_visible_p): Fix prototype.
278
f95a20e7
RS
2792005-01-21 Richard M. Stallman <rms@gnu.org>
280
281 * fileio.c (Fcopy_file): Doc fix.
282
eee141ce
JD
2832005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
284
285 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
286 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
287 start of function for older compilers.
288
6f771c32
RS
2892005-01-20 Richard M. Stallman <rms@gnu.org>
290
291 * editfns.c (Fmessage): If arg is "", return "" (as before).
292
293 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
294
295 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
296 variable.
297
a15252fd
ST
2982005-01-20 Steven Tamm <steventamm@mac.com>
299
043f7f73 300 * editfns.c (Voperating_system_release): Add.
a15252fd
ST
301 (init_editfns): Assign new variable operating-system-release
302 based on call to uname if available.
043f7f73 303 (get_operating_system_release): Add function to
d00e399a 304 allow c-level access to operating system release.
a15252fd
ST
305
306 * config.h: Regenerated.
307
043f7f73
SM
308 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
309 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
a15252fd
ST
310 using ptys as '7'.
311
3d6a4b2d
KS
3122005-01-20 Kim F. Storm <storm@cua.dk>
313
62fc9b0f
KS
314 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
315
c310aca4
KS
316 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
317 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
318
319 * macterm.c (x_draw_glyph_string_box): Likewise.
320
321 * w32term.c (x_draw_glyph_string_box): Likewise.
322
3d6a4b2d
KS
323 * indent.c (Fvertical_motion): Temporarily disable selective display.
324
27c8be45
KS
3252005-01-19 Kim F. Storm <storm@cua.dk>
326
77db5cf3
KS
327 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
328 image property.
329
27c8be45
KS
330 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
331
81f498dc
KS
3322005-01-18 Kim F. Storm <storm@cua.dk>
333
334 * xdisp.c (fast_find_position): Backtrack to find first row if
335 charpos is inside a display overlay that spans multiple lines.
336
1cdb0707
KH
3372005-01-18 Kenichi Handa <handa@m17n.org>
338
339 * coding.c (decode_coding_iso2022): Translate invalid codes if
340 translation-table is specified.
341
677159ce
KS
3422005-01-18 Kim F. Storm <storm@cua.dk>
343
344 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
345 change. If handle_display_prop indicates newline is replaced by
346 image or text, move back to start of relevant overlay or interval
347 and continue scan from there. Simplify.
348
977284cc
KS
3492005-01-17 Kim F. Storm <storm@cua.dk>
350
043f7f73
SM
351 * dispnew.c (mode_line_string, marginal_area_string):
352 Fix off-by-one error in search for glyph.
977284cc 353
e24531b7
KS
3542005-01-16 Kim F. Storm <storm@cua.dk>
355
356 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
357
5ddd7664
ST
3582005-01-16 Steven Tamm <steventamm@mac.com>
359
043f7f73 360 * macterm.c (mac_to_x_fontname): Remove spurious argument.
5ddd7664 361
fc2ff44b
AS
3622005-01-16 Andreas Schwab <schwab@suse.de>
363
364 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
365
50af5100
JD
3662005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
367
368 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
369 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
370
a2d5fca0
JD
3712005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
372
373 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
e24531b7
KS
374 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
375 New flags for readable_events.
043f7f73 376 (get_filtered_input_pending, readable_filtered_events): Remove.
a2d5fca0
JD
377 (tracking_off): Call readable_events and get_input_pending with
378 flag READABLE_EVENTS_DO_TIMERS_NOW.
379 (readable_events): Move code from old readable_filtered_events here,
380 but check new READABLE_EVENTS_* in argument flags instead of previous
381 two boolean arguments do_timers_now and filter_events.
382 If we are doing mouse tracking and the mouse moved, return only if
383 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
384 (swallow_events): Call get_input_pending with flag
385 READABLE_EVENTS_DO_TIMERS_NOW.
e24531b7 386 (get_input_pending): Move code from old get_filtered_input_pending
a2d5fca0
JD
387 here. Replace boolean arguments do_timers_now, filter_events with
388 flags, and pass flags to readable_events. Document new
389 READABLE_EVENTS_* flags.
390 (detect_input_pending_ignore_squeezables): New function.
391 (detect_input_pending_run_timers): Call get_input_pending with flag
392 READABLE_EVENTS_DO_TIMERS_NOW.
393 (Finput_pending_p): Call get_input_pending with flags
394 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
395
396 * dispnew.c (update_window, update_frame_1): Replace calls to
397 detect_input_pending with detect_input_pending_ignore_squeezables
e24531b7 398 so that redisplay is not paused if the event queue contains only
a2d5fca0
JD
399 mouse movements.
400
401 * lisp.h: Declare detect_input_pending_ignore_squeezables.
402
42afbcda
ST
4032005-01-15 Steven Tamm <steventamm@mac.com>
404
e24531b7
KS
405 * macterm.c (Vmac_use_core_graphics): Declare variable for
406 mac-allow-anti-aliasing.
407 (syms_of_macterm): DEFVAR_LISP and initialize it.
743d0696 408 (mac_draw_string_common): Use core graphics text rendering if
0530c679 409 mac-allow-anti-aliasing is enabled.
743d0696 410
42afbcda
ST
411 * macfns.c (Fx_file_dialog): Save As dialog includes only the
412 file name in the text box.
413
9cdd4884
ST
4142005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
415
043f7f73
SM
416 * macfns.c (x_set_foreground_color, x_set_background_color):
417 Sync with xfns.c.
9cdd4884
ST
418 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
419 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
420 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
421
88948d55
KS
4222005-01-14 Kim F. Storm <storm@cua.dk>
423
424 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
425
20d6de82
RS
4262005-01-13 Richard M. Stallman <rms@gnu.org>
427
428 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
429 if Voverriding_terminal_local_map is non-nil.
430
431 * keyboard.c (syms_of_keyboard): Doc fix.
432
f75a592e
KS
4332005-01-13 Kim F. Storm <storm@cua.dk>
434
435 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
436 (specify 0 for FACE instead). Reorder arg list. Doc fix.
437
28f94a34
RS
4382005-01-12 Richard M. Stallman <rms@gnu.org>
439
440 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
441 face property for characters that don't specify one.
442
443 * fns.c (Frequire): Record in load-history unconditionally.
444
57a230b1
KS
4452005-01-10 Kim F. Storm <storm@cua.dk>
446
447 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
448
449 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
450 Callers changed.
451 Add support to merge with lisp face id too (if face_name is t).
452
453 * xdisp.c (get_next_display_element, next_element_from_display_vector):
454 Don't lookup lface_id from display table glyphs here; instead use
455 merge_faces to merge the lisp face id into current face.
456
8ab2c119
KS
4572005-01-09 Kim F. Storm <storm@cua.dk>
458
459 * dispextern.h (struct it): New member dpvec_face_id.
460 (merge_into_realized_face): Add prototype.
461
462 * xfaces.c (merge_into_realized_face): New function. Used to
463 merge escape-glyph face or face from display table into current face.
464
465 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
466 (syms_of_xdisp): DEFVAR_LISP it.
467 (escape_glyph_face): Remove var.
468 (redisplay_window): Don't initialize it.
469 (setup_for_ellipsis, get_next_display_element):
470 Set it->dpvec_face_id to -1.
471 (get_next_display_element): Test Vshow_nonbreak_escape.
472 Do not setup escape_glyph_face.
473 Properly merge escape-glyph face or face from display table with
043f7f73
SM
474 current face for escape and control characters.
475 Set it->dpvec_face_id to relevant face id instead of adding it to each
8ab2c119
KS
476 element of display vector.
477 (next_element_from_display_vector): If it->dpvec_face_id is set,
478 use that instead of lface_id from glyph itself.
479
e0910857
JD
4802005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
481
482 * xterm.h (struct x_output): New member, toolbar_detached.
483
484 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
485 38.
486 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
487 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
488 (xg_create_tool_bar): Initialize toolbar_detached.
489 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
490 toolbar_detached is zero.
491
ff59904a
JD
4922005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
493
9b85e63d
JD
494 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
495 gtk_menu_popup if not for_click, so callbacks for the menu are called.
496
ff59904a
JD
497 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
498 (xg_tool_bar_callback, xg_tool_bar_help_callback)
043f7f73 499 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
ff59904a
JD
500
501 * xselect.c (x_get_foreign_selection, x_fill_property_data)
8ab2c119 502 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
ff59904a
JD
503 XFLOAT_DATA to get extract number from Lisp object.
504
f9a23a6f
KS
5052005-01-07 Kim F. Storm <storm@cua.dk>
506
507 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
508 Set stop_charpos to current charpos instead of 0.
509
28f94a34
RS
5102005-01-06 Nick Roberts <nickrob@snap.net.nz>
511
512 * xdisp.c (Fformat_mode_line): First arg now required.
513
a6fffcdc
ST
5142005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
515
516 * macterm.c (XLoadQueryFont): Correctly handle 0 size
517 font widths that are returned from some Japanese fonts.
518
c35b0c6b
KS
5192005-01-06 Kim F. Storm <storm@cua.dk>
520
521 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
522 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
523 (destroy_fringe_bitmap): Set fringe_faces element to nil.
524 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
525 fringe_faces array and init elements to nil.
526 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
527 non-persistent face id.
528 (mark_fringe_data): New function for GC.
529
530 * alloc.c (mark_fringe_data): Declare extern.
531 (Fgarbage_collect): Call mark_fringe_data.
532
533 * alloc.c (overrun_check_free): Invalidate freed memory if
534 XMALLOC_CLEAR_FREE_MEMORY is defined.
535
e0e76ab9
ST
5362005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
537
538 * macfns.c: Include sys/param.h.
539 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
540 and function.
541 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
542 of filename string. Set event callback function when creating
543 dialog boxes. Add code conversions for filenames. Don't dispose
544 apple event descriptor record if failed to create it.
545
546 * macterm.c: Include sys/param.h.
547 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
548 kEventWindowUpdate.
549 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
550 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
551 of FSSpec from apple event descriptor record.
552 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
553 size of filename string.
554 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
555 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
556 file dialog is in action.
043f7f73
SM
557 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
558 Reject only when there are no filename items. Set background color
e0e76ab9
ST
559 before (un)highlighting the window below the dragged items.
560 (XTread_socket) [!USE_CARBON_EVENTS]: Don't call do_window_update.
561
043bc640
KH
5622005-01-05 Romain Francoise <romain@orebokech.com>
563
564 * term.c (encode_terminal_code): Fix buffer size computation.
565
dd496df6
RS
5662005-01-04 Richard M. Stallman <rms@gnu.org>
567
568 * xdisp.c (Fformat_mode_line): Doc fix.
569
026cdede
SM
5702005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
571
572 * alloc.c (refill_memory_reserve): Move.
573 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
574 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
575
d57c7572
RS
5762005-01-03 Richard M. Stallman <rms@gnu.org>
577
578 * window.c (window_scroll_pixel_based): Don't correct preserve_y
579 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
580
b14f868c
JR
5812005-01-03 Jason Rumney <jasonr@gnu.org>
582
583 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
584 fontp->space_width to FONT_WIDTH so they are valid.
585
586 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
587 average width. Set fontp->average_width and fontp->space_width to
588 their appropriate values.
589
590 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
591 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
592 fontp->space_width.
593
e169f939
ST
5942005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
595
596 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
597 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
598 metrics for max and min bounds.
599 (x_load_font): Correctly calculate average font width metrics.
600
19996af4
RS
6012005-01-02 Richard M. Stallman <rms@gnu.org>
602
603 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
604
42d02da0
JD
6052004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
606
607 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
608
1db7dd46
RS
6092004-12-31 Richard M. Stallman <rms@gnu.org>
610
b437860a
RS
611 * xdisp.c (setup_for_ellipsis, get_next_display_element):
612 Set it->ellipsis_p to 1 or 0.
613 (display_line): Record whether row ends in mid-ellipsis.
614 (set_cursor_from_row): If ends in ellipsis. find start of it.
615 (cursor_row_p): If PT's at the end of the ellipsis the row
616 ends within, don't display cursor on this row.
617
618 * dispextern.h (struct it): New element ellipsis_p.
619 (struct glyph_row): New element ends_in_ellipsis_p.
620
621 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
622 position if we're reading from something other than the buffer.
623
1db7dd46
RS
624 * window.c (window_scroll_pixel_based): Only look at
625 Vscroll_preserve_screen_position if the old PT can't be kept.
626 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
627
1225f637
KS
6282004-12-30 Kim F. Storm <storm@cua.dk>
629
630 * xdisp.c (get_line_height_property): New function extracted from
631 original calc_line_height_property.
632 (calc_line_height_property): Rework. Handle t and (nil . ratio).
633 (x_produce_glyphs): Use them to handle line-height and
634 line-spacing according to new height spec.
635 (Qtotal): Remove.
33b2f4ea 636 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
1225f637 637
c243063e
KH
6382004-12-30 Kenichi Handa <handa@m17n.org>
639
640 * fileio.c (Finsert_file_contents): Don't use
641 current_buffer->buffer_file_coding_system even if REPLACE is
043f7f73 642 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
c243063e
KH
643
644 * fontset.h (struct font_info): New members space_width and
645 average_width.
646
647 * frame.h (struct frame): New member space_width.
648 (FRAME_SPACE_WIDTH): New macro.
649
650 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
651
652 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
653 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
b14f868c 654 fontp->space_width.
043f7f73 655 (x_load_font): Calculate fontp->space_width and fontp->average_width.
c243063e
KH
656 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
657
658 * xdisp.c (x_produce_glyphs): Calculate tab width by
659 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
660
456e761b
ST
6612004-12-29 Sanghyuk Suh <han9kin@mac.com>
662
663 * macterm.c (SelectionRange): Add Xcode position apple event struct.
043f7f73 664 (do_ae_open_documents): Handle Xcode-style file position open events.
456e761b 665
188577ce
LT
6662004-12-29 Luc Teirlinck <teirllm@auburn.edu>
667
668 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
669
99ec74b9
RS
6702004-12-29 Richard M. Stallman <rms@gnu.org>
671
672 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
673
30c92fab
ST
6742004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
675
676 * macfns.c (install_window_handler): Modify extern to return OSErr
677 value.
678 (mac_window): Handle return value of install_window_handler.
679
680 * macterm.c (reflect_byte): Remove function.
681 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
682 Lookup table instead.
683 (mac_do_font_lists): Simplify calculation of the longest
684 nonspecial string.
685 (init_mac_drag_n_drop): Remove function and declaration.
686 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
687 init_mac_drag_n_drop.
688 (mac_do_track_drag): New function and declaration.
689 (install_window_handler): Return OSErr value.
043f7f73
SM
690 (install_window_handler) [TARGET_API_MAC_CARBON]:
691 Register handlers for tracking/receiving drag-and-drop items.
30c92fab 692 (do_ae_open_documents): Generate unibyte strings for filenames.
5c243ee4
SM
693<<<<<<< ChangeLog
694 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
695 Reject only non-filename items. Set event modifiers and return value.
696=======
043f7f73
SM
697 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
698 Reject only non-filename items. Set event modifiers, and return value.
5c243ee4 699>>>>>>> 1.4187
30c92fab 700
4b982924
DN
7012004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
702
703 * coding.c (decode_coding): Fix previous change.
704
93fdf45f
RS
7052004-12-28 Richard M. Stallman <rms@gnu.org>
706
707 * xdisp.c (back_to_previous_visible_line_start):
708 Don't call handle_display_prop.
709
5bdca8af
DN
7102004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
711
712 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
713 (decode_coding_emacs_mule, encode_coding_emacs_mule)
714 (decode_coding_iso2022, encode_designation_at_bol)
715 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
716 (decode_coding): Constify arguments and local vars.
717
33385c6f
JD
7182004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
719
720 * xmenu.c (popup_get_selection): Only pop down dialogs
721 on C-g and Escape.
95bdef2e 722 (popup_get_selection): Remove parameter down_on_keypress.
043f7f73
SM
723 (create_and_show_popup_menu, create_and_show_dialog):
724 Remove parameter down_on_keypress to popup_get_selection.
33385c6f 725
b15325b2
ST
7262004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
727
728 * dispextern.h: Change HAVE_CARBON to MAC_OS.
729 (struct glyph_string): Likewise.
a2c7e69a 730
b15325b2
ST
731 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
732 mac_initialize.
a2c7e69a 733
b15325b2
ST
734 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
735 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
a2c7e69a 736
b15325b2 737 * fns.c (vector): Change MAC_OSX to MAC_OS.
a2c7e69a 738
b15325b2
ST
739 * frame.c (x_set_frame_parameters, x_report_frame_params)
740 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
043f7f73
SM
741 (x_set_border_width, Vdefault_frame_scroll_bars):
742 Change HAVE_CARBON to MAC_OS.
a2c7e69a 743
b15325b2
ST
744 * image.c [MAC_OS]: Include sys/stat.h.
745 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
746 QuickTimeComponents.h.
a2c7e69a 747
b15325b2
ST
748 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
749 [!MAC_OSX] (select): Use mac_wait_next_event.
043f7f73 750 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
b15325b2
ST
751 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
752 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
753 (mac_clear_font_name_table): Add extern.
754 (Fmac_clear_font_name_table): New defun.
755 (syms_of_mac): Defsubr it.
756 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
757 [MAC_OSX] (select_and_poll_event): New function.
758 [MAC_OSX] (sys_select): Use it.
759 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
760 [MAC_OSX && SELECT_USE_CFSOCKET]
761 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
762 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
763 RunLoop for simultaneously monitoring two kinds of inputs, window
764 events and process outputs, without periodically polling.
a2c7e69a 765
b15325b2
ST
766 * macfns.c (mac_initialized): Remove extern.
767 (stricmp): Put in #if 0. All callers changed to use xstricmp in
768 xfaces.c.
043f7f73
SM
769 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
770 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
b15325b2
ST
771 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
772 (mac_get_rdb_resource): New function (from w32reg.c).
773 (x_get_string_resource): Use it.
774 (install_window_handler): Add extern.
775 (mac_window): New function.
043f7f73
SM
776 (Fx_create_frame): Use it instead of make_mac_frame.
777 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
b15325b2
ST
778 (Fx_open_connection, Fx_close_connection): New defuns.
779 (syms_of_macfns): Defsubr them.
043f7f73
SM
780 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
781 Add kWindowNoUpdatesAttribute to the window attribute.
b15325b2
ST
782 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
783 (x_create_tip_frame): Don't call ShowWindow.
784 (Fx_show_tip): Call ShowWindow.
785 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
786 TARGET_API_MAC_CARBON'.
787 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
788 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
a2c7e69a 789
043f7f73 790 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
b15325b2
ST
791 (Window): Typedef to WindowPtr and move outside `#if
792 TARGET_API_MAC_CARBON'.
793 (XSizeHints): New struct.
a2c7e69a 794
b15325b2
ST
795 * macterm.c (x_update_begin, x_update_end)
796 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
797 frame.
798 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
799 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
800 (construct_mouse_click): Put in #if 0.
801 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
802 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
803 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
804 (activate_scroll_bars, deactivate_scroll_bars)
805 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
806 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
807 if the position is neither user-specified nor program-specified.
808 (x_free_frame_resources): Free size_hints.
5c243ee4
SM
809<<<<<<< ChangeLog
810 (x_wm_set_size_hint): Allocate size_hints if needed.
811 Set size_hints.
812=======
043f7f73 813 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
5c243ee4 814>>>>>>> 1.4187
b15325b2
ST
815 (mac_clear_font_name_table): New function.
816 (mac_do_list_fonts): Initialize font_name_table if needed.
817 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
818 around mac_do_list_fonts.
819 (mac_unload_font): New function.
820 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
821 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
822 and definitions with #if TARGET_API_MAC_CARBON.
823 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
824 (install_window_handler): Add decl.
825 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
826 window. Use UpdateControls. Get the rectangle that should be
827 updated and restrict the target of expose_frame to it.
043f7f73 828 (do_grow_window): Set minimum height/width according to size_hints.
b15325b2
ST
829 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
830 (do_zoom_window): Don't use x_set_window_size.
831 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
832 (install_window_handler): New function.
833 [!USE_CARBON_EVENTS] (mouse_region): New variable.
834 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
835 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
836 GetEventDispatcherTarget inside BLOCK_INPUT.
837 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
838 Update mouse_region when mouse is moved.
839 (make_mac_frame): Remove.
043f7f73
SM
840 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
841 Initialize mouse pointer shapes. Change values of f->left_pos and
842 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
843 Don't call ShowWindow.
b15325b2
ST
844 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
845 Vinvocation_name and Vsystem_name.
846 (mac_make_rdb): New function (from w32term.c).
847 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
848 already been opened. Don't pass argument to
849 mac_initialize_display_info. Don't set dpyinfo->height/width.
850 Add entries to x_display_list and x_display_name_list.
851 (x_delete_display): New function.
852 (mac_initialize): Don't call mac_initialize_display_info.
a2c7e69a
KS
853 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
854
b15325b2
ST
855 * macterm.h (check_mac): Add extern.
856 (struct mac_output): New member size_hints.
857 (FRAME_SIZE_HINTS): New macro.
858 (mac_unload_font): Add extern.
a2c7e69a 859
b15325b2 860 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
a2c7e69a 861
b15325b2
ST
862 * xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.
863
92d2947b
RS
8642004-12-27 Richard M. Stallman <rms@gnu.org>
865
5c243ee4
SM
866<<<<<<< ChangeLog
867 * buffer.c (Fbuffer_disable_undo): Delete (moved to simple.el).
868=======
043f7f73 869 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
5c243ee4 870>>>>>>> 1.4187
ebbd14f1
RS
871 (syms_of_buffer): Don't defsubr it.
872
873 * process.c (list_processes_1): Set undo_list instead
874 of calling Fbuffer_disable_undo.
875
043f7f73 876 * xdisp.c (single_display_spec_string_p): Rename from
92d2947b 877 single_display_prop_string_p.
043f7f73 878 (single_display_spec_intangible_p): Rename from
92d2947b 879 single_display_prop_intangible_p.
043f7f73 880 (handle_single_display_spec): Rename from handle_single_display_prop.
92d2947b
RS
881 Rewritten to be easier to understand.
882
a2c7e69a 883 Change in load-history format. Functions now get (defun . NAME),
92d2947b
RS
884 and variables get just NAME.
885
886 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
887
888 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
889 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
890 (Qdefvar): Var deleted.
891 (syms_of_eval): Don't initialze it.
892
893 * lread.c (syms_of_lread) <load-history>: Doc fix.
894
9f6fcdc5
JD
8952004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
896
897 * xmenu.c (popup_get_selection): Pop down on C-g.
898 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
899 pops down menu on C-g.
900 (xdialog_show): If dialog popped down and no button in the dialog was
901 pushed, call Fsignal to quit.
902 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
903 Fsignal to quit.
904
905 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
906
907 * gtkutil.c (xg_initialize): Install bindings for C-g so that
908 dialogs and menus pop down.
909
d8ca23a0
KH
9102004-12-27 Kenichi Handa <handa@m17n.org>
911
912 * coding.c (code_convert_region): Fix calculation of `ratio'.
913
857ae68b
JD
9142004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
915
133c0116
JD
916 * gtkutil.c (update_frame_tool_bar): Make the value of
917 tool-bar-button-margin control margins of images in tool bar.
918
857ae68b
JD
919 * alloc.c (check_depth): New variable.
920 (overrun_check_malloc, overrun_check_realloc): Only add
921 overhead and write check pattern if check_depth is 1 (to handle
922 recursive calls). Increase/decrease check_depth in entry/exit.
923 (overrun_check_free): Only check for overhead if check_depth is 1.
924 Increase/decrease check_depth in entry/exit.
925
bd55c35c
JD
9262004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
927
928 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
929 before touching input_available_clear_time, to avoid accessing it
930 from multiple threads.
931
66354420
JR
9322004-12-23 Jason Rumney <jasonr@gnu.org>
933
934 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
935 of JPEG library.
936
55f4edbc
RS
9372004-12-22 Richard M. Stallman <rms@gnu.org>
938
939 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
940
941 * lisp.h (Vundo_outer_limit): Fix decl.
942
943 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
944 Uses changed.
945 (syms_of_undo): Initialize appropriately.
946 (truncate_undo_list): If it's nil, there's no limit.
947
7a0ea9e3
KH
9482004-12-22 Kenichi Handa <handa@m17n.org>
949
950 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
951
fda2922a
RS
9522004-12-21 Richard M. Stallman <rms@gnu.org>
953
954 * eval.c (unwind_to_catch): Clear immediate_quit.
955
956 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
957 specially as `\ ' and `\-'.
958
959 * keyboard.c (kbd_buffer_store_event_hold):
960 In the code for while-no-input, handle immediate_quit.
961
962 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
963 Call that at the very start.
043f7f73 964 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
fda2922a
RS
965 (syms_of_alloc): Don't define undo-limit,
966 undo-strong-limit and undo-outer-limit here.
967
968 * undo.c (truncate_undo_list): Return void.
969 Take just one argument, the buffer.
970 Make it current, and inhibit recursive GC.
971 Access and update the undo list directly; return void.
972 Refer to the undo...limit variables directly.
973 Test undo_outer_limit only after counting the whole current command.
974 When it's exceeded, call the function in undo-outer-limit-function.
975 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
976 (Vundo_outer_limit_function): New variable.
977 (syms_of_undo): Define undo-limit, undo-strong-limit
978 and undo-outer-limit here, and undo-outer-limit-function.
979 Doc fixes.
980
981 * lisp.h (truncate_undo_list): Update decl.
982
9832004-12-21 Piet van Oostrum <piet@cs.uu.nl>
984
985 * fileio.c (Fread_file_name): Delete duplicates in
986 file-name-history when history_delete_duplicates is true.
987
68c69027
ST
9882004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
989
990 * macterm.c (mac_do_list_fonts): Fix memory leak
991
134579f2
RS
9922004-12-20 Richard M. Stallman <rms@gnu.org>
993
994 * regex.c (re_match_2_internal) <symend, wordend>:
995 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
996
fbe6152f
ST
9972004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
998
043f7f73
SM
999 * macterm.c (endif, x_font_name_to_mac_font_name):
1000 Use maccentraleurroman instead of maccentraleuropean
fbe6152f
ST
1001 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
1002 quickly finding a specific font without needing regexps.
1003
fecad3f6
JD
10042004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1005
333f1b6f
JD
1006 * syssignal.h: Declare main_thread.
1007 (SIGNAL_THREAD_CHECK): New macro.
1008
1009 * keyboard.c (input_available_signal): Move thread checking code
1010 to macro SIGNAL_THREAD_CHECK and call that macro.
1011 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
1012
1013 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
1014
1015 * emacs.c: Define main_thread.
1016 (main): Initialize main_thread.
1017 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
1018 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
1019
1020 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
1021
1022 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
1023
1024 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
1025
043f7f73
SM
1026 * process.c (send_process_trap, sigchld_handler):
1027 Call SIGNAL_THREAD_CHECK.
333f1b6f
JD
1028
1029 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
1030
1031 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
1032
fecad3f6
JD
1033 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
1034 returning when xg_ignore_gtk_scrollbar is true.
1035
2a84c6da
KS
10362004-12-14 Kim F. Storm <storm@cua.dk>
1037
1038 * keyboard.c (read_char): Save and restore echo_string when
1039 handling input method.
1040
d9c1ce9d
RS
10412004-12-13 Richard M. Stallman <rms@gnu.org>
1042
1043 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
1044
1045 * keyboard.c (Vthrow_on_input): New variable.
1046 (syms_of_keyboard): Defvar and initialize it.
1047 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
1048
1049 * lisp.h (QUIT): Check for Vthrow_on_input.
1050 (Vthrow_on_input): Declare it.
1051
a6495ed5
KS
10522004-12-13 Kim F. Storm <storm@cua.dk>
1053
1054 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
1055 vector.
1056
24a0e22f
RS
10572004-12-12 Richard M. Stallman <rms@gnu.org>
1058
1059 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
1060
1061 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
1062 (Ftry_completion): Really use outer `zero'; eliminate inner one.
1063
d6d31e57
KH
10642004-12-12 Kenichi Handa <handa@m17n.org>
1065
1066 * term.c (encode_terminal_code): Fix previous change.
1067
6f8ffb88
SM
10682004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
1069
fb6f5cbf
SM
1070 * keyboard.c (handle_async_input): Remove pthread mutex handling.
1071 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
1072
6f8ffb88
SM
1073 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
1074 in macro arguments.
1075
1076 * minibuf.c (Ftry_completion, Fall_completions): Don't use
1077 XFASTINT blindly.
1078
1079 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
1080
c83c9f9d
JD
10812004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1082
2f25767f
JD
1083 * w32term.c (x_calc_absolute_position): Remove calculation of
1084 difference between inner and outer window. Don't subtract difference
1085 for left and top calculations.
1086
c83c9f9d
JD
1087 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
1088 for left and top calculations. Remove call to x_real_positions.
24a0e22f 1089 [Bug report by Drew Adams in November]
c83c9f9d
JD
1090 (x_check_expected_move): Do not set change_gravity to 1 when calling
1091 x_set_offset.
1092
cc1caa4e
RS
10932004-12-08 Richard M. Stallman <rms@gnu.org>
1094
1095 * xdisp.c (get_next_display_element): Use `escape-glyph' for
1096 control chars and escaped octal codes.
1097 (Qescape_glyph): New variable.
1098 (syms_of_xdisp): Initialize it.
1099 (escape_glyph_face): New variable.
1100 (redisplay_window): Initialize it.
1101
e0e30823
RS
11022004-12-07 Paul Eggert <eggert@cs.ucla.edu>
1103
1104 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
1105 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
1106
f415cacd
JD
11072004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1108
cf435f39
JD
1109 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
1110 reset_malloc_hooks.
1111
6f8ffb88
SM
1112 * keyboard.c (handle_async_input, input_available_signal):
1113 Add ! defined (SYSTEM_MALLOC) around thread code.
cf435f39 1114
f415cacd
JD
1115 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
1116
043f7f73 11172004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
19b1f29a
SM
1118
1119 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
1120
1121 * config.in: Regenerate.
1122
ded997c1
JD
11232004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1124
453a4f1b
JD
1125 * xmenu.c (Fx_popup_menu): Correct documentation about position.
1126 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
1127 if not given by a mouse click to correspond with x-popup-menu
1128 documentation.
1129
9a38524c
JD
1130 * config.in: Regenerate.
1131
aa477689
JD
1132 * gtkutil.c: Include signal.h and syssignal.h.
1133 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
1134
1135 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
1136 new variables main_thread and alloc_mutex,
1137 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
1138 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
1139 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
1140 (UN)BLOCK_INPUT.
1141 (emacs_blocked_free, emacs_blocked_malloc)
1142 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
1143 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
1144 (reset_malloc_hooks): New function.
1145
1146 * lisp.h: Declare reset_malloc_hooks.
1147
1148 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
1149
1150 * keyboard.c: Conditionally include pthread.h
6f8ffb88 1151 (handle_async_input, input_available_signalt): If not in the main
aa477689
JD
1152 thread, block signal, send signal to main thread and return.
1153
ded997c1 1154 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
6f8ffb88 1155 Set current folder in file chooser if default_filename is a directory.
ded997c1 1156
c72b0edd
SM
11572004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
1158
1159 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
1160 Remove redundant correctness checks.
1161 (regex_compile): Fix up error codes for \{..\} expressions.
1162
c721eee5
RS
11632004-12-05 Richard M. Stallman <rms@gnu.org>
1164
1165 * regex.c (regex_compile): Fix end-of-pattern case for space.
1166
d8f96db8
ST
11672004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1168
6108209e
KS
1169 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
1170 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
d8f96db8 1171 crashes with invalid characters.
6108209e
KS
1172 * macmenu.c (add_menu_item): Use it.
1173 * image.c (image_load_quartz2d): Likewise.
1174 * macfns.c (x_set_name, x_set_title): Likewise.
1175 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
1176 creating them each time for labels.
d8f96db8 1177
ab67e8b6
RS
11782004-12-02 Richard M. Stallman <rms@gnu.org>
1179
1180 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
1181 don't use it here.
1182
1183 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
1184 (interactive_p): Skip Scalled_interactively_p frames
1185 like Sinteractive_p frames.
b8217ea6 1186 (unwind_to_catch): Clear handling_signal.
ab67e8b6
RS
1187
1188 * data.c (Fmake_variable_buffer_local): Doc fix.
1189 (Fmake_local_variable): Doc fix.
1190
1191 * insdel.c (insert_from_string_before_markers)
1192 (insert_from_string): Don't modify buffer on empty insertion.
1193
1194 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
1195
f86bdc80
ST
11962004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1197
1198 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
1199 menu text as UTF8 fails.
1200
1cae6d39
KS
12012004-12-01 Kim F. Storm <storm@cua.dk>
1202
1203 * alloc.c: Add commentary for last change.
1204 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
1205 sizeof(size_t) != 4.
1206 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
1207 Use them. Also clear header and trailer of freed memory.
1208 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
1209 (string_overrun_cookie): Rename from string_overrun_pattern.
1210 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
1211
77ea0764
AS
12122004-12-01 Andreas Schwab <schwab@suse.de>
1213
1214 * lisp.h: Declare string_to_multibyte.
1215
2d5cd4e6
KH
12162004-12-01 Kenichi Handa <handa@m17n.org>
1217
1218 * w32console.c (w32con_write_glyphs): Decide coding here.
1219 Adjusted for the change of encode_terminal_code.
1220
1221 * term.c (encode_terminal_code): Don't make it "static".
1222
25a0994a
KH
12232004-11-30 Kenichi Handa <handa@m17n.org>
1224
19b1f29a 1225 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
25a0994a 1226 (encode_terminal_code): Argument changed. Encode all
19b1f29a
SM
1227 characters at once, and return a pointer to the result of encoding.
1228 (write_glyphs): Decide coding here. Adjusted for the above change.
25a0994a
KH
1229 (insert_glyphs): Likewise.
1230 (term_init): Initialize encode_terminal_bufsize to 0.
1231
1232 * coding.c (Vcode_conversion_workbuf_name): New variable.
1233 (syms_of_coding): Initialize and staticpro it.
1234 (set_conversion_work_buffer): New function.
1235 (run_pre_post_conversion_on_str): Use it.
1236 (run_pre_write_conversin_on_c_str): New function.
1237
1238 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
1239
fc7a70cc
ST
12402004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1241
1242 * keyboard.c: Don't undef SIGIO
1243 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
1244 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
1245 (macfns.o): Don't depend on ccl.h.
1246 * macfns.c (mac_frame_parm_handlers): Set handlers for
1247 Qleft_fringe and Qright_fringe.
1248 * macterm.c (mac_fill_rectangle_to_pixmap)
1249 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
1250 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
1251 Put in #if 0.
1252 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
1253 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
1254 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
1255 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
1256 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
1257 XDrawImageString. Always draw background and foreground separately.
1258 (x_draw_image_foreground): Use clipping instead of computing the
1259 intersection rectangle.
1260 (x_draw_image_glyph_string): Don't draw an image with mask to a
1261 pixmap.
1262 (x_redisplay_interface): Set flush_display_optional member to 0.
1263 (XTread_socket): Correctly reset the TEConverter
1264 object.
1265
fc368889
KS
12662004-11-30 Kim F. Storm <storm@cua.dk>
1267
1268 * lisp.h: New defines to enable buffer overrun checking.
1269 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
1270 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
1271
1272 * alloc.c: Add more checks for buffer overruns.
1273 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
1274 xmalloc_overrun_check_trailer, overrun_check_malloc)
1275 overrun_check_realloc, overrun_check_free): Add.
1276 (GC_STRING_EXTRA, string_overrun_pattern): Add.
1277 (check_sblock, allocate_string_data, compact_small_strings):
1278 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
1279 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
1280 (check_string_free_list): Add.
1281 (allocate_string, sweep_strings): Call check_string_free_list.
1282
1283 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
1284 XMALLOC_OVERRUN_CHECK to avoid crash during load.
1285
0af8cfe1
KS
12862004-11-29 Kim F. Storm <storm@cua.dk>
1287
1288 * fns.c (concat): Use SAFE_ALLOCA.
1289
77220eeb
SM
12902004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
1291
1292 * sysdep.c (emacs_write): Don't use QUIT.
1293
a778cf63
KH
12942004-11-29 Kenichi Handa <handa@m17n.org>
1295
1296 * buffer.c (init_buffer): Set current_buffer->directory to a
1297 multibyte string made by string_to_multibyte.
1298
77220eeb 1299 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
a778cf63 1300
e3177e43
AS
13012004-11-27 Andreas Schwab <schwab@suse.de>
1302
1303 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
1304
1305 * s/gnu-linux.h: Enable no-op gcpros on ia64.
1306 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
1307
77220eeb
SM
1308 * filelock.c (lock_file_1): Call get_boot_time early.
1309 Increase buffer size.
e3177e43 1310
ca5e6fef
EZ
13112004-11-27 Eli Zaretskii <eliz@gnu.org>
1312
1313 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
1314 is not defined.
1315
e2811828
KS
13162004-11-27 Kim F. Storm <storm@cua.dk>
1317
1318 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
1319 marker out of doc string.
1320
7a262394
SM
13212004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
1322
1323 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
1324 which was not mentioned in the log.
1325
f33cc5a9
KS
13262004-11-26 Kim F. Storm <storm@cua.dk>
1327
048bb03f
KS
1328 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
1329 angle bitmaps at top/bottom line.
1330
f33cc5a9
KS
1331 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
1332 set it when it->method is set to next_element_from_display_vector.
1333 (setup_for_ellipsis): Add LEN argument. Callers changed.
1334 Set it->saved_face_id.
1335 (get_next_display_element): Use loop instead of recursion.
1336 Set it->saved_face_id. Combine duplicate code for ctr chars.
1337 (next_element_from_display_vector): Do not set it->saved_face_id.
1338 (next_element_from_ellipsis): Use setup_for_ellipsis.
1339
670e8906
EZ
13402004-11-26 Eli Zaretskii <eliz@gnu.org>
1341
1342 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
1343 prevent compiler warnings.
1344
275464e7
SM
13452004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
1346
1bf0e604
SM
1347 * keyboard.c (command_loop_1): Print a message describing the key
1348 the user just pressed when this key has no binding.
1349
275464e7
SM
1350 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
1351 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
1352
1353 * lread.c (readchar): Check QUIT when `getc' is interrupted.
1354
261b01c6
RS
13552004-11-24 Richard M. Stallman <rms@gnu.org>
1356
1357 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
1358
1359 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
1360
a5bd504e
KS
13612004-11-24 Kim F. Storm <storm@cua.dk>
1362
1363 * xdisp.c (move_it_in_display_line_to, display_line):
1364 Restore saved_face_id also when truncate-lines or hscrolled.
1365
255e4140
JD
13662004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1367
1368 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
1369 x-use-old-gtk-file-dialog.
1370
1371 * xfns.c: Define x_use_old_gtk_file_dialog.
1372 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
1373 outside ifdef USE_GTK.
1374
cab27d04
SM
13752004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
1376
1377 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
1378 Don't use XFASTINT blindly.
1379
1380 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
1381
1382 * indent.c (skip_invisible): Avoid non-idempotent side-effects
1383 in macro arguments.
1384
1385 * keymap.c (Flookup_key): Check INTEGERP before XINT.
1386
1387 * lread.c (oblookup): Don't use XFASTINT blindly.
1388
1389 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
1390 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
1391
11e0be49
KS
13922004-11-23 Kim F. Storm <storm@cua.dk>
1393
4d721114
KS
1394 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
1395 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
1396
11e0be49
KS
1397 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
1398 signal_p is zero and face name is unknown.
1399 (Fx_list_fonts): Don't signal error in lookup_named_face.
1400 (Fface_font): Signal error in lookup_named_face.
1401 (ascii_face_of_lisp_face): Likewise.
1402
1403 * dispextern.h (lookup_named_face): Fix prototype.
1404
1405 * xdisp.c (handle_single_display_prop): Don't signal error in
1406 lookup_named_face for unknown fringe face name.
1407 (highlight_trailing_whitespace): Don't signal error in
1408 lookup_named_face if trailing-whitespace face unknown.
1409 (calc_line_height_property): Don't signal error in
1410 lookup_named_face if specified face name is unknown.
1411
1412 * fringe.c (update_window_fringes): Show top row indicator if
1413 window has header-line. Don't show arrow at bob and eob
1414 if the boundary indicators are not used.
1415 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
1416
1417 * window.c (set_window_buffer): Clear display_error_modiff.
1418
0960a582
KS
14192004-11-22 Kim F. Storm <storm@cua.dk>
1420
1421 * fringe.c (update_window_fringes): Provide sensible fall-back
1422 value for non-nil indicate-buffer-boundaries setting.
1423
b0e9bb28
MR
14242004-11-22 Markus Rost <rost@ias.edu>
1425
1426 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
1427
d0bce91e
SM
14282004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
1429
1430 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
1431
e1814672
KS
14322004-11-21 Kim F. Storm <storm@cua.dk>
1433
b7fd3518
KS
1434 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
1435
1436 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
1437 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
1438
1439 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
1440 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
1441
1442 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
1443 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
1444
d0bce91e
SM
1445 * xdisp.c (move_it_in_display_line_to, display_line):
1446 Restore saved_face_id if overflow-newline-into-fringe is enabled and
1447 line is continued before or in middle of element from display vector.
f01d4d05 1448
f1a61389
KS
1449 * indent.c (Fvertical_motion): Fix last change. Use another
1450 method to detect if iterator moved too far ahead after reseat.
1451
e1814672
KS
1452 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
1453 expand matrix width for overflow in zero-width area.
1454 (append_glyph, append_composite_glyph, produce_image_glyph)
1455 (append_stretch_glyph): Use it to avoid loop in redisplay.
1456 (note_mode_line_or_margin_highlight): Don't let help-echo from
1457 string override help-echo from image map.
1458
2dafe1c9
LT
14592004-11-20 Luc Teirlinck <teirllm@auburn.edu>
1460
d0bce91e 1461 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
2dafe1c9
LT
1462 * callint.c (Fcall_interactively): Ditto.
1463
fd6866c8 14642004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
9961365e
RS
1465
1466 * minibuf.c (Fminibuffer_complete_and_exit):
1467 Fixup the case of the completed value, for case-indep completion.
1468
dedbac89
RS
14692004-11-20 Richard M. Stallman <rms@gnu.org>
1470
fd6866c8
RS
1471 * lisp.h (Fread_from_minibuffer): Add arg in decl.
1472
9d00469f 1473 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
ce8dd7ca 1474 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
9d00469f 1475
dedbac89 1476 * search.c (Vsearch_spaces_regexp):
d0bce91e 1477 Rename from Vsearch_whitespace_regexp. All uses changed.
dedbac89 1478
2f672bb5
TTN
14792004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
1480
1481 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
1482
f31a9a68
RS
14832004-11-19 Richard M. Stallman <rms@gnu.org>
1484
1485 * search.c (Vsearch_whitespace_regexp): New variable.
1486 (syms_of_search): Defvar it.
1487 (compile_pattern_1): Call re_set_whitespace_regexp with it.
1488 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
1489 is non-nil.
6de891db
RS
1490 (struct regexp_cache): New element whitespace_regexp.
1491 (syms_of_search): Initialize whitespace_regexp elements.
1492 (compile_pattern): Compare whitespace_regexp elements.
1493 (compile_pattern_1): Set whitespace_regexp elements.
f31a9a68
RS
1494
1495 * regex.c (regex_compile): Substitute whitespace_regexp
1496 for spaces, if it is nonzero.
1497 (whitespace_regexp): New variable.
1498 (re_set_whitespace_regexp): New function.
1499
cbc34cb3
KS
15002004-11-19 Kim F. Storm <storm@cua.dk>
1501
1502 * indent.c (Fvertical_motion): Fix last change.
1503
b54a7539
KS
15042004-11-18 Kim F. Storm <storm@cua.dk>
1505
1506 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
1507 Instead, move back again if reseating moves too far ahead.
1508
15092004-11-17 Luc Teirlinck <teirllm@auburn.edu>
802c6e56
LT
1510
1511 * xdisp.c (message3): Call clear_message.
1512
5ff504fe
KS
15132004-11-17 Kim F. Storm <storm@cua.dk>
1514
1515 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
1516
5ae53dcf
JD
15172004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1518
d0bce91e 1519 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
724cde0d 1520
6abf3a27 1521 * xmenu.c (x_menu_in_use): Remove.
5ae53dcf
JD
1522 (x_menu_set_in_use): Also set popup_activated_flag.
1523
5ff504fe 1524 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5ae53dcf
JD
1525 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
1526
6abf3a27 1527 * xterm.h: (x_menu_in_use): Remove.
5ae53dcf 1528
ee31cd78
RS
15292004-11-16 Richard M. Stallman <rms@gnu.org>
1530
6abf3a27
SM
1531 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
1532 Use map-keymap-internal to implement that.
ee31cd78
RS
1533
1534 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
1535
6abf3a27
SM
15362004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
1537
1538 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
1539 a window before using XWINDOW.
1540
1541 * window.c (make_window, Fselect_window, make_dummy_parent)
1542 (save_window_save):
1543 * frame.c (make_frame):
1544 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
1545
1546 * lisp.h (NILP): Use EQ rather than XFASTINT.
1547
b4d61105
KS
15482004-11-16 Kim F. Storm <storm@cua.dk>
1549
6abf3a27 1550 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
dda01a4c 1551
b4d61105
KS
1552 * indent.c (Fvertical_motion): Fix last change. Only reseat when
1553 moving backwards.
1554
15552004-11-16 Luc Teirlinck <teirllm@auburn.edu>
ce2bbf6a
LT
1556
1557 * dispextern.h: Extern reseat_at_previous_visible_line_start.
1558
ab5b02b0
KH
15592004-11-16 Kenichi Handa <handa@m17n.org>
1560
1561 * xdisp.c (display_mode_element): Fix previous change (calculate
1562 end position of substring to display correctly).
1563
c482cf97
KS
15642004-11-16 Kim F. Storm <storm@cua.dk>
1565
1566 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
1567 Reported by Andrew M. Scott.
1568
9f89426b
KS
15692004-11-15 Kim F. Storm <storm@cua.dk>
1570
1571 * fns.c (Fsafe_plist_get): New defun.
1572 (syms_of_fns): Defsubr it.
1573
1574 * lisp.h (Fsafe_plist_get): Add EXFUN.
1575
1576 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
1577 Use Fsafe_plist_get.
1578 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1579 Fix image map element parsing. Use Fsafe_plist_get.
1580
27418463
RS
15812004-11-15 Richard M. Stallman <rms@gnu.org>
1582
1583 * xdisp.c (get_next_display_element): Fix previous change.
1584
a130b901
JD
15852004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1586
ef614e04
JD
1587 * window.c (shrink_windows): Handle special case of one window left
1588 when trying to shrink the final reminder. Grow windows if
1589 total_removed is less than total_shrink.
1590
a130b901
JD
1591 * xmenu.c (pop_down_menu): Remove global variable current_menu,
1592 extract pointer from arg with XSAVE_VALUE.
46303896
KS
1593 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
1594 Construct arg to record_unwind_protect with make_save_value.
a130b901 1595
d9a03ad2
RS
15962004-11-13 Richard M. Stallman <rms@gnu.org>
1597
1598 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
1599 (get_next_display_element): Fix previous change to apply only to \n.
1600
1601 * indent.c (Fvertical_motion): Scan to PT from start of line to
1602 make iterator consistent.
1603
1604 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1605
b3935289
JD
16062004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1607
1608 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
1609
1610 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
1611 Record unwind with clean_up_file_dialog.
1612
78819ebb
KS
1613 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
1614 Declare.
b3935289
JD
1615
1616 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
1617
af89e871
JD
16182004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1619
457a8155 1620 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6abf3a27 1621 (xg_file_sel_destroy): Remove.
46303896
KS
1622 (xg_file_response_cb, pop_down_file_dialog)
1623 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
457a8155 1624 New functions.
6abf3a27
SM
1625 (xg_get_file_with_chooser, xg_get_file_with_selection):
1626 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
457a8155
JD
1627 Move common code to xg_get_file_name. Return widget created.
1628 (xg_get_file_name): Set name, transient for, modal and destroy
1629 with parent here. Connect response signal to xg_file_response_cb,
1630 connect delete-event to gtk_true. Record pop_down_file_dialog
1631 for unwind. Do event loop and call x_menu_wait_for_event in loop.
1632 (xg_create_widget): Make dialogs modal.
1633
af89e871
JD
1634 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
1635 Lisp_Object.
1636 (popup_get_selection): Move unwind protect ...
1637 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
1638 Move destroy of widget to pop_down_menu.
1639 (popup_widget_loop): Move unwind protect ...
1640 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
1641 Move destroy of widget to pop_down_menu.
1642 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6abf3a27 1643 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
af89e871
JD
1644 x_mouse_leave and grabbed = 0 to pop_down_menu.
1645
5596fbf1
KS
16462004-11-13 Kim F. Storm <storm@cua.dk>
1647
1648 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
1649 (syms_of_xdisp): DEFVAR_BOOL it.
1650 (make_cursor_line_fully_visible, try_cursor_movement)
1651 (try_window_id): Use it.
1652
b9de078a
KS
16532004-11-12 Kim F. Storm <storm@cua.dk>
1654
381f7091
KS
1655 * dispextern.h (struct glyph_row): New member extra_line_spacing.
1656 (struct it): New member max_extra_line_spacing.
1657 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
1658 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
1659 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
1660 part of last line is only extra line spacing (so the text on the
1661 line is fully visible). Use helper macros.
1662 Add W arg (to use them). All callers changed.
1663 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
1664 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
1665
6abf3a27
SM
1666 * window.c (window_scroll_pixel_based, Frecenter):
1667 Use move_it_vertically_backward directly.
381f7091
KS
1668 (Frecenter): Fix calculation of new start pos for negative arg.
1669 Before, the new start pos was sometimes chosen too far back, so
1670 the last line became only partially visible, and thus would be
1671 either only semi-visible or automatically scrolled to the middle
1672 of the window by redisplay.
1673
1674 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
1675 (move_it_vertically_backward): Don't recure to move further back.
1676 (move_it_vertically): Remove superfluous condition.
1677 (move_it_by_lines): Clear last_height when moved 0 lines.
6abf3a27 1678 (resize_mini_window): Use it.max_extra_line_spacing.
381f7091
KS
1679 (display_tool_bar_line): Clear row->extra_line_spacing.
1680 (try_scrolling): Use move_it_vertically_backward directly.
1681 (redisplay_window): Likewise.
1682 (compute_line_metrics): Set row->extra_line_spacing.
1683 (display_line, display_string): Likewise.
1684 (x_produce_glyphs): Update it->max_extra_line_spacing.
1685
b9de078a
KS
1686 * xmenu.c (pop_down_menu): Return nil.
1687
c3438661
JD
16882004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1689
1690 * xmenu.c (x_menu_wait_for_event): New function.
1691 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
1692 to handle timers.
df00f436
JD
1693 (popup_widget_loop): Add argument do_timers.
1694 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
1695 do_timers to popup_widget_loop.
c3438661
JD
1696 (xmenu_show): Call XMenuActivateSetWaitFunction so that
1697 x_menu_wait_for_event is called by XMenuActivate.
b9de078a 1698 (create_and_show_popup_menu): Pass 1 for do_timers to
df00f436 1699 popup_get_selection.
f1d1cd24
JD
1700 (pop_down_menu): New function.
1701 (popup_get_selection, popup_widget_loop): Unwind protect to
1702 pop_down_menu.
1703 (popup_widget_loop): Add argument widget.
1704 (create_and_show_popup_menu, create_and_show_dialog): Pass new
1705 argument widget to popup_widget_loop.
c3438661 1706
32e2fb04
SM
17072004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
1708
1709 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
1710
0faf6806
KS
17112004-11-09 Kim F. Storm <storm@cua.dk>
1712
1713 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
1714 Fix various comments referring to XEvents instead of input events.
1715 (x_queue_event): Fix format strings.
1716 (x_stop_queuing_selection_requests): Likewise.
1717
1718 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
1719 (pint2hrstr): Add extra braces to silence compiler.
1720
1721 * print.c (print_object): Fix format string.
1722
1723 * lread.c (read1): Fix next_char matching.
1724
1725 * lisp.h (Fdelete): Add EXFUN.
1726 (replace_range_2): Add prototype.
1727
1728 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
1729
1730 * intervals.h (NULL_INTERVAL_P): Add separate version when
1731 ENABLE_CHECKING is not defined to silence compiler.
1732 (compare_string_intervals): Add prototype.
1733
1734 * fringe.c (destroy_fringe_bitmap): Fix return type.
1735 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
1736
1737 * emacs.c (Fdump_emacs): Fix format string.
1738
1739 * doc.c: Include <ctype.h>.
1740 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
1741
1742 * data.c (store_symval_forwarding): Remove unused variables.
1743
1744 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
1745
16bf4e32
JD
17462004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1747
1748 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
1749 to ${OLDXMENU}.
1750
cdb805a9
KS
17512004-11-09 Kim F. Storm <storm@cua.dk>
1752
1753 * process.c (Fmake_network_process): Remove kludge for interrupted
1754 connects on BSD. If connect is interrupted, just close socket and
1755 start over rather than sleeping and retry with same socket.
1756
d87a9ab8 17572004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
0faf6806 1758
a8b16c80
JD
1759 * .cvsignore: Add buildobj.lst.
1760
d87a9ab8
JD
1761 * doc.c: New variable Vbuild_files.
1762 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
1763 file names from buildobh.lst. Only attach docstrings from files
1764 that are in Vbuild_files.
1765 (syms_of_doc): Defvar Vbuild_files.
1766
1767 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
1768 and w32*.o.
1769 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6abf3a27 1770 (mostlyclean): Rm buildobj.lst
d87a9ab8
JD
1771
1772 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
1773 is linked.
1774
b6709e77
KS
17752004-11-09 Kim F. Storm <storm@cua.dk>
1776
1777 * fringe.c (update_window_fringes): Update fringe bitmaps if
1778 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
1779 also update previous row to get rid of misc. artifacts.
1780
bae9677d
KS
17812004-11-08 Kim F. Storm <storm@cua.dk>
1782
1783 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 1784 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 1785
3f8ea68c
EZ
17862004-11-08 Eli Zaretskii <eliz@gnu.org>
1787
1788 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
1789 Don't include <sys/time.h> explicitly.
1790 Include <stdio.h> unconditionally, not just on MacOS.
1791
a653f812
KH
17922004-11-08 Kenichi Handa <handa@m17n.org>
1793
1794 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
1795 don't pay attention to '\' before '*'.
1796 (fontset_pattern_regexp): Change the meaning of the second arg.
1797 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
1798 (check_fontset_name): Try NAME as literal at first, and if it
1799 failes, try NAME as pattern.
1800
c37caf9d
JD
18012004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1802
1803 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
1804
b72915a7
AS
18052004-11-07 Andreas Schwab <schwab@suse.de>
1806
78819ebb
KS
1807 * lisp.h (Fmsdos_downcase_filename): Declare.
1808 * dired.c (Fmsdos_downcase_filename): Don't declare here.
b72915a7
AS
1809 * fileio.c: Likewise.
1810
238a44a8
JD
18112004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1812
1813 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
1814 comparisons with integers instead of Lisp_Object address.
1815 (Fmsdos_set_keyboard): Declare argument allkeys.
1816
1817 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
1818
78819ebb 1819 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
238a44a8
JD
1820 int/Lisp_Object mixup.
1821
1822 * fileio.c: Ditto.
1823
31141c13
ST
18242004-11-06 Steven Tamm <steventamm@mac.com>
1825
1826 * editfns.c: Need to include sys/time.h before resource.h on darwin.
1827
f28c1bd9
RS
18282004-11-06 Richard M. Stallman <rms@gnu.org>
1829
1830 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
1831
1832 * xfaces.c (merge_named_face): GCPRO the face_name in the
1833 named_merge_point struct that we make.
1834 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
1835
1836 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
1837 before deciding whether to inactivate mark.
1838
59dede22
EZ
18392004-11-06 Lars Brinkhoff <lars@nocrew.org>
1840
1841 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
1842 * editfns.c (Fget_internal_run_time): New function.
1843 (syms_of_data): Defsubr it.
1844 * fns.c (sxhash): As far as possible, merge calculation of
1845 hash code for symbols and strings.
59dede22 1846
27540e81
EZ
18472004-11-06 Eli Zaretskii <eliz@gnu.org>
1848
1849 * frame.c (syms_of_frame): Fix the example in the doc string.
1850
df470e3b
JD
18512004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1852
1853 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
1854
1855 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
1856 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 1857
4cc8522c
LT
18582004-11-05 Luc Teirlinck <teirllm@auburn.edu>
1859
1860 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
1861
d4a42098
KS
18622004-11-05 Kim F. Storm <storm@cua.dk>
1863
a8490886
KS
1864 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
1865
d4a42098
KS
1866 * fileio.c (Ffile_modes): Doc fix.
1867 (auto_save_1): Check for Ffile_modes nil value.
1868
36a2b04c
KS
18692004-11-05 Kim F. Storm <storm@cua.dk>
1870
1871 * xselect.c (struct selection_event_queue, selection_queue)
1872 (x_queue_selection_requests, x_queue_event)
1873 (x_start_queuing_selection_requests)
1874 (x_stop_queuing_selection_requests): Add new queue for selection
1875 input events to replace previous XEvent queue in xterm.c.
1876 (queue_selection_requests_unwind): Adapt to new queue.
32e2fb04
SM
1877 (x_reply_selection_request): Adapt to new queue.
1878 Unexpect wait_object in case of x errors (memory leak).
36a2b04c
KS
1879 (x_handle_selection_request, x_handle_selection_clear): Make static.
1880 (x_handle_selection_event): New function. May queue selection events.
1881 (wait_for_property_change_unwind): Use save_value instead of cons.
1882 Clear property_change_reply_object.
1883 (wait_for_property_change): Abort if already waiting.
1884 Use save_value instead of cons for unwind data.
1885 (x_handle_property_notify): Skip events already arrived, but don't
1886 free them, as "arrived" field is checked by wait_for_property_change,
1887 and it will be freed by unwind or explicit unexpect_property_change.
1888 (x_get_foreign_selection): Add to new queue.
1889 (receive_incremental_selection): Don't unexpect wait_object when done
1890 as it has already been freed by previous wait_for_property_change.
1891
1892 * xterm.h (x_start_queuing_selection_requests)
1893 (x_stop_queuing_selection_requests, x_handle_selection_request)
1894 (x_handle_selection_clear): Remove prototypes.
1895 (x_handle_selection_event): Add prototype.
1896
1897 * xterm.c (handle_one_xevent): Don't queue X selection events
1898 here, it may be too late if we start queuing after we have already
1899 stored some selection events into the kbd buffer.
1900 (struct selection_event_queue, queue, x_queue_selection_requests)
1901 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
1902 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
1903 (x_catch_errors_unwind): Block input around final XSync.
1904
1905 * keyboard.h (kbd_buffer_unget_event): Add prototype.
1906
1907 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
1908 (kbd_buffer_unget_event): New function.
1909 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
1910 and use x_handle_selection_event.
1911 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
1912
9c3ad9e1
JD
19132004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1914
1915 * xselect.c (TRACE3): New debug macro.
1916 (x_reply_selection_request): Use it.
1917 (receive_incremental_selection): In call to TRACE0, the name of
1918 a symbol is in xname.
1919
a33b89de
KS
19202004-11-05 Kim F. Storm <storm@cua.dk>
1921
1922 * fontset.c (fontset_pattern_regexp): Use unsigned char.
1923
a872928c
JD
19242004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1925
88208bb8
JD
1926 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
1927
78819ebb 1928 * gtkutil.h (use_old_gtk_file_dialog): Declare.
0a4f23f3
JD
1929
1930 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
32e2fb04 1931 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
0a4f23f3
JD
1932 * xfns.c (syms_of_xfns): ... to here.
1933
a872928c
JD
1934 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
1935 it doesn't start with /.
1936
b912921c
KH
19372004-11-04 Kenichi Handa <handa@m17n.org>
1938
1939 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
1940 treat it as a literal character.
1941
c524d9a6
KS
19422004-11-03 Kim F. Storm <storm@cua.dk>
1943
1944 * .gdbinit (ppt): New function.
1945
8cfd0f36
JD
19462004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1947
a11e1dce
JD
1948 * xterm.c (x_window_to_scroll_bar): Only call
1949 xg_get_scroll_id_for_window if toolkit scroll bars are used.
1950
8cfd0f36
JD
1951 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
1952 of save.
1953
a93563fd
AS
19542004-11-02 Andreas Schwab <schwab@suse.de>
1955
1956 * window.c (Fscroll_right): Fix last change.
1957
2b2d59d8
KS
19582004-11-02 Kim F. Storm <storm@cua.dk>
1959
1960 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
1961
19622004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1963
1964 * callproc.c (Fcall_process): Block input around vfork.
1965
ca28104d
KS
19662004-11-02 Kim F. Storm <storm@cua.dk>
1967
1968 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
1969 (syms_of_eval): Defsubr it.
1970
29bb7127
RS
19712004-11-02 Richard M. Stallman <rms@gnu.org>
1972
1973 * insdel.c (replace_range_2): New function.
1974
1975 * casefiddle.c (casify_region): Handle changes in byte-length
1976 using replace_range_2.
1977
1978 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
1979
b6189c3b 1980 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
1981 Subtract 1 from pos when checking previous newline for invisibility.
1982
1983 * window.c (window_scroll_pixel_based): Update preserve_y
1984 for header line if any.
1985 (Fscroll_left, Fscroll_right): Don't call interactive_p;
1986 use a new second argument instead.
1987
1988 * eval.c (Fcall_interactive_p): New function.
1989 (interactive_p): Don't test INTERACTIVE here.
1990 (Finteractive_p): Doc fix.
1991
1992 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
1993
b6189c3b 19942004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
1995
1996 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 1997 comparing font names.
a3fe4aaf 1998
2a00cdb4
JD
19992004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2000
f9d64bb3
JD
2001 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
2002 Fx_file_dialog if only directories should be read.
2003
2004 * lisp.h: Fx_file_dialog takes 5 parameters.
2005
32e2fb04
SM
2006 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
2007 Add parameter only_dir_p.
f9d64bb3
JD
2008 In Motif version, don't put DEFAULT_FILENAME in filter part of the
2009 dialog, just text field part. Do not add DEFAULT_FILENAME
2010 to list of files if it isn't there.
2011 In GTK version, pass only_dir_p parameter to xg_get_file_name.
2012
32e2fb04
SM
2013 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
2014 Check only_dir_p instead of comparing prompt to "Dired". When using
f9d64bb3
JD
2015 a save dialog, add option kNavDontConfirmReplacement, change title
2016 to "Enter name", change text for save button to "Ok".
2017
32e2fb04
SM
2018 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
2019 Check only_dir_p instead of comparing prompt to "Dired".
f9d64bb3
JD
2020
2021 * gtkutil.c (xg_get_file_with_chooser)
2022 (xg_get_file_with_selection): New functions, only defined ifdef
2023 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
2024 respectively.
2025 (xg_get_file_name): Add parameter only_dir_p.
2026 Call xg_get_file_with_chooser or xg_get_file_with_selection
2027 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
2028 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
2029
2030 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
2031
2a00cdb4
JD
2032 * config.in: Rebuild (added HAVE_GTK_FILE_*).
2033
f6749d5d
KS
20342004-11-01 Kim F. Storm <storm@cua.dk>
2035
32e2fb04
SM
2036 * process.c (connect_wait_mask, num_pending_connects):
2037 Only declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 2038 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
2039 (IF_NON_BLOCKING_CONNECT): New helper macro.
2040 (wait_reading_process_output): Only declare and use local vars
2041 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 2042
1a99fe1a
JR
20432004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
2044
2045 * w32term.c (x_scroll_run): Delete region objects after use.
2046
fcdb28b4
JD
20472004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2048
495ef86b
JD
2049 * xmenu.c: Add prototypes for forward function declarations.
2050 (popup_get_selection): Remove parameter do_timers, remove call to
2051 timer_check.
32e2fb04
SM
2052 (create_and_show_popup_menu, create_and_show_dialog):
2053 Remove parameter do_timers from call to popup_get_selection.
495ef86b 2054
12e6566a
JD
2055 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
2056 tool_bar_items and assign the result to f->tool_bar_items if
2057 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
2058 tool_bar_items to assignment of result.
2059
fcdb28b4
JD
2060 * atimer.c (alarm_signal_handler): Do not call set_alarm if
2061 pending_atmers is non-zero.
2062
1a1a0c4c
KS
20632004-10-31 Kim F. Storm <storm@cua.dk>
2064
2065 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
2066
a36f1680
JW
20672004-10-28 Will <will@glozer.net>
2068
2069 * macterm.c: allow user to assign key modifiers to the Mac Option
2070 key via a 'mac-option-modifier' variable.
2071
32e2fb04 20722004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2d586478
SM
2073
2074 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
2075 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
2076 (x_handle_selection_request, x_handle_selection_clear)
2077 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
2078
4f71c13f
RS
20792004-10-28 Richard M. Stallman <rms@gnu.org>
2080
2081 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
2082
2083 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
2084
068f3848
SM
20852004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
2086
2087 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
2088 comment-starter over a 1-char one.
2089
4660a9e3
RS
20902004-10-27 Richard M. Stallman <rms@gnu.org>
2091
2092 * xdisp.c (get_next_display_element): In mode lines,
2093 treat newline and tab like other control characters.
2094
2095 * editfns.c (Fmessage): Doc fix.
2096
2097 * indent.c (vmotion): When moving up, check the newline before.
2098 Make prevline an int, not a Lisp_Object.
2099
233f3db6
KS
21002004-10-27 Kim F. Storm <storm@cua.dk>
2101
2102 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
2103 Only allocate info and discarded tables once.
2104
2105 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
2106 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
2107 (SAFE_FREE): Test it to determine if we need to unwind to free.
2108 Remove size arg. All users changed.
2109 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
2110
1442465d
JD
21112004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2112
2113 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
2114 (xg_destroy_widgets): Rename from remove_from_container.
2115 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
2116 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
2117 instead of remove_from_container.
2118 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
2119 (free_frame_tool_bar): Add comment.
2120
2121 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
2122 is not NULL before strcmp.
2123
c8636435
KS
21242004-10-26 Kim F. Storm <storm@cua.dk>
2125
2126 * callint.c (Fcall_interactively): Add 'U' code to get the
2127 up-event discarded by a previous 'k' or 'K' argument.
2128
5629f29b
DK
21292004-10-26 David Kastrup <dak@gnu.org>
2130
2131 * buffer.c (syms_of_buffer): Fix a few typos.
2132
4f2f546e
JD
21332004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2134
2135 * xsmfns.c: Put empty line between comment and function body.
2136 Use two spaces before comment end.
2137
fc1062f5
KH
21382004-10-25 Kenichi Handa <handa@m17n.org>
2139
2140 * fontset.c (fontset_pattern_regexp): Optimize for the case that
2141 PATTERN is full XLFD.
2142
be13f5e5
KH
21432004-10-24 Kenichi Handa <handa@m17n.org>
2144
2145 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
2146
2147 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
2148 (regex_compile): Return REG_ERANGEX if appropriate.
2149
d0ee2ed3
KH
21502004-10-22 Kenichi Handa <handa@m17n.org>
2151
2152 * editfns.c (Ftranslate_region_internal): New function.
2153 (syms_of_editfns): Defsubr it.
2154
63ea8ea5
JD
21552004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2156
2157 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
2158
c27ed90a
JD
21592004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
2160
068f3848
SM
2161 * xterm.h (x_output): New member `xic_base_fontname'.
2162 (FRAME_XIC_BASE_FONTNAME): New macro.
2163 (xic_free_xfontset): Declare.
c27ed90a 2164
068f3848
SM
2165 * xfns.c (xic_create_xfontset): Share fontsets between frames
2166 based on base_fontname.
2167 (xic_free_xfontset): New function.
2168 (free_frame_xic): Use it.
2169 (xic_set_xfontset): Ditto.
c27ed90a 2170
068f3848 2171 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
2172
2173
59508699
JR
21742004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
2175
2176 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
2177
dede2792
JD
21782004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2179
3aca2078
JD
2180 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
2181 XSync.
2182
dede2792
JD
2183 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
2184 New variables and constant.
2185 (main): Calculate heap_bss_diff. If we are dumping and the
2186 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
2187 and exec ourself again.
2188 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
2189 print a warning.
2190
2191 * lastfile.c: Make my_endbss and my_endbss_static available on all
2192 platforms.
2193
2194 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
2195 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
2196
1dc5ba01
LT
21972004-10-19 Luc Teirlinck <teirllm@auburn.edu>
2198
2199 * data.c (Flocal_variable_if_set_p): Doc fix.
2200
950090be
JR
22012004-10-19 Jason Rumney <jasonr@gnu.org>
2202
2203 * w32.c (init_environment): Set emacs_dir correctly when running
2204 emacs from the build directory.
2205
8550b998
RS
22062004-10-19 Richard M. Stallman <rms@gnu.org>
2207
2208 * editfns.c (Fdelete_and_extract_region):
2209 If region is empty, return null string.
2210
08dedea6
JD
22112004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2212
1dc5ba01 2213 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 2214 and canon_width.
068f3848 2215 (xg_frame_cleared): Remove.
08dedea6 2216
068f3848
SM
2217 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
2218 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
2219 (xg_create_scroll_bar): Put an event box widget between
2220 the scroll bar widget and the edit widget.
2221 (xg_show_scroll_bar): Show the parent widget (the event box).
2222 (xg_remove_scroll_bar): Destroy parent (the event box) also.
2223 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
2224 Move the parent (the event box) widget inside the fixed widget.
2225 Move window clear to xterm.c.
2226
068f3848 2227 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 2228
08dedea6 2229 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
2230 (x_scroll_bar_create, XTset_vertical_scroll_bar):
2231 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
2232 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
2233
8550b998 22342004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
2235
2236 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 2237
84338890
JD
22382004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2239
2240 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
2241 gdk_window_clear and move gdk_window_process_all_updates after
2242 clear so events are sent to the X server in correct order.
2243
6e1b0d8c
KH
22442004-10-18 Kenichi Handa <handa@m17n.org>
2245
2246 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
2247 comparing font names.
8550b998 2248 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
2249 (list_fontsets): Likewise.
2250
2251 * search.c (fast_string_match_ignore_case): New function.
2252
2253 * lisp.h (fast_string_match_ignore_case): Extern it.
2254
345e75a8
KS
22552004-10-17 Kim F. Storm <storm@cua.dk>
2256
2257 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
2258 than bitmap if there is not left fringe.
2259 (get_overlay_arrow_glyph_row): Also used on windows system.
2260 (display_line): Display overlay string if no left fringe.
2261
be13cbb7
JR
22622004-10-16 Jason Rumney <jasonr@gnu.org>
2263
2264 * w32fns.c (w32_font_match): Encode font name being matched.
2265
c2e2ede7
RS
22662004-10-16 Richard M. Stallman <rms@gnu.org>
2267
2268 * window.c (Fspecial_display_p): Doc fix.
2269
043f7f73 22702004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
3584d95d
SM
2271
2272 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
2273 Don't ignore menus, because where-is-internal already does it for us.
2274
699a0392
KS
22752004-10-15 Kim F. Storm <storm@cua.dk>
2276
b3c7a89b
KS
2277 * xdisp.c (redisplay_window): Only update fringes and vertical
2278 border on window frames.
699a0392 2279
4e382b0f
AS
22802004-10-14 Andreas Schwab <schwab@suse.de>
2281
2282 * m/ia64.h (DATA_SEG_BITS): Don't define.
2283
329a7be2
KS
22842004-10-14 Kim F. Storm <storm@cua.dk>
2285
2286 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 2287 in some X versions.
329a7be2 2288
982241b1
SM
22892004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
2290
2291 * fns.c (map_char_table): Add missing gcpros.
2292
9238467d
SM
22932004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
2294
2295 * keymap.c (get_keymap): An autoload form is not a keymap.
2296
2297 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
2298
4440e3ca
KS
22992004-10-13 Kim F. Storm <storm@cua.dk>
2300
7cfdabde
KS
2301 * callproc.c (Fcall_process): Simplify handling of display arg.
2302 Resume `display_on_the_fly' once a coding system is determined.
2303
4440e3ca
KS
2304 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
2305
1c8dec6a
KS
23062004-10-12 Kim F. Storm <storm@cua.dk>
2307
2308 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
2309 caller, such as call-process, is not going to poll for input.
2310 (calc_line_height_property): Handle case where it->object is nil.
2311
2312 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
2313
170b174c
KH
23142004-10-12 Kenichi Handa <handa@m17n.org>
2315
9238467d
SM
2316 * xdisp.c (get_next_display_element):
2317 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
2318 chars in octal in unibyte buffer.
2319
b583964c
KS
23202004-10-12 Kim F. Storm <storm@cua.dk>
2321
2322 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
2323 are no ordinary bindings.
2324
29fabd8c
JD
23252004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2326
9238467d 2327 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 2328
c3f4c690
ST
23292004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2330
9238467d
SM
2331 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
2332 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 2333 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
2334 terminal frame.
2335 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
2336 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
2337 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
2338 Make a cancel file-open dialog be like C-g.
9238467d
SM
2339 * mac.c (mktime): Use emacs_mktime.
2340 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
2341 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 2342
9688f9eb
KS
23432004-10-10 Kim F. Storm <storm@cua.dk>
2344
2345 * keyboard.c (timer_resume_idle): New function to resume idle
2346 timer without resetting timers on the idle list.
2347 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
2348 (timer_start_idle, timer_stop_idle): Declare static.
2349 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
2350
2351 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
2352
f7f3a65f
ST
23532004-10-08 Steven Tamm <steventamm@mac.com>
2354
9238467d 2355 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 2356 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 2357 NULL where 0 should be used.
f7f3a65f
ST
2358 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
2359 objc/malloc.h
9238467d 2360 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 2361
3c7d999a
KS
23622004-10-07 Kim F. Storm <storm@cua.dk>
2363
2364 * xdisp.c (redisplay_window): Fix flicker on vertical line between
2365 windows. Update vertical line after drawing window fringes, but
2366 only if actually drawing any bitmaps--or there is no fringe.
2367
2368 * xterm.c (x_update_window_end): Likewise.
2369 * macterm.c (x_update_window_end): Likewise.
2370 * w32term.c (x_update_window_end): Likewise.
2371
2372 * fringe.c (draw_window_fringes): Return value now indicates if
2373 any fringe bitmaps were redrawn (or there are no fringes).
2374
2375 * dispextern.h (draw_window_fringes): Update prototype.
2376
bf06c82f
ST
23772004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2378
2379 * macfns.c (mac_get_window_bounds): Add extern.
2380 (x_real_positions): Use mac_get_window_bounds.
2381
2382 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
2383 xmenu.c (YAILOM).
3c7d999a 2384
bf06c82f
ST
2385 * macterm.c [!MAC_OSX]: Include Windows.h.
2386 (front_emacs_window): Rename from mac_front_window. All uses
2387 changed. Return the frontmost non-tooltip emacs window.
2388 (mac_get_window_bounds): New function.
2389 (x_calc_absolute_position): Use the difference of width and height
2390 between the inner and outer window.
2391 (x_set_offset): Specify window position by the coordinae of the
2392 outer window. Adjust the position if the title bar is completely
2393 outside the screen.
2394 (app_is_suspended, app_sleep_time): Remove unused variables.
2395 (do_app_resume, do_app_suspend): Remove their contents because
2396 window-activate/deactivate events will do the job.
2397 (do_zoom_window): Remove unused variables. Make compliant to the
2398 standard way of zooming. Set f->left_pos and f->top_pos.
2399 (XTread_socket): Don't use argument `expected'. Don't use
2400 FrontWindow to determine the clicked window. Exclude unprocessed
2401 mouseUp cases in the early stage. Add parentheses to fix operator
2402 precedence.
2403 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
2404
4cbbf6b7 24052004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
2406
2407 * config.in: Regenerate.
2408
2409 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
2410 HAVE_EXECSHIELD.
2411
b90ee8b5
JD
24122004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2413
2414 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
2415 a row if Alt or Meta has been found for that row. Also stop scanning
2416 for Keysyms for that row.
2417
904db1a2
KS
24182004-10-04 Kim F. Storm <storm@cua.dk>
2419
0207b8ad
KS
2420 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
2421 to list. Include overlay arrow bitmap in return value.
2422
25f7220c
KS
2423 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
2424 bars with fractional column width. If scroll bar separates two
2425 windows, move it towards the window it belongs to. Only update
2426 the padding area below the scroll bar widget when necessary,
2427 i.e. when scroll bar widget is created, moved, or resized.
2428
562020fe
KS
2429 * xdisp.c (define_frame_cursor1): Do not change frame cursor
2430 while tracking/dragging mouse.
2431 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
2432
37e34af7
KS
2433 * window.c (coordinates_in_window): Relax check for cursor
2434 on vertial border between mode lines.
2435 (Fset_window_fringes): Do not allow negative widths.
2436 (Fset_window_scroll_bars): Likewise.
2437
904db1a2
KS
2438 * .gdbinit (pp): Shorthand for p ARG + pr.
2439 (ff): New command: flush frame updates (X only).
2440
38fe4f64
MA
24412004-10-03 Michael Albinus <michael.albinus@gmx.de>
2442
2443 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
2444
9de36315
KH
24452004-09-30 Kenichi Handa <handa@m17n.org>
2446
07c381ad 2447 * process.c (send_process): Free composition data.
9de36315 2448
07c381ad 2449 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
2450
2451 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
2452 compositions to encode.
2453 (encode_coding_string): Likewise. Free composition data.
2454
b6189c3b 24552004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
2456
2457 * coding.c (code_convert_region): Free composition data.
9de36315 2458
f2a54fbc
KS
24592004-09-29 Kim F. Storm <storm@cua.dk>
2460
dc5d6435
KS
2461 * fringe.c: Remove limit on number of bitmaps.
2462 (fringe_bitmaps, fringe_faces): Change to pointers.
2463 (max_fringe_bitmaps): New var.
2464 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
2465 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
2466
2467 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
2468 (struct glyph_row): Reorder fringe_bitmap related fields.
2469 (struct it): Likewise.
2470
2471 * w32term.c (fringe_bmp): Change to pointer.
2472 (max_fringe_bmp): New var.
2473 (w32_define_fringe_bitmap): Expand fringe_bmp.
2474 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
2475 (w32_destroy_fringe_bitmap): Likewise.
2476
24772004-09-29 Kim F. Storm <storm@cua.dk>
2478
2479 * fringe.c: Simplify last change.
f2a54fbc
KS
2480 (lookup_fringe_bitmap): New function.
2481 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
2482 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
2483 Keep standard bitmaps in Vfringe_bitmaps.
2484 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
2485 (Fset_fringe_bitmap_face): Likewise.
2486
2487 * dispextern.h (lookup_fringe_bitmap): Add prototype.
2488 (valid_fringe_bitmap_p): Remove prototype.
2489
2490 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
2491
841a8bca
KS
24922004-09-29 Kim F. Storm <storm@cua.dk>
2493
1f2da365
KS
2494 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
2495 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
2496
841a8bca
KS
2497 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
2498
2499 * fringe.c (Vfringe_bitmaps): New variable.
2500 (syms_of_fringe): DEFVAR_LISP it.
2501 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
2502 Change arg to Lisp_Object and fail if not an integer.
2503 (get_fringe_bitmap_name, resolve_fringe_bitmap)
2504 (destroy_fringe_bitmap): New functions.
9238467d
SM
2505 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
2506 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
2507 clear its fringe property.
2508 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
2509 Fdestroy_fringe_bitmap.
2510 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
2511 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
2512 and set fringe property. Signal error if no free slots.
2513 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
2514 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
2515
2516 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
2517 symbols with a fringe property.
2518
4d965590
KS
25192004-09-27 Kim F. Storm <storm@cua.dk>
2520
2521 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
2522 Doc fix. Format may now be a symbol or alist, not a cons.
2523
2524 * fringe.c (update_window_fringes): Handle new formats of
2525 indicate-buffer-boundaries (symbol or alist). No longer
2526 allow a simple cons.
2527 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
2528
e888c2b3
JD
25292004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2530
9238467d 2531 * config.in: Rebuild.
e888c2b3 2532
83f1cb94
JD
25332004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2534
2535 * config.in: Rebuild.
2536
dd3b1d60 2537 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 2538
2c51754c
SM
25392004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
2540
2541 * xterm.c (x_term_init): Work around a bug in some X servers.
2542
3df5f8aa
RS
25432004-09-18 Richard M. Stallman <rms@gnu.org>
2544
557ca2c1
RS
2545 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
2546
3df5f8aa
RS
2547 * xdisp.c (try_window_reusing_current_matrix):
2548 Handle the case where we reach the old displayed text,
2549 out of sync with the old line boundary.
2550
9238467d 25512004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
2552
2553 * fileio.c (Finsert_file_contents): Fix case of replacement in a
2554 narrowed buffer.
2555
bfa02563
KS
25562004-09-14 Kim F. Storm <storm@cua.dk>
2557
a25fe164
KS
2558 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
2559
bfa02563
KS
2560 * xfaces.c (Qface_no_inherit): New var.
2561 (syms_of_xfaces): Intern and staticpro it.
2562 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
2563 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
2564 Don't increment face_change_count when face has non-nil
2565 face-no-inherit property.
2566
126f9c02
SM
25672004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
2568
892a8eb5
SM
2569 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
2570 (Fbyte_code): Remove dead code after `wrong_type_argument'.
2571
126f9c02 2572 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 2573 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 2574
c0ad3b38
KS
25752004-09-12 Kim F. Storm <storm@cua.dk>
2576
2577 * editfns.c (Fformat): Handle format strings with multiple text
2578 properties. Reverse text property list from the format string,
2579 so the positions are in increasing order.
2580
844fc085
JD
25812004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2582
2583 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
2584 x_uncatch_errors so that possible protocol errors are delivered.
2585
b106731c
EZ
25862004-09-10 Eli Zaretskii <eliz@gnu.org>
2587
21065c92
EZ
2588 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
2589 blockinput.h.
2590 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
2591 charset.h, and coding.h
9238467d 2592 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
2593 (term.o): Depend on window.h and keymap.h.
2594 (abbrev.o): Depend on syntax.h.
2595 (callint.o): Depend on keymap.h.
2596 (casefiddle.o): Depend on charset.h and keymap.h.
2597 (category.o): Depend on keymap.h.
2598 (coding.o): Depend on dispextern.h.
2599 (cmds.o): Depend on keyboard.h and keymap.h.
2600 (dispnew.o): Depend on indent.h and intervals.h.
2601 (doc.o): Depend on keymap.h.
2602 (editfns.o): Depend on frame.h.
2603 (emacs.o): Depend on dispextern.h.
2604 (fileio.o): Don't depend on ccl.h.
2605 (filelock.o): Depend on charset.h and coding.h.
2606 (frame.o): Depend on w32term.h and macterm.h.
2607 (insdel.o): Depend on region-cache.h.
2608 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
2609 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
2610 (search.o): Depend on $(INTERVALS_SRC).
2611 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
2612 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
2613 xterm.h, w32term.h, and macterm.h.
2614 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
2615 w32term.h, and macterm.h.
2616 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
2617 region-cache.h, xterm.h, w32term.h, and macterm.h.
2618 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
2619 (data.o): Depend on frame.h.
2620 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
2621 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
2622 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
2623 (intervals.o): Depend on keymap.h.
2624
9238467d
SM
2625 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
2626 Add debugging print-out to termscript.
b106731c 2627
64b7122d
RS
26282004-09-09 Richard M. Stallman <rms@gnu.org>
2629
2630 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
2631
5670531e
RS
26322004-09-08 Richard M. Stallman <rms@gnu.org>
2633
6cb4a892
RS
2634 * window.c (Fset_window_buffer): Doc fix.
2635
5670531e
RS
2636 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
2637
7e388eb7
JL
26382004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
2639
2640 * minibuf.c (history_delete_duplicates): New variable.
2641 (read_minibuf): Use it.
2642 (syms_of_minibuf): Create the corresponding lisp variable.
2643
370e3587
KS
26442004-09-08 Kim F. Storm <storm@cua.dk>
2645
2646 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
2647 overlay just before point.
2648
f844ba4e
LT
26492004-09-07 Luc Teirlinck <teirllm@auburn.edu>
2650
2651 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
2652 * buffer.c (reset_buffer, init_buffer_once):
2653 Handle auto_save_file_format field.
f844ba4e
LT
2654 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
2655 `buffer-auto-save-file-format'.
f844ba4e
LT
2656 * fileio.c: Delete declaration for removed Vauto_save_file_format.
2657 (build_annotations): Adapt to replacement of
2658 `auto-save-file-format' with the new buffer-local variable
2659 `buffer-auto-save-file-format'.
2660 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
2661
f0f90717
JR
26622004-09-07 Jason Rumney <jasonr@gnu.org>
2663
2664 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
2665
9238467d
SM
2666 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
2667 Handle Unicode menu titles.
f0f90717 2668
4e14f66c
KS
26692004-09-07 Kim F. Storm <storm@cua.dk>
2670
2671 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
2672 property from text property or overlay strings at point.
2673
9238467d 26742004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
2675
2676 * xmenu.c (update_submenu_strings): YAILOM.
2677 (set_frame_menubar): Make sure last_i is initialized.
2678
1f06d367
JR
26792004-09-03 Jason Rumney <jasonr@gnu.org>
2680
1806714a 2681 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
2682 (digest_single_submenu): Set lname and lkey in widget_value
2683 instead of name and key.
2684 (update_submenu_strings): New function.
2685 (set_frame_menubar): Remove call to inhibit_garbage_collection,
2686 call update_submenu_strings.
2687
2688 * w32menu.c (globals_of_w32menu): Check for Unicode API.
2689 (digest_single_submenu, w32_menu_show): Encode menu strings as
2690 UTF-8 if Unicode API is available.
2691 (utf8to16): New function.
2692 (add_menu_item): Use it when calling Unicode API.
1806714a 2693
46540080
KS
26942004-09-03 Kim F. Storm <storm@cua.dk>
2695
2696 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
2697 in overlay or text-property strings; set cursor on corresponding
2698 glyph rather than at end of the string.
2699
9277ba61 27002004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 2701
9277ba61 2702 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
2703 set a new one before obtaining the global coordinate.
2704 Use FRAME_MAC_WINDOW.
2705 (x_set_name, x_set_title): Encode title to UTF8.
2706 Use SetWindowTitleWithCFString.
9277ba61
ST
2707 (Fx_server_version): Get correct OS version.
2708
1806714a
SM
2709 * macmenu.c (add_menu_item): Remove unused variable `i'.
2710 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
2711
2712 * macterm.c (x_update_end): Move SetPortWindowPort to inside
2713 BLOCK_INPUT.
2714 (x_set_offset): Use FRAME_MAC_WINDOW.
2715
2716 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
2717 nontext_cursor if it is on a scroll bar.
2718
2719 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
2720 Carbon support.
1806714a
SM
2721 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
2722 Use LIBS_CARBON.
9277ba61 2723
b10daec7
JD
27242004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2725
2726 * xfns.c (x_set_name_internal): New function. Check if we shall call
2727 xfree before ENCODE_UTF_8.
2728 (x_set_name, x_set_title): Call x_set_name_internal.
2729
f7e22385
JR
27302004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
2731
2732 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
2733 reload it.
2734
2bf436c3
JD
27352004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2736
1806714a 2737 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
2738 (single_submenu): Set lname and lkey in widget_value
2739 instead of name and key.
2740 (update_submenu_strings): New function.
2741 (set_frame_menubar): Remove call to inhibit_garbage_collection,
2742 call update_submenu_strings.
2743
2bf436c3
JD
2744 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
2745 instead of name and key.
2746 (update_submenu_strings): New function.
2747 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 2748 call update_submenu_strings.
2bf436c3
JD
2749
2750 * gtkutil.h (_widget_value): Added lname and lkey.
2751
11715f92
ST
27522004-08-30 Steven Tamm <steventamm@mac.com>
2753
2754 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
2755 by using different names for inner loop variables.
2756
5500be54
JD
27572004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2758
059cd329
JD
2759 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
2760 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
2761
5500be54
JD
2762 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
2763 tool bar items is 0.
2764
383418e5
ST
27652004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2766
2767 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
2768 strings in menu items.
2769 (single_submenu): Use ENCODE_MENU_STRING
2770 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
2771 button release isn't passed to event loop
2772 (add_menu_item): Use SetMenuItemWithCFString
2773
6eb3ee72
ST
27742004-08-26 Steven Tamm <steventamm@mac.com>
2775
2776 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
2777 tool-bar/menu click
2778 * macfns.c (Fx_file_dialog): Implemented using NavServices
2779
10b43ac3
JD
27802004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2781
2728b5d0
JD
2782 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
2783
10b43ac3
JD
2784 * xfns.c (x_window_to_frame, x_any_window_to_frame)
2785 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
2786 (x_top_window_to_frame): Return 0 if wdesc is None.
2787
2ee3b79e
RS
27882004-08-22 Richard M. Stallman <rms@gnu.org>
2789
2790 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
2791 HAVE_TERMIOS]: If there's no char for this signal, drop through
2792 and use system calls.
2793
2794 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
2795
9a1ba2ea
KS
27962004-08-20 Kim F. Storm <storm@cua.dk>
2797
2798 * process.c (wait_reading_process_output): Rename from
2799 wait_reading_process_input. All uses changed.
2800 (wait_reading_process_output_1): Rename from
2801 wait_reading_process_input_1. All uses changed.
2802
2803 * dispnew.c (Fsleep_for): Remove obsolete code.
2804
295f3b30
KH
28052004-08-20 Kenichi Handa <handa@m17n.org>
2806
2807 * syntax.c (skip_chars): Fix for unibyte case.
2808
27615979
SM
28092004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
2810
2811 * syntax.c (char_quoted): Mixup byte/char pos.
2812 (back_comment): Fixup globals in all cases.
2813
00267f94
JD
28142004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2815
2816 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
2817 passing it to gtk_window_set_title.
2818
2439909e
KS
28192004-08-19 Kim F. Storm <storm@cua.dk>
2820
6ba0f14c
KS
2821 * process.c (wait_reading_process_input): Clean up.
2822 Add wait_for_cell, wait_proc, and just_wait_proc args
2823 to avoid overloading `read_kbd' and `do_display' args.
2824 Change read_kbd arg to int. All callers changed.
2825
2439909e
KS
2826 * process.c (process_send_signal): Use CDISABLE.
2827
2828 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
2829
101c421e
KS
28302004-08-18 Kim F. Storm <storm@cua.dk>
2831
2832 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
2833 forward to wait_reading_process_input via DO_DISPLAY arg.
2834 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
2835 object, only process output from that process; also inhibit
2836 running timers if DO_DISPLAY==-2.
2837
c438dc33
KS
28382004-08-17 Kim F. Storm <storm@cua.dk>
2839
2840 * process.c (process_send_signal): Fix last change--use
2841 _POSIX_VDISABLE instead of CVDISABLE when available.
2842
8afc13c6
RS
28432004-08-16 Richard M. Stallman <rms@gnu.org>
2844
2845 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
2846 Set VQUIT and VINTR chars to the standard ones if they are unset.
2847 [AIX]: Don't do that here. And don't force VINTR to standard
2848 when SIGNALS_VIA_CHARACTERS.
2849
c438dc33 2850 * process.c (process_send_signal)
8afc13c6
RS
2851 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
2852 Do nothing if the character is CVDISABLE.
2853
2854 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
2855
c438dc33 2856 * intervals.c (move_if_not_intangible):
8afc13c6
RS
2857 Force POSITION to be between BEGV and ZV.
2858
6dad1714
JPW
28592004-08-14 John Paul Wallington <jpw@gnu.org>
2860
2861 * buffer.c (Frestore_buffer_modified_p): Doc fix.
2862
2863 * fileio.c (Fread_file_name): Doc fix.
2864
2865 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
2866
2bd77330
LT
28672004-08-09 Luc Teirlinck <teirllm@auburn.edu>
2868
2869 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
2870
c90e7e43
LT
28712004-08-08 Luc Teirlinck <teirllm@auburn.edu>
2872
2873 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 2874 Qdisabled_command_hook.
c90e7e43 2875 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 2876 Qdisabled_command_hook.
c90e7e43
LT
2877 (syms_of_keyboard): Ditto.
2878
81909a1a
LT
28792004-08-07 Luc Teirlinck <teirllm@auburn.edu>
2880
2881 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
2882 (syms_of_keymap) <key-translation-map>: Doc fixes.
2883
0cedd530
SM
28842004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
2885
1725a7c9
SM
2886 * window.c (window_list_1): YAILOM.
2887
0cedd530
SM
2888 * fileio.c (make_temp_name): Handle multibyte prefixes.
2889
2515a131
LT
28902004-08-06 Luc Teirlinck <teirllm@auburn.edu>
2891
2892 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
2893 Doc fix.
2894
c8b20fb7
KH
28952004-08-03 Kenichi Handa <handa@m17n.org>
2896
2897 * coding.c (decode_coding_string): Adjust coding->consumed, and
2898 etc. with shrinked_bytes.
2899
fb8b092b
KS
29002004-08-03 Kim F. Storm <storm@cua.dk>
2901
2902 * indent.c (compute_motion): Fix check for full width window
2903 in non-window case. Do not count left truncation glyph on
2904 window systems.
2905
df133612
LT
29062004-08-02 Luc Teirlinck <teirllm@auburn.edu>
2907
2908 * data.c (Finteractive_form): Doc fix.
2909
0f7a93c1
KS
29102004-08-02 Kim F. Storm <storm@cua.dk>
2911
2912 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
2913 properly accounting for continuation glyph on non-window systems.
2914 (Fcompute_motion): Use actual window width if WIDTH is nil, and
2915 actual window width/height if TOPOS is nil, properly accounting for
2916 continuation glyphs on non-window systems, and optional header lines.
2917 (vmotion): Let compute_motion calculate actual window width.
2918
2919 * window.c (window_scroll_line_based): Let compute_motion
2920 calculate actual window width.
2921
f491e1ed
KS
29222004-08-02 Kim F. Storm <storm@cua.dk>
2923
2924 * process.c (read_process_output): Use whole read buffer.
2925 Don't trigger adaptive read buffering on errors.
2926
83f64226
LT
29272004-07-31 Luc Teirlinck <teirllm@auburn.edu>
2928
2929 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
2930
2931 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
2932
2933 * callint.c (Fcall_interactively): Doc fix.
2934
8afc13c6
RS
29352004-07-30 Richard M. Stallman <rms@gnu.org>
2936
2937 * abbrev.c (Fexpand_abbrev): Undo previous change.
2938
7c111482
KS
29392004-07-30 Kim F. Storm <storm@cua.dk>
2940
2941 * editfns.c (Fformat): Allocate extra (dummy) element in info.
2942
ee945d08
LT
29432004-07-28 Luc Teirlinck <teirllm@auburn.edu>
2944
2945 * eval.c (Fdefvar, Fdefconst): Doc fixes.
2946
3f911c94
KS
29472004-07-27 Kim F. Storm <storm@cua.dk>
2948
2949 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
2950 we have ensured that the glyph fits on the current line (or returned
2951 MOVE_LINE_CONTINUED otherwise).
2952
f29ff8c7
KS
29532004-07-26 Kim F. Storm <storm@cua.dk>
2954
2955 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
2956 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
2957 if target position is at end of display line but char is not a newline.
2958
81159bb9
RS
29592004-07-25 Richard M. Stallman <rms@gnu.org>
2960
ab431b61
RS
2961 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
2962 instead of ON_VERTICAL_BORDER, when on scroll bar.
2963 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
2964
2965 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
2966
f29ff8c7 2967 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
2968 Take account of FRAME_INTERNAL_BORDER_WIDTH.
2969
2970 * alloc.c (check_cons_list): New function (contents commented out).
2971
fc820cc5
LT
29722004-07-24 Luc Teirlinck <teirllm@auburn.edu>
2973
2974 * xfaces.c (Fcolor_supported_p): Doc fix.
2975
2976 * frame.c (Fselect_frame, Fset_frame_selected_window)
2977 (Fframe_visible_p, Fraise_frame): Doc fixes.
2978
289978b5
LT
29792004-07-24 Richard M. Stallman <rms@gnu.org>
2980
78819ebb 2981 * keyboard.h (not_single_kboard_state): Declare.
7630911d
RS
2982
2983 * fileio.c (Fwrite_region): Doc fix.
2984
2985 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
2986
2987 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
2988 only when a real abbrev is present.
2989
289978b5
LT
2990 * xfns.c (x_icon_verify): New function.
2991 (Fx_create_frame): Use it.
2992
63cc10ae
KS
29932004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
2994
2995 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
2996
36f826d4
KS
29972004-07-21 Kim F. Storm <storm@cua.dk>
2998
2999 * window.h (struct glyph_matrix): New members nrows_scale_factor
3000 and ncols_scale_factor.
3001
3002 * window.c (make_window): Initialize nrows_scale_factor and
3003 ncols_scale_factor members.
3004
3005 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
3006 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
3007 (required_matrix_height): Apply nrows_scale_factor.
3008 (required_matrix_width): Apply ncols_scale_factor.
3009
3010 * xdisp.c (display_line): Increment nrows_scale_factor and set
3011 fonts_changed_p if past last allocated row.
3012 (append_glyph, append_composite_glyph, produce_image_glyph)
3013 (append_stretch_glyph): Increment ncols_scale_factor and set
3014 fonts_changed_p if current area is full.
3015
5fc1c546
JD
30162004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3017
3018 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
3019
cb7516e5
LT
30202004-07-19 Luc Teirlinck <teirllm@auburn.edu>
3021
3022 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
3023 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
3024 (Fset_window_start, Fscroll_up, Fscroll_down)
3025 (Fother_window_for_scrolling, Fscroll_other_window)
3026 (Fsave_window_excursion, Fset_window_vscroll)
3027 (syms_of_window) <window-size-fixed>: Doc fixes.
3028
b6189c3b 30292004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
3030
3031 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
3032 ENCODE_SYSTEM for filenames.
3033
bfcf6608
ST
30342004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3035
3036 * mac.c (sys_select): Block input around call to
3037 ReceiveNextEvent to prevent breakage. Correctly handle
3038 blocking on event queue only by calling ReceiveNextEvent
3039 instead of select (since GUI events aren't on an fd).
3040 (sys_read): Remove function
3041 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
3042
e082ac9d
ST
30432004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3044
3045 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 3046 polling instead of 1 sec timeouts (like solaris).
e082ac9d 3047
cb7516e5 3048 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
3049 frame creation.
3050
3051 * keyboard.c: Undef SIGIO on Carbon
3052
3053 * atimer.c (alarm_signal_handler): Call alarm handlers after
3054 scheduling.
3055
3056 * eval.c (Feval): Remove quit_char test
3057
3058 * process.c (wait_reading_process_input): Remove clearing
3059 stdin for select call on process input.
3060
4b9da0fb
LT
30612004-07-18 Luc Teirlinck <teirllm@auburn.edu>
3062
1204e81c
LT
3063 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
3064 capitalization error in docstring.
4b9da0fb 3065
26503ad2
JB
30662004-07-17 Juanma Barranquero <lektu@terra.es>
3067
3068 * keyboard.c (not_single_kboard_state): Do nothing unless
3069 MULTI_KBOARD is defined.
3070
3751eb00
RS
30712004-07-17 Richard M. Stallman <rms@gnu.org>
3072
3073 * window.c (coordinates_in_window): Inside the window but outside
3074 its box to the L or R, return ON_VERTICAL_BORDER.
3075 (window_list_1): Rotate the list to start with WINDOW.
3076
3077 * print.c (print_preprocess): Test for print_depth at limit
3078 before entering in being_printed.
3079
3080 * keyboard.c (not_single_kboard_state): New function.
3081 (stuff_buffered_input): Now no-op only if no SIGTSTP.
3082
3083 * frame.c (Fdelete_frame): If we're in single_bboard_state on
3084 this kboard, and we delete its last frame, go to any_kboard_state.
3085
3086 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
3087
b6189c3b 30882004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
3089
3090 * w32fns.c (Fx_file_dialog): Encode strings in system coding
3091 system before passing them to OS functions for display.
3092
0f6af254
DK
30932004-07-15 David Kastrup <dak@gnu.org>
3094
f9253326
KS
3095 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
3096 Apparently fixes an abort condition.
0f6af254 3097
386c8f42
LT
30982004-07-14 Luc Teirlinck <teirllm@auburn.edu>
3099
3100 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
3101 instead of a cons.
3102
366511da
MB
31032004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
3104
3105 * keyboard.c (echo_dash): Do nothing if there already is a dash
3106 at the end of the echo string.
3107
f85409d3
KS
31082004-07-12 Kim F. Storm <storm@cua.dk>
3109
3110 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
3111 if GC_MARK_STACK.
3112
0ba2e87b
LT
31132004-07-10 Luc Teirlinck <teirllm@auburn.edu>
3114
da38045d
LT
3115 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
3116
0ba2e87b
LT
3117 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
3118 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
3119 (Freplace_buffer_in_windows, Fset_window_buffer)
3120 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
3121 (syms_of_window): Expand docstring of `display-buffer-function'.
3122
5668fbb8
LT
31232004-07-09 Luc Teirlinck <teirllm@auburn.edu>
3124
3125 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
3126 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
3127 that time values of the type (HIGH . LOW) are considered obsolete.
3128
a085bf9d
LT
31292004-07-06 Luc Teirlinck <teirllm@auburn.edu>
3130
669de2fb
LT
3131 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
3132 docstring.
3133
bac66325 3134 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 3135
8e975df9
JPW
31362004-07-06 John Paul Wallington <jpw@gnu.org>
3137
3138 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
3139
fa164e6a
JPW
3140 * fns.c (Fclear_string): Signal an error if STRING is not a string.
3141
2bac9bb1
JD
31422004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3143
3144 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
3145 instead of CGMainDisplayID (only in OSX 10.2 and later).
3146
316ef0dc
JPW
31472004-07-04 John Paul Wallington <jpw@gnu.org>
3148
3149 * fileio.c (read_file_name_completion_ignore_case): New variable.
3150 (syms_of_fileio): Declare and initialise it.
3151 (Fread_file_name): Bind `completion-ignore-case' to respect it.
3152
2a1a35c6
EZ
31532004-07-03 Eli Zaretskii <eliz@gnu.org>
3154
3155 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
3156 for event.x and event.y.
3157
33a72331
KH
31582004-07-01 Kenichi Handa <handa@m17n.org>
3159
3160 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
3161 after getting a new string by pre-write-conversion.
3162
9238467d 31632004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
3164
3165 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
3166 (x_calc_absolute_position): Remove unused var `child'.
3167
3168 * xfaces.c (x_supports_face_attributes_p)
3169 (Fdisplay_supports_face_attributes_p): YAILOM.
3170 (tty_supports_face_attributes_p): Remove unused var `i'.
3171
3172 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
3173 back_unibyte_ok.
3174
3175 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
3176
3177 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
3178
3179 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
3180
f96ec754
AS
31812004-06-30 Andreas Schwab <schwab@suse.de>
3182
3183 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
3184 (Finit_image_library): Pass LIBRARIES through to
3185 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
3186 (lookup_image_type): Pass Qnil as second argument to
3187 Finit_image_library.
3188
78819ebb 3189 * lisp.h (Finit_image_library): Declare.
f96ec754 3190
59feca74 31912004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 3192
31983645
AS
3193 * macterm.c (do_window_activate, do_window_deactivate): Remove.
3194 (XTread_socket): Send mouse button events to the toolbox
3195 dispatcher even when the mouse is grabbed. Don't process window
3196 activate events for non-Emacs windows. Replace function calls to
3197 do_window_activate and do_window_deactivate with their contents.
3198 Reset mouse grabbing status when a window is deactivated.
59feca74 3199
c61278bb
ST
32002004-06-29 Steven Tamm <steventamm@mac.com>
3201
3202 * macterm.c (mac_get_emulated_btn)
3203 (mac_event_to_emacs_modifiers): Fix emulated mouse button
3204 support to correctly mask out modifiers.
3205
c3762cbd
DK
32062004-06-29 David Kastrup <dak@gnu.org>
3207
3208 * search.c (Fset_match_data): Allow buffer before end of list
3209 which can happen if set-match-data is using a pre-consed list.
3210
c61278bb 32112004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
3212
3213 * macterm.c (XTread_socket): Correctly set the frame position
3214 after the window is moved.
3215
74cdfe05
JD
32162004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3217
3218 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
3219 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
3220 (xg_get_image_for_pixmap): Add workaround for monochrome displays
3221 so insensitive and activated icons look ok.
74cdfe05 3222
ef544dc8
JR
32232004-06-27 Jason Rumney <jasonr@gnu.org>
3224
3225 * w32fns.c (file_dialog_callback): Disable edit control if set
3226 to directories only on CDN_INITDONE message.
3227 (Fx_file_dialog): Default to directories only when prompt starts
3228 with "Dired".
3229
7b7990cc
KS
32302004-06-25 Kim F. Storm <storm@cua.dk>
3231
3232 * alloc.c (allocate_misc): Update total_free_markers.
3233 (free_misc): New function.
3234 (safe_alloca_unwind, free_marker): Use it.
3235
3236 * lisp.h (free_misc): Add prototype.
3237
3238 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
3239
d8c379f8
RS
32402004-06-24 Richard M. Stallman <rms@gnu.org>
3241
3242 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
3243 (syms_of_emacs): Lisp variables deleted.
3244
559cdd07
DK
32452004-06-23 David Kastrup <dak@gnu.org>
3246
94939b84
DK
3247 * search.c (Freplace_match): Adjust the match-data more thoroughly
3248 when replacing strings in the buffer.
3249 (Fmatch_data): When INTEGERS is non-nil and the last match was in
3250 a buffer, add the buffer as last element to the match data.
3251 (Fset_match_data): If an additional element of the match-data is a
3252 buffer, restore it to last_thing_searched.
c8d09ad8 3253 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
3254 (restore_match_data): Restore it again.
3255
dce417e7
LT
32562004-06-23 Luc Teirlinck <teirllm@auburn.edu>
3257
3258 * keymap.c (Ftext_char_description): Doc fix.
3259 * doc.c (Fsnarf_documentation): Doc fix.
3260
ef54b2d0
KS
32612004-06-22 Kim F. Storm <storm@cua.dk>
3262
b5bc4d05
KS
3263 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
3264
ef54b2d0
KS
3265 * lisp.h (struct Lisp_Save_Value): New member dogc.
3266 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
3267 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
3268 (SAFE_FREE_LISP): New macro.
3269
3270 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
3271 (make_save_value): Init new dogc member.
3272 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
3273
3274 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
3275 SAFE_FREE_LISP macros.
3276
3d33d993
KS
32772004-06-22 Kim F. Storm <storm@cua.dk>
3278
3279 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
3280 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
3281 in that memory area are unknown to GC. Add comments.
3282
3283 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
3284
5c917f98
KS
32852004-06-21 Kim F. Storm <storm@cua.dk>
3286
3287 * lisp.h (MAX_ALLOCA): Define here.
3288 (safe_alloca_unwind): Add prototype.
3289 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
3290
3291 * alloc.c (safe_alloca_unwind): New function.
3292
3293 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
3294
3295 * charset.c (Fstring): Use SAFE_ALLOCA.
3296
3297 * coding.c (MAX_ALLOCA): Remove define.
3298
3299 * data.c (MAX_ALLOCA): Remove define.
3300 (Faset): Use SAFE_ALLOCA.
3301
3302 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
3303
3304 * fns.c (string_make_multibyte, string_to_multibyte)
3305 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
3306 (MAX_ALLOCA): Remove define.
3307 (Fbase64_encode_region, Fbase64_encode_string)
3308 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
3309 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
3310 memory leak if encoding fails.
3311
3312 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
3313
9a09408e
EZ
33142004-06-21 Eli Zaretskii <eliz@gnu.org>
3315
3316 * print.c (Fwith_output_to_temp_buffer): Doc fix.
3317
376de739
RS
33182004-06-20 Richard M. Stallman <rms@gnu.org>
3319
3320 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
3321
3322 * search.c (match_limit): Cleaner err msg when no match data available.
3323
3324 * window.c (syms_of_window): Doc fix.
3325
3326 * keyboard.c (command_loop_1): Handle values `only' and `identity'
3327 for Vtransient_mark_mode.
3328
3329 * buffer.c (syms_of_buffer): Doc fix.
3330
acd81db9
DK
33312004-06-21 David Kastrup <dak@gnu.org>
3332
3333 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
3334 and unbinding of `case-fold-search' according to
3335 `completion-ignore-case' around calls of string-match and
3336 predicates, respectively. Should give satisfactory performance
3337 in all relevant cases.
3338
f303762d
JD
33392004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3340
95911c74
JD
3341 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
3342 clip_x/y_origin.
3343
a6cb6b78
JD
3344 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
3345
f303762d
JD
3346 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
3347
3348 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
3349 on Mac OSX.
3350
bbdb2684
LT
33512004-06-16 Luc Teirlinck <teirllm@auburn.edu>
3352
3353 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
3354
5ea48b1c
KS
33552004-06-16 Kim F. Storm <storm@cua.dk>
3356
3357 * dispextern.h (Vimage_types): Remove extern.
3358
803aac3e
MB
33592004-06-16 Miles Bader <miles@gnu.org>
3360
3361 * image.c (lookup_image_type): Initialize image type if necessary.
3362
cdc97764
KS
33632004-06-15 Kim F. Storm <storm@cua.dk>
3364
c4a5739c
KS
3365 * xdisp.c (try_cursor_movement): Exclude header line from scroll
3366 margin at top of window.
3367 (try_window_reusing_current_matrix): Calculate proper cursor position
3368 after scrolling up with non-zero scroll margin, as the old cursor
3369 position corresponds to value of PT before executing this command.
3370 (try_window_id): Consider scroll margin at bottom of window too;
3371 otherwise we fail to scroll when hl-line-mode is enabled.
3372
cdc97764
KS
3373 * syntax.c (skip_chars): Only recognize [:class:] when it has the
3374 proper format and class is a lower-case word.
3375
5b166323
JD
33762004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3377
3378 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 3379 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
3380 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
3381 xg_get_gdk_pixmap_and_mask.
cdc97764 3382
5b166323
JD
3383 * xterm.h (struct x_display_info): Typo in comment fixed.
3384
1ebd4f78
JB
33852004-06-14 Juanma Barranquero <lektu@terra.es>
3386
3387 * dispextern.h (Vimage_types): Make it conditional on
3388 HAVE_WINDOW_SYSTEM.
3389
3390 * image.c (Vimage_types): Move from xdisp.c.
3391 (Vimage_type_cache): New variable.
3392 (define_image_type): New argument indicating whether an image
3393 library was loaded; cache loaded status and return t on success,
3394 nil otherwise.
3395 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
3396 (w32_delayed_load): New function to load an image library from a
3397 list of possible filenames.
3398 (init_xpm_functions, init_png_functions, init_jpeg_functions)
3399 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 3400 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
3401 (Finit_image_library): New function, extracted from `init_image'.
3402 Try to initialize an image library on demand and cache whether we
3403 were successful or not.
3404 (syms_of_image): Initialize `Vimage_types' and
3405 `Vimage_type_cache'. Add recognized image types to Vimage_types.
3406 Export `init-image-library'.
3407 (init_image): Remove initialization of all image types, except xbm
3408 and pbm.
3409
3410 * xdisp.c (Vimage_types): Delete (moved to image.c).
3411
904ee128
AS
34122004-06-14 Andreas Schwab <schwab@suse.de>
3413
3414 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
3415 Avoid calling specbind when completion-regexp-list is empty.
3416
092de21d
RS
34172004-06-13 Richard M. Stallman <rms@gnu.org>
3418
3419 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
3420 (re_wctype, re_iswctype, re_wctype_to_bit):
3421 Non-function definitions moved here from regex.c.
1ebd4f78 3422
092de21d
RS
3423 * regex.c (re_wctype, re_iswctype): Function defs longer static.
3424 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
3425 (re_wctype, re_iswctype, re_wctype_to_bit):
3426 Non-function definitions moved to regex.h.
3427
3428 * window.c (Fselect_window): Doc fix.
3429
3430 * syntax.c: Include regex.h.
3431 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
3432 If requested, make a list of classes, then check the scanned
3433 chars for membership in them.
3434 (in_classes): New function.
3435 Doc fix.
3436
3437 * keyboard.c (cmd_error): Don't call any_kboard_state
3438 if inside a recursive edit level.
3439
34402004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
3441
3442 * keyboard.c (command_loop): Call any_kboard_state before
3443 command_loop_2 when at top level.
3444
3ebc0939
AS
34452004-06-13 Andreas Schwab <schwab@suse.de>
3446
cea5d0d4
AS
3447 * print.c (print_object): Always use %ld for printing EMACS_INT.
3448
3449 * keyboard.c (cancel_hourglass_unwind): Return a value.
3450 (modify_event_symbol): Always use %ld for printing EMACS_INT.
3451 (Fexecute_extended_command): Likewise.
3452
3453 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
3454 avoid clashes.
3455 (SYNTAX): Likewise.
3456 (SYNTAX_WITH_FLAGS): Likewise.
3457 (SYNTAX_MATCH): Likewise.
3458
3459 * syntax.c (char_quoted): Avoid warning about undefined operation.
3460 (find_defun_start): Likewise.
3461 (scan_lists): Likewise.
3462 (INC_FROM): Likewise.
3463 (scan_sexps_forward): Likewise.
3464
be8c4ce4
AS
3465 * image.c: Include <ctype.h>.
3466
3ebc0939
AS
3467 * xfaces.c (face_attr_equal_p): Declare parameters.
3468
6fb41b5b
KH
34692004-06-13 Kenichi Handa <handa@m17n.org>
3470
3471 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
3472
fc3095ce
EZ
34732004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
3474
3475 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
3476
66189a40
KH
34772004-06-12 Kenichi Handa <handa@m17n.org>
3478
3479 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
3480 ccl_prog_stack_struct and update it.
3481 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
3482 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
3483 ccl->eof_ic on EOF.
3484 (ccl_debug_hook): New function.
3485 (struct ccl_prog_stack): New member eof_ic.
3486 (ccl_driver): Handle EOF in subrountine call correctly.
3487
34882004-06-11 Kenichi Handa <handa@m17n.org>
3489
3490 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
3491
1da71023
KS
34922004-06-11 Kim F. Storm <storm@cua.dk>
3493
3494 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
3495
e9efcef4
JB
34962004-06-11 Juanma Barranquero <lektu@terra.es>
3497
3498 * keyboard.c (Fposn_at_point): Doc fix.
3499
9b9ceb61
DK
35002004-06-11 David Kastrup <dak@gnu.org>
3501
3502 * search.c (match_limit): Don't flag an error if match-data
3503 exceeding the allocated search_regs.num_regs gets requested, just
3504 return Qnil.
3505
6e87ac8f
MB
35062004-06-08 Miles Bader <miles@gnu.org>
3507
3508 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
3509
0b0dea7b
JB
35102004-06-07 Juanma Barranquero <lektu@terra.es>
3511
3512 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
3513 (Fcurrent_time_string, Fcurrent_time_zone)
3514 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
3515
a0a23346
MB
35162004-06-07 Miles Bader <miles@gnu.org>
3517
08384afd 3518 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
3519 (push_named_merge_point): New function.
3520 (merge_named_face): New function.
3521 (merge_face_ref, face_at_buffer_position, face_at_string_position):
3522 Use `merge_named_face'.
3523 (merge_face_inheritance): Function removed.
c8d09ad8 3524 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
3525 Add new `err_msgs' and `named_merge_points' args. Return error
3526 status. Only print error messages if ERR_MSGS is true. Don't try to
3527 do :inherit attribute validation.
3528 (merge_face_heights): Handle `unspecified' in both directions.
3529 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
3530 Call `merge_face_ref' instead of `merge_face_inheritance'.
3531 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
3532 (compute_char_face, face_at_buffer_position)
3533 (face_at_string_position): Call `merge_face_ref' instead of
3534 `merge_face_vector_with_property'.
3535
12d5b185
KH
35362004-06-07 Kenichi Handa <handa@m17n.org>
3537
3538 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
3539 the necessary places.
3540
2e2d7ee6
KS
35412004-06-07 Kim F. Storm <storm@cua.dk>
3542
3543 * process.c (Fdelete_process): Undo 2004-05-28 change.
3544 Instead, call status_notify also for network process.
3545 (status_message): Use process instead of status as arg.
3546 Give messages "deleted" or "connection broken by remote peer" for
3547 an exited network process.
3548 (status_notify): Change call to status_message.
3549 (read_process_output): Increase readmax to 4096. Do not increase
3550 buffer size for datagram channels (default is now large enough).
3551
fcf0d299
ST
35522004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
3553
3554 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
3555 problem due to newly defined variable.
3556
0722292b
MB
35572004-06-06 Miles Bader <miles@gnu.org>
3558
3559 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
3560 immediately if non-interactive or not initialized.
3561
ddfb8369
RS
35622004-06-05 Richard M. Stallman <rms@gnu.org>
3563
3564 * minibuf.c (Fcompleting_read): Doc fix.
3565
57015754
AS
35662004-06-05 Andreas Schwab <schwab@suse.de>
3567
3568 * macfns.c (x_create_tip_frame): Fix declaration after statement.
3569
23715ea6
JB
35702004-06-05 Juanma Barranquero <lektu@terra.es>
3571
3572 * keymap.c (Fdescribe_vector): Fix docstring.
3573 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
3574
8e330b22
MB
35752004-06-05 Miles Bader <miles@gnu.org>
3576
3577 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
3578 attributes have different values than the default face.
3579
9742a3a6
EZ
35802004-06-04 Eli Zaretskii <eliz@gnu.org>
3581
3582 * xfaces.c (x_supports_face_attributes_p): Make this function
3583 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
3584 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
3585 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 3586
9717e36c
MB
35872004-06-04 Miles Bader <miles@gnu.org>
3588
3589 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
3590 from Ftty_supports_face_attributes_p.
3591 (x_supports_face_attributes_p): New function.
3592 (Ftty_supports_face_attributes_p): Function deleted.
3593 (Fdisplay_supports_face_attributes_p): New function.
3594 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 3595 (face_attr_equal_p): New function.
9717e36c
MB
3596 (lface_equal_p): Use it.
3597
52deb19f
JB
35982004-06-03 Juanma Barranquero <lektu@terra.es>
3599
3600 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
3601 (Vw32_color_map): Fix typo in docstring.
3602 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
3603 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
3604 Make argument names match their use in docstring.
3605
86d373e6
JB
36062004-06-02 Juanma Barranquero <lektu@terra.es>
3607
3608 Work around bugs/problems with MinGW builds of graphics libraries
3609 called from MSVC builds of Emacs.
3610
3611 * image.c (lookup_image): Make pointer to img static.
3612 (png_read_from_memory): Disable "global" optimization.
3613
2fb0ce67
SM
36142004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
3615
c8d09ad8
SM
3616 * eval.c (Fcondition_case): Fix usage. Simplify.
3617
2fb0ce67
SM
3618 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
3619
50bf7673
ST
36202004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3621
3622 * macfns.c: Don't include ccl.h.
3623 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
3624 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
3625 TextUtils.h.
c8d09ad8 3626 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
3627 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
3628 display height/width.
3629 (compute_tip_xy, Vx_max_tooltip_size): Declare.
3630 (unwind_create_tip_frame, compute_tip_xy): New functions.
3631 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
3632 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
3633 and last_show_tip_args.
2fb0ce67 3634
50bf7673
ST
3635 * macgui.h [!MAC_OSX]: Include Gestalt.h.
3636 (Cursor, No_Cursor): New defines.
c8d09ad8 3637 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
3638 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
3639
3640 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
3641
3642 * macterm.c: Don't include Gestalt.h.
3643 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
3644 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
3645 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
3646 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
3647 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
3648 (construct_mouse_click, XTmouse_position)
3649 (x_scroll_bar_report_motion, x_calc_absolute_position)
3650 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
3651 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
3652 (note_mouse_movement): Clear the mouse face and reset the pointer
3653 shape when the pointer goes outside the frame without grabbing.
3654 (mac_front_window): New function.
3655 (mac_window_to_frame): New macro.
3656 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
3657 (do_window_activate, do_window_deactivate, do_app_resume)
3658 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
3659 (do_zoom_window, mac_do_receive_drag, XTread_socket)
3660 (mac_check_for_quit_char): Use mac_front_window and/or
3661 mac_window_to_frame.
3662 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
3663 scroll-bar click event.
3664 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 3665 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 3666 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 3667 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
3668 (do_window_update): Don't do anything if the updated window is the
3669 tooltip window.
3670 (do_mouse_moved): Handle mouse movement events here (previously in
3671 XTread_socket). Clear the mouse face if
3672 dpyinfo->mouse_face_hidden is set.
3673 (do_os_event, do_events): Remove (now in XTread_socket).
3674 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
3675 Loop until all the events in the queue are processed.
3676 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
3677 contents of do_os_event and do_events. Remove mouse movement
3678 handling (now in do_mouse_moved). Add the case where
3679 Vmouse_highlight has an integer value.
3680 (NewMacWindow): Remove.
3681 (make_mac_frame): Do what NewMacWindow previously did. Don't do
3682 excess initializations.
3683 (make_mac_terminal_frame): Previous initializations in
3684 make_mac_frame are moved here.
c8d09ad8
SM
3685 (mac_initialize_display_info):
3686 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
3687
3688 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
3689 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
3690
08fd1251
RS
36912004-05-29 Richard M. Stallman <rms@gnu.org>
3692
3693 * lisp.h (truncate_undo_list): Update decl.
3694
3695 * alloc.c (undo_outer_limit): New variable.
3696 (syms_of_alloc): Defvar it.
3697 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
3698
3699 * undo.c (truncate_undo_list): New arg LIMITSIZE.
3700
3701 * alloc.c (lisp_align_malloc): Check for base == 0
3702 regardless of HAVE_POSIX_MEMALIGN.
3703 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
3704
227ef0ff
SM
37052004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
3706
3707 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
3708 (marker_blocks_pending_free): Remove.
3709 (Fgarbage_collect): Sweep after cleaning up undo-lists.
3710 Mark the undo lists after claning them up.
3711 Don't free block in marker_blocks_pending_free.
3712 (mark_buffer): Don't mark undo_list.
3713 (gc_sweep): Sweep hash-tables and strings first.
3714 Do free marker blocks that are empty.
3715
034a6113
SM
37162004-05-28 Jim Blandy <jimb@redhat.com>
3717
3718 * regex.c (print_partial_compiled_pattern): Add missing 'break'
3719 after 'case wordend'. For symbeg and symend, print to stderr,
3720 like the other cases.
3721
33594a8d
NF
37222004-05-28 Noah Friedman <friedman@splode.com>
3723
3724 * process.c (Fdelete_process): Do not call remove_process.
3725
ce50a847
SM
37262004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
3727
3728 * alloc.c (struct backtrace): Remove.
3729 (Fgarbage_collect): Use the new mark_backtrace.
3730
3731 * eval.c (mark_backtrace): New function.
3732
3733 * minibuf.c (run_exit_minibuf_hook): New function.
3734 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
3735 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
3736
1e8dae36
KS
37372004-05-27 Kim F. Storm <storm@cua.dk>
3738
3739 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
3740 over display properties, e.g. images, that replace buffer text.
3741
846faa3b
KS
37422004-05-25 Kim F. Storm <storm@cua.dk>
3743
3744 * alloc.c (marker_blocks_pending_free): New var.
3745 (gc_sweep): Store free marker blocks on that list.
3746 (Fgarbage_collect): Free them after undo-list cleanup.
3747
3748 * process.c (wait_reading_process_input): Check connect_wait_mask
3749 before actually accepting connection in case it has already been
3750 accepted due to recursion.
3751
b6189c3b 37522004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 3753
ce50a847
SM
3754 * coding.c (Fset_safe_terminal_coding_system_internal):
3755 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 3756
71d5a208
RS
37572004-05-22 Richard M. Stallman <rms@gnu.org>
3758
3759 * alloc.c (Fmake_string): Doc fix.
3760
3761 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
3762 and the alist pairs too.
3763
3764 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
3765
3766 * emacs.c (main): Update copyright year.
3767
3768 * fileio.c (Fread_file_name): Expand DIR if not absolute.
3769
3770 * insdel.c (del_range_2, replace_range): Don't write an anchor
3771 if the gap is empty.
3772
3773 * xdisp.c (try_scrolling): If scroll-up-aggressively or
3774 scroll-down-aggressively is small but positive, put point
3775 near the screen edge.
3776
f63fd14e
JB
37772004-05-22 Juanma Barranquero <lektu@terra.es>
3778
3779 * keymap.c (Fdefine_key): Doc fix.
3780
4d12067c
KS
37812004-05-22 Kim F. Storm <storm@cua.dk>
3782
3783 * alloc.c (struct backtrace): Add debug_on_exit member.
3784 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
3785 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
3786 the removed cons cells.
3787 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
3788 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
3789 any cons cells pointing to unallocated stings.
3790 Do not lisp_free any marker blocks, as there may still be pointers
3791 to them from buffer undo lists at this stage of GC.
3792
3793 * keyboard.c (struct backtrace): Add debug_on_exit member.
3794 (Fcommand_execute): Clear it.
3795
931285e2
LT
37962004-05-20 Luc Teirlinck <teirllm@auburn.edu>
3797
3798 * intervals.c (lookup_char_property): Do not prematurely return nil.
3799
669fa600
SM
38002004-05-19 Jim Blandy <jimb@redhat.com>
3801
3802 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 3803 beginning and end of symbols.
4d12067c 3804
669fa600
SM
3805 * regex.c (enum syntaxcode): Add Ssymbol.
3806 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
3807 (re_opcode_t): New opcodes `symbeg' and `symend'.
3808 (print_partial_compiled_pattern): Print the new opcodes properly.
3809 (regex_compile): Parse the new operators.
ce50a847 3810 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
3811 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
3812 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
3813 (re_match_2_internal): Match symbeg and symend.
3814
3815 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
3816
0d8c2e5c
KS
38172004-05-19 Kim F. Storm <storm@cua.dk>
3818
3819 * .gdbinit (xsymbol): Fix last change.
3820
669fa600
SM
38212004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
3822
3823 * .gdbinit (xprintstr): New fun.
3824 (xstring, xprintsym): Use it.
3825
3826 * w32proc.c (create_child): Use INTMASK.
3827
3828 * alloc.c (Fgarbage_collect): Do all the marking before flushing
3829 unmarked elements of the undo list.
3830
9a6a4c40
DP
38312004-05-18 David Ponce <david@dponce.com>
3832
3833 * print.c (print): Reset print_depth before to call print_object.
3834
f3c4ec74
JR
38352004-05-18 Jason Rumney <jasonr@gnu.org>
3836
3837 * w32console.c: Prefix RIF functions with w32con_ to avoid
3838 namespace clash with functions in term.c and w32term.c.
3839
3840 * w32menu.c (add_menu_item, w32_menu_display_help)
3841 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
3842
0d8c2e5c 3843 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 3844
6be49c3a
EZ
38452004-05-18 Eli Zaretskii <eliz@gnu.org>
3846
4d0b9a0a
EZ
3847 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
3848
6be49c3a
EZ
3849 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
3850 with make_number.
3851 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
3852 with XINT.
3853
0bc90bba
KS
38542004-05-18 Kim F. Storm <storm@cua.dk>
3855
89d19988
KS
3856 * blockinput.h (INPUT_BLOCKED_P): New macros.
3857
3858 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
3859 (Ftop_level): Unblock input if blocked.
3860
0bc90bba
KS
3861 * buffer.h (GET_OVERLAYS_AT): New macro.
3862 * msdos.c (IT_note_mouse_highlight): Use it.
3863 * textprop.c (get_char_property_and_overlay): Use it.
3864 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
3865 * xfaces.c (face_at_buffer_position): Use it.
3866
3867 * print.c (print_object): Increase buf size.
3868
653bd0f6
JR
38692004-05-17 Jason Rumney <jasonr@gnu.org>
3870
3871 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
3872 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
3873 Lisp_Object using i member.
3874 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
3875 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
3876 consistently.
3877
3878 * w32proc.c (create_child): Use make_number instead of masking pid.
3879
3880 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
3881 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
3882 Use EQ to compare Lisp_Objects.
3883 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
3884
3885 * w32term.c (w32_num_mouse_buttons): Rename from
3886 Vw32_num_mouse_buttons and make it an int.
3887
3888 * w32.c (init_environment): Use it.
3889
3890 * w32fns.c (w32_wnd_proc): Likewise.
3891
3892 * w32proc.c (w32_pipe_read_delay): Rename from
3893 Vw32_pipe_read_delay and make it an int.
3894
3895 * w32.c (_sys_read_ahead): Use it.
3896
3897 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
3898
3899 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
3900
3901 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
3902 (key_event): Don't mix Lisp_Object and int.
3903
3904 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
3905
3906 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
3907 modifiers in language change event.
3908
54b53ba7
KS
39092004-05-17 Kim F. Storm <storm@cua.dk>
3910
3911 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
3912 Such objects may be freed markers which still exist on an undo list.
3913
6e86a75d
JB
39142004-05-16 Juanma Barranquero <lektu@terra.es>
3915
3916 * data.c (Fset_default): Make argument names match their use in
3917 docstring.
3918
fc80da24
AS
39192004-05-15 Andreas Schwab <schwab@suse.de>
3920
3921 * emacs.c (gdb_array_mark_flag): Define.
3922 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
3923
c1380aa6
EZ
39242004-05-15 Eli Zaretskii <eliz@gnu.org>
3925
3926 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
3927 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
3928 defined for the MS-DOS build.
3929
89458937
SM
39302004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
3931
3932 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
3933
08020f9a
KH
39342004-05-14 Kenichi Handa <handa@m17n.org>
3935
3936 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
3937
a433994a
ST
39382004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3939
3940 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
3941 section to frame.c section.
3942 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 3943 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 3944
a433994a 3945 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 3946
a433994a 3947 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 3948
a433994a
ST
3949 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
3950 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
3951 (XTread_socket): Fix int/Lisp_Object mixup.
3952 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 3953
a433994a
ST
3954 * macterm.h (struct frame, struct face, struct image)
3955 (display_x_get_resource, Fx_display_color_p)
89458937
SM
3956 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
3957 Add prototypes.
a433994a 3958
b51a51b9
KS
39592004-05-14 Kim F. Storm <storm@cua.dk>
3960
3961 * process.c (wait_reading_process_input): Make reentrant.
3962 Make Available and Connecting non-static. Save and restore value
3963 of waiting_for_user_input_p.
3964
2bde1dd8
KS
39652004-05-13 Kim F. Storm <storm@cua.dk>
3966
3967 * keyboard.c (mark_kboards): Don't mark x and y members
3968 that are overloaded in selection request events.
3969
a267ab4d
SM
39702004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
3971
3972 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
3973
eb15ce9e
GM
39742004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
3975
3976 * window.c (Fdisplay_buffer, Fsplit_window)
3977 (split-height-threshold): Doc fix.
3978
7fc92635
JB
39792004-05-13 Juanma Barranquero <lektu@terra.es>
3980
3981 * xfaces.c (Ftty_supports_face_attributes_p)
3982 (Finternal_copy_lisp_face): Fix typo in docstring.
3983 (Finternal_get_lisp_face_attribute): Fix docstring.
3984
1ec2a572
JD
39852004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3986
3987 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
3988
ae9292e0
ST
39892004-05-11 Steven Tamm <steventamm@mac.com>
3990
3991 * macfns.c (Fx_create_frame): Default to using tool-bar by
3992 setting tool-bar-lines to 1 in default-frame-alist.
3993
39942004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
3995
3996 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
3997 (xpm_get_color_table_v, xpm_make_color_table_h)
3998 (xpm_put_color_table_h, xpm_get_color_table_h)
3999 (xpm_str_to_color_key, xpm_load_image, xpm_load)
4000 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 4001 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 4002
fe97e8df
ST
40032004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4004
a267ab4d 4005 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
4006 instead of FRAME_X_P
4007
b47e779e
KS
40082004-05-11 Kim F. Storm <storm@cua.dk>
4009
4010 * process.c (read_process_output): Grow decoding_buf when needed;
4011 this could cause a crash in allocate_string and compact_small_strings.
4012
cdc9b845
EZ
40132004-04-29 Jim Blandy <jimb@redhat.com>
4014
4015 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
4016 against proper opcode.
4017
aa7094ba
JB
40182004-05-10 Juanma Barranquero <lektu@terra.es>
4019
4020 * process.c (Fstart_process): Fix docstring.
4021
4022 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
4023 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
4024 (Fsplit_char, Fchar_charset): Make argument names match their use
4025 in docstring.
4026
e109331a
RS
40272004-05-10 Richard M. Stallman <rms@gnu.org>
4028
4029 * print.c (print_preprocess): Use being_printed, loop_count and
4030 halftail to detect overdeep nesting and cyclic cdr chains.
4031
9a28b921
AS
40322004-05-10 Andreas Schwab <schwab@suse.de>
4033
78819ebb 4034 * lisp.h (Fmake_symbolic_link): Declare.
9a28b921
AS
4035
4036 * fileio.c (Frename_file): Remove extra argument in call to
4037 Fmake_symbolic_link.
4038
e2c02c1a
KS
40392004-05-10 Kim F. Storm <storm@cua.dk>
4040
4041 * xdisp.c (calc_line_height_property): Use string position when
4042 object is a string.
4043
cfe9d13e
KH
40442004-05-10 Kenichi Handa <handa@m17n.org>
4045
a57e8159
KH
4046 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
4047 inhibit-modification-hooks to t temporarily before calling
4048 Ferase_buffer.
4049
4050 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
4051 inhibit-modification-hooks to t temporarily before calling
4052 Ferase_buffer.
4053
4054 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
4055 inhibit-modification-hooks to t temporarily before calling
4056 Ferase_buffer.
4057
cfe9d13e
KH
4058 * fns.c (count_combining): Delete it.
4059 (concat): Don't check combining bytes.
4060
ceb96489
JR
40612004-05-09 Jason Rumney <jasonr@gnu.org>
4062
4063 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
4064 (globals_of_w32fns): Set it.
4065
b6189c3b 40662004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
4067
4068 * data.c (Fquo): Simplify.
4069
28712a21
JB
40702004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
4071
4072 * data.c (Fquo): If any argument is float, do the computation in
4073 floating point.
4074
0f0af7a8
JB
40752004-05-08 Juanma Barranquero <lektu@terra.es>
4076
88214ef6
JB
4077 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
4078 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
4079 Fix spelling of Emacs on docstring.
4080 (Fset_process_coding_system, Fprocess_coding_system)
4081 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
4082 Make argument names match their use in docstring.
4083 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
4084 Fix docstring.
4085
0f0af7a8
JB
4086 * editfns.c (Finsert_buffer_substring): Make argument names match their
4087 use in docstring.
4088
4089 * syntax.c (Fmodify_syntax_entry): Fix docstring.
4090
2a316a84
ST
40912004-05-07 Steven Tamm <steventamm@mac.com>
4092
4093 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
4094 around call to ReceiveEvent to avoid certain crashes.
4095
40962004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 4097
2a316a84
ST
4098 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
4099 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
4100 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
4101 Save/restore the current graphics port and device handle when
4102 drawing into an offscreen graphics world.
4103
4104 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
4105 (gif_load): Likewise.
4106
ab80314b
JB
41072004-05-07 Juanma Barranquero <lektu@terra.es>
4108
4109 * window.c (Fset_window_buffer): Fix docstring.
4110
70646bb5
TTN
41112004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
4112
4113 * emacs.c (main) [VMS]: Fix var ref.
4114
b6189c3b 41152004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
4116
4117 * data.c (Fsetq_default): Fix docstring.
4118
279d3293
JR
41192004-05-06 Jason Rumney <jasonr@gnu.org>
4120
4121 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
4122 to avoid name clash.
4123
f72b5416
JD
41242004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4125
4126 * fileio.c (barf_or_query_if_file_exists): Use lstat.
4127 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 4128 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 4129
6ab66799
KS
41302004-05-04 Kim F. Storm <storm@cua.dk>
4131
4132 * xdisp.c (Qtotal): New var.
4133 (syms_of_xdisp): Intern and staticpro it.
4134 (calc_line_height_property): New arg total. Set it if
4135 line-spacing property has format (total . VALUE).
4136 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
4137 Handle total line-spacing property.
4138
ab2d724b
JD
41392004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4140
4141 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
4142 "under" scroll bar when size/position changes.
4143
238add5e
JR
41442004-05-03 Jason Rumney <jasonr@gnu.org>
4145
4146 * makefile.nt: Remove.
4147
1644f4e4
EZ
41482004-05-02 Eli Zaretskii <eliz@gnu.org>
4149
a267ab4d
SM
4150 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
4151 Avoid compiler warnings.
05fdbeb8 4152
1644f4e4
EZ
4153 * Makefile.in (region-cache.o): Depend on config.h.
4154
b6189c3b 41552004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
4156
4157 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
4158 with continuation lines, too.
4159
2b98b088
TTN
41602004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
4161
4162 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
4163
d9bf7950
SM
41642004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
4165
4166 * xdisp.c (calc_line_height_property): YAILOM (yet another
4167 int/Lisp_Object mixup).
4168
affa509c
EZ
41692004-05-01 Eli Zaretskii <eliz@gnu.org>
4170
4171 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
4172 undo bad effect of pack(4) in some versions of system headers.
4173
07c07cfe
JR
41742004-05-01 Jason Rumney <jasonr@gnu.org>
4175
4176 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
4177
e71caa4e
KS
41782004-04-30 Kim F. Storm <storm@cua.dk>
4179
4180 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 4181 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
4182
4183 * dispextern.h (struct it): Remove member use_default_face.
4184 Add members override_ascent, override_descent, override_boff.
4185
4186 * xdisp.c (init_iterator): Handle line-spacing float value.
4187 Initialize override_ascent member.
4188 (append_space_for_newline): Reset override_ascent.
4189 Remove use_default_face.
4190 (calc_line_height_property): New function to calculate value of
4191 line-height and line-spacing properties. Look at overlays, too.
4192 Set override_ascent, override_descent, override_boff members when
4193 using another face than the current face. Float values are now
4194 relative to the frame default font, by default; accept a cons
4195 of ratio and face name to specify value relative to a specific face.
4196 (x_produce_glyphs): Use calc_line_height_property.
4197 Use override_ascent etc. when set to handle different face heights.
4198 A negative line-spacing property value is interpreted as a total
4199 line height, rather than inter-line spacing.
4200 (note_mouse_highlight): Allocate room for 40 overlays initially.
4201
0fddae66
SM
42022004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
4203
4204 * data.c (Fsubr_name): New fun.
4205 (syms_of_data): Defsubr it.
4206
712d23dc
KS
42072004-04-29 Kim F. Storm <storm@cua.dk>
4208
4209 * xdisp.c (null_glyph_slice): New var.
4210 (append_glyph, append_composite_glyph, append_stretch_glyph):
4211 Use it to initialize glyph slice.
4212
033ad8c6
SM
42132004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
4214
4215 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
4216 (on_hot_spot_p): Make sure we always return a value.
4217 (Flookup_image_map): Remove unused var ix and iy.
4218 (note_mode_line_or_margin_highlight): Remove unused var `image'.
4219
93397360
EZ
42202004-04-27 Eli Zaretskii <eliz@gnu.org>
4221
4222 * msdos.c (init_environment): If one of the TMP... environment
4223 variables is set to a drive letter without a trailing slash,
4224 append a slash.
4225
0c54865e
EZ
42262004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
4227
4228 * editfns.c (lisp_time_argument): Provide externally.
4229
4230 * fileio.c (Fset_file_times): New function.
4231 (syms_of_fileio): Intern and staticpro it.
4232
d3b111bd
KS
42332004-04-27 Kim F. Storm <storm@cua.dk>
4234
07dc1231
KS
4235 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
4236 header line strings.
4237
360fe9d2
KS
4238 * dispextern.h (struct it): New member use_default_face.
4239
d3b111bd
KS
4240 * xdisp.c (Qline_height): New variable.
4241 (syms_of_xdisp): Intern and staticpro it.
4242 (append_space_for_newline): Partially undo 2004-04-25 change;
4243 add default_face_p arg, and restore callers.
4244 Clear it->use_default_face after use.
4245 (x_produce_glyphs): Set default font for ascii char if
4246 it->use_default_font is set. Change line-spacing property to set
4247 just extra line spacing. Handle new line-height property.
4248
0448588b
AS
42492004-04-26 Andreas Schwab <schwab@suse.de>
4250
4251 * print.c (print_object): Print non-ascii characters in bool
4252 vector representation as octal escapes.
4253
4254 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
4255 * print.c (print_object): Use it instead of BITS_PER_CHAR for
4256 bool vectors.
4257 * lread.c (read1): Likewise.
4258 * alloc.c (Fmake_bool_vector): Likewise.
4259 * data.c (Faref, Faset): Likewise.
4260 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
4261 (mapcar1): Likewise.
d3b111bd 4262
536d6baa
ST
42632004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
4264
4265 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
4266
ae11577a
MB
42672004-04-26 Miles Bader <miles@gnu.org>
4268
4269 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
4270
e198ba87
JB
42712004-04-26 Juanma Barranquero <lektu@terra.es>
4272
4273 * buffer.c (Fpop_to_buffer): Fix docstring.
4274
f3d5f92d 42752004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 4276
f3d5f92d
ST
4277 * lread.c (init_lread): Don't display missing lisp directory
4278 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 4279 may be built without correct installation path.
f3d5f92d 4280
03e35edc
KS
42812004-04-25 Kim F. Storm <storm@cua.dk>
4282
9ff3aa31
KS
4283 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
4284
4285 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
4286
03e35edc
KS
4287 * xdisp.c (append_space_for_newline): Rename from append_space.
4288 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
4289 (x_produce_glyphs): Handle line-spacing property on newline char.
4290 If value is t, adjust ascent and descent to fit current row height.
4291 If value is an integer or float, set extra_line_spacing to integer
4292 value, or to float value x current line height.
4293
f24814e0
KH
42942004-04-23 Kenichi Handa <handa@m17n.org>
4295
4296 * fontset.c (Finternal_char_font): If POSITION is nil, return
4297 font for displaying CH with the default face.
4298
d814862a
JB
42992004-04-23 Juanma Barranquero <lektu@terra.es>
4300
4301 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
4302
063a45c5
SM
43032004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
4304
4305 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
4306 Don't make assumptions about the relative place of i and val.
4307 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
4308
ae7ab2d3
KS
43092004-04-21 Kim F. Storm <storm@cua.dk>
4310
4311 * dispextern.h (struct glyph_slice): New struct.
4312 (struct glyph): New member slice.
4313 (GLYPH_SLICE_EQUAL_P): New macro.
4314 (GLYPH_EQUAL_P): Use it.
4315 (struct glyph_string): New member slice.
4316 (struct it_slice): New struct.
4317 (struct it): New member slice, add member to stack too.
4318 New member constrain_row_ascent_descent_p.
4319 (image_ascent): Add prototype.
4320
4321 * dispnew.c (buffer_posn_from_coords): Return full image width
4322 and height even for image slices (posn is relative to full image).
4323 (marginal_area_string): Adjust x0,y0 for image slice.
4324
4325 * image.c (image_ascent): Add slice arg; calculate ascent for
4326 image slice (or full image).
4327
4328 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
4329 (syms_of_keyboard): Defsubr them.
4330
4331 * lisp.h (pos_visible_p): Fix prototype.
4332
c62aec78 4333 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
4334 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
4335 (x_draw_image_foreground, x_draw_image_relief)
4336 (x_draw_image_foreground_1, x_draw_image_glyph_string):
4337 Draw sliced images.
4338
4339 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
4340 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
4341 (x_draw_image_foreground, x_draw_image_relief)
4342 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
4343 Draw sliced images.
4344
4345 * w32term.h (image_ascent): Remove prototype.
4346
4347 * window.c (Fpos_visible_in_window_p): Return pixel position if
4348 PARTIALLY arg is non-nil. Simplify. Doc fix.
4349 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
4350 to return/set vscroll in pixels.
4351
4352 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
4353
4354 * xdisp.c (Qslice): New variable.
4355 (syms_of_xdisp): Intern and staticpro it.
4356 (pos_visible_p): Return pixel position in new x and y args.
4357 (init_iterator): Reset it->slice info.
4358 (handle_display_prop): Parse (slice ...) property.
4359 (push_it, pop_it): Save/restore slice info.
4360 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
4361 force repositioning of tall row if window is vscrolled, as that
4362 would reset vscroll.
4363 (append_space): Set it->constrain_row_ascent_descent_p to avoid
4364 increasing row height if row is non-empty.
4365 (fill_image_glyph_string): Copy slice info.
4366 (take_vertical_position_into_account): Simplify.
4367 (produce_image_glyph): Handle iterator slice info, setup glyph
4368 slice info. Do not force minimum line height.
4369 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
4370 do not increase height (ascent/descent) of non-empty row when
4371 adding normal character glyph; instead reduce glyph ascent/descent
4372 appropriately; if row is higher than current glyph, adjust glyph
4373 descent/ascent to reposition glyph within the existing row.
4374 Likewise, when char is newline, only set ascent/descent if row is
4375 currently empty.
4376 (note_mouse_highlight): Handle hotspots with sliced image.
4377
4378 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
4379 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
4380 (x_draw_image_foreground, x_draw_image_relief)
4381 (x_draw_image_foreground_1, x_draw_image_glyph_string):
4382 Draw sliced images.
4383
4384 * xterm.h (image_ascent): Remove prototype.
4385
d58f8753
SM
43862004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
4387
4388 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
4389
4ce2719d
JPW
43902004-04-20 John Paul Wallington <jpw@gnu.org>
4391
4392 * fns.c (Fassoc, Feql): Fix indentation.
4393
d58f8753 4394 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 4395
95f8c3b9
JPW
43962004-04-19 John Paul Wallington <jpw@gnu.org>
4397
4398 * fns.c (Feql): New function.
d58f8753 4399 (syms_of_fns): Defsubr it.
95f8c3b9 4400
b7e85537
JR
44012004-04-18 Jason Rumney <jasonr@gnu.org>
4402
4403 * w32select.c (Fw32_set_clipboard_data): Get sequence number
4404 after closing the clipboard.
4405
5a72efd4
LT
44062004-04-16 Luc Teirlinck <teirllm@auburn.edu>
4407
4408 * buffer.c (Fbuffer_base_buffer): Doc fix.
4409
20dc8583
KS
44102004-04-17 Kim F. Storm <storm@cua.dk>
4411
60962ec4
KS
4412 * keymap.c (Fkey_description): Add optional PREFIX arg.
4413 Combine prefix with KEYS to make up the full key sequence to describe.
4414 Correlate meta_prefix_char and following (simple) key to describe
4415 as meta modifier. All callers changed.
4416 (describe_map): Rename arg `keys' to `prefix'. Remove local
4417 `elt_prefix' var. Use Fkey_description with prefix instead of
4418 elt_prefix combined with Fsingle_key_description.
4419 (describe_vector): Declare static. Replace arg `elt_prefix' with
4420 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
4421 if !KEYMAP_P. Use Fkey_description with prefix instead of
4422 Fsingle_key_description.
4423
4424 * keymap.h (Fkey_description): Fix prototype.
4425 (describe_vector): Remove prototype.
4426
409368b9
KS
4427 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
4428
20dc8583
KS
4429 * image.c (PNG_BG_COLOR_SHIFT): Remove.
4430 (png_load): Fix calculation of transparent background color on X
4431 and W32 platforms.
4432
75c5501b
JB
44332004-04-16 Juanma Barranquero <lektu@terra.es>
4434
4435 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
4436 not too large before computing how much to scroll.
4437
da879ae8
SM
44382004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
4439
4440 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
4441
d01ca4a8
LT
44422004-04-14 Luc Teirlinck <teirllm@auburn.edu>
4443
4444 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
4445 Add hyperlink to Elisp manual to the docstring.
4446
572943b3
SM
44472004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
4448
4449 * callint.c (fix_command): Use XDCR.
4450
5e30a0fb
NR
44512004-04-14 Nick Roberts <nick@nick.uklinux.net>
4452
4453 * window.c (Fget_lru_window): Doc fix.
4454
a27ddfaf
KS
44552004-04-14 Kim F. Storm <storm@cua.dk>
4456
4457 * editfns.c (Fformat): Fix allocation size of precision array.
4458
4459 * dispnew.c (update_window): Only set changed_p if
4460 scrolling_window actually did scroll.
4461 (scrolling_window): Only return 1 if we actually did scroll.
4462
4463 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
4464 height to glyph height when cursor row is not fully visible.
4465 (make_cursor_line_fully_visible): Add FORCE_P arg to return
4466 failure in case row is higher than window. Callers changed.
4467 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
4468 Try to scroll partially visible, higher-than-window cursor row.
4469 (redisplay_window): Always try to scroll partially visible,
4470 higher-than-window cursor row - both initially and again with
4471 centering_position = 0.
4472 Clear desired matrix before retrying with centering_position = 0.
4473
da879ae8
SM
44742004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
4475
4476 * syntax.c (scan_lists): Simplify backward string scan.
4477 Fix off-by-one boundary check for string and comment fences.
4478
5fc16e8e
SM
44792004-04-13 Joe Buehler <jbuehler@hekimian.com>
4480
4481 * sheap.c, unexcw.c: New files.
4482
c9aac8e6
LT
44832004-04-12 Luc Teirlinck <teirllm@auburn.edu>
4484
4485 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
4486 base buffer has been killed. Correct the error message if the
4487 base buffer does not exist.
4488
1e88a355
SM
44892004-04-12 Joe Buehler <jbuehler@hekimian.com>
4490
4491 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
4492 Cygwin itself. Add support for Xaw3d scrollbars.
4493
4494 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
4495
4496 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
4497
4498 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
4499 before Cygwin unexec.
4500
4501 * Makefile.in: Link changes for Cygwin unexec() support.
4502
8dbff9a0
AS
45032004-04-12 Andreas Schwab <schwab@suse.de>
4504
4505 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
4506
54dffe35
LT
45072004-04-11 Luc Teirlinck <teirllm@auburn.edu>
4508
4509 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
4510 IGNORE argument equals NAME. Doc fix.
4511
99a72bdf
MY
45122004-04-11 Masatake YAMATO <jet@gyve.org>
4513
1e88a355 4514 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
4515 empty if they are backwards.
4516
40899d7b
SM
45172004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
4518
4519 * xfaces.c (face_color_supported_p): Fix compilation without X11.
4520
f8f853de
SM
45212004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
4522
4523 * doc.c (Fsnarf_documentation): Ignore new file name entries.
4524
c953fe1b
KS
45252004-04-06 Kim F. Storm <storm@cua.dk>
4526
661e85c1
KS
4527 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
4528 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
4529
4530 * w32term.c (w32_read_socket): Set mouse_face_hidden after
4531 clearing highlight.
4532
4533 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
4534
4535 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
4536 clearing highlight.
4537
c953fe1b
KS
4538 * indent.c (vmotion): Do not reserve one column for continuation
4539 marks on window frames.
4540
c1994268
EZ
45412004-04-04 Eli Zaretskii <eliz@gnu.org>
4542
4543 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
4544 from GCC.
4545
9f691b0d
SM
45462004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
4547
4548 * .gdbinit-union: Remove.
4549
4550 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
4551 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
4552 ($nonvalbits): Remove.
4553 ($valmask): Set it by calling xreload to avoid redundancy.
4554
4555 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
4556 (gdb_emacs_intbits): Remove.
4557
7a8560d7
JD
45582004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4559
9f691b0d 4560 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 4561
3c8111fc
KH
45622004-03-30 Kenichi Handa <handa@m17n.org>
4563
4564 * editfns.c (Fformat): Fix initialization of the array info.
4565
48a0bce4
KS
45662004-03-30 Kim F. Storm <storm@cua.dk>
4567
4568 * xterm.c (x_mouse_click_focus_ignore_position): New var.
4569 (syms_of_xterm): DEFVAR_BOOL it.
4570 (ignore_next_mouse_click_timeout): New var.
4571 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
4572 Use it to filter mouse clicks following focus event.
4573
1cd0066c
KS
45742004-03-29 David Ponce <david@dponce.com>
4575
4576 * callint.c (Fcall_interactively): Fix last change.
4577
adb3b353
SM
45782004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
4579
4580 * eval.c (Fcommandp): Simplify.
4581
4582 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
4583 Extend to handle all kinds of functions.
4584
4585 * lisp.h (Finteractive_form): Declare.
4586
4587 * callint.c (Fcall_interactively): Use it.
4588
6fc4c9c9
KS
45892004-03-26 Kim F. Storm <storm@cua.dk>
4590
4591 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
4592 to catch errors in calc_pixel_width_or_height during redisplay.
4593
abdb9b83
MY
45942004-03-26 Masatake YAMATO <jet@gyve.org>
4595
b17856dd 4596 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 4597
b17856dd 4598 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 4599
b17856dd 4600 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 4601
b17856dd 4602 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 4603
e8a84b6c
JD
46042004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4605
b17856dd 4606 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 4607
36a3fd05
RS
46082004-03-19 Richard M. Stallman <rms@gnu.org>
4609
4610 * s/sol2-6.h: Delete previous change.
4611
ab24c127
KS
46122004-03-19 Kim F. Storm <storm@cua.dk>
4613
4614 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
4615 to_charpos corresponds to newline in right fringe. Use local
4616 BUFFER_POS_REACHED_P macro.
4617
992126de
JD
46182004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4619
4620 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
4621 to compile on non-window system.
4622
45dbfc84
KS
46232004-03-19 Kim F. Storm <storm@cua.dk>
4624
4625 * dispextern.h (calc_pixel_width_or_height): Add prototype.
4626
4627 * image.c (Qcenter): Move to xdisp.c.
4628
4629 * xdisp.c (Qcenter): Declare here.
adb3b353 4630 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
4631 (handle_single_display_prop): Allow space display property on all
4632 platforms.
4633 (display_mode_line): Set mode_line_p before displaying line.
4634 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
4635 handling. Remove complex cases for fringes and scroll-bars.
4636 Add left, right, and center alignment positions. Add text (area)
4637 width/height. Return width or height for image specs.
4638 (produce_stretch_glyph): Improve handling of :align-to. Is now
4639 relative to left of text area by default, but other base offsets
4640 can be specified -- also for text lines.
4641
4642 * term.c (produce_glyphs): Handle IT_STRETCH.
4643 (produce_stretch_glyph): New function to handle space width and
4644 align-to display properties on non-window systems.
4645
37264101
SM
46462004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
4647
4648 * fileio.c (Fread_file_name): Set completion-ignore-case for
4649 case-insensitive systems.
4650
73bc43da
MY
46512004-03-14 Masatake YAMATO <jet@gyve.org>
4652
4653 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
4654 when keymap and cursor are setup.
4655
9062aa89
ST
46562004-03-14 Steven Tamm <steventamm@mac.com>
4657
b17856dd 4658 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 4659
e4b1b5ab
KS
46602004-03-14 Kim F. Storm <storm@cua.dk>
4661
4662 * dispextern.h (x_find_image_file): Add prototype.
4663
4664 * image.c (x_find_image_file): Make extern.
4665
4666 * xfns.c (x_find_image_file): Remove prototype.
4667
a6eeaa81 46682004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 4669
37264101 4670 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 4671
37264101 4672 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 4673
e69cfac2
RS
46742004-03-12 Richard M. Stallman <rms@gnu.org>
4675
4676 * fns.c (internal_equal): New arg PROPS controls comparing
4677 text properties. All callers changed.
4678 (Fequal_including_properties): New function.
4679 (syms_of_fns): defsubr it.
4680
45034953
KS
46812004-03-12 Kim F. Storm <storm@cua.dk>
4682
4683 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 4684
45034953
KS
4685 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
4686 (image_background, image_background_transparent): Fix prototypes.
4687
37264101 4688 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
4689
4690 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
4691 (x_query_font, x_find_ccl_program, x_set_window_size)
4692 (x_make_frame_visible, mac_initialize, XCreatePixmap)
4693 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
4694 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
4695
4696 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
4697 (x_query_font, x_find_ccl_program, x_set_window_size)
4698 (x_make_frame_visible, mac_initialize, XCreatePixmap)
4699 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
4700 (mac_draw_line_to_pixmap): Add prototypes.
4701
47022004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4703
4704 * macterm.c (XTread_socket): Fix mouse click on tool bar.
4705
a12d3d87
KS
47062004-03-11 Kim F. Storm <storm@cua.dk>
4707
d3ab1cf1
KS
4708 * dispextern.h: Move image related prototypes from xfns.c section
4709 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
4710 HAVE_X_WINDOWS.
37264101 4711
37de9f51 4712 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 4713 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
4714 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
4715 (GTK_OBJ) [USE_GTK]: New declaration.
4716 (obj): Add $(GTK_OBJ) to list.
4717
5243c06a 47182004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 4719
5243c06a
ST
4720 * image.c [MAC_OSX]: Include sys/stat.h
4721
4722 * macfns.c (syms_of_macfns): Remove definitions of things now
4723 defined in image.c
4724
c0f97789
KS
47252004-03-11 Kim F. Storm <storm@cua.dk>
4726
4727 The following changes consolidates the identical/similar image
4728 support code previously found in xfns.c, w32fns.c, and macfns.c
4729 into a new file image.c.
4730
4731 * makefile.w32-in (OBJ1): Add image.o.
4732 ($(BLD)/image.$(O)): Add dependencies.
4733
4734 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
4735 (image.o): Add dependencies.
37264101 4736
c0f97789
KS
4737 * image.c: New file with consolidated image support code.
4738 (COLOR_TABLE_SUPPORT): New define to control whether
4739 color table support is available (X only).
4740 (Bitmap_Record): Common name for x_bitmap_record,
4741 w32_bitmap_record, and mac_bitmap_record.
4742 (XImagePtr): Common name for pointer to XImage or equivalent.
4743 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
4744 to XImagePtr on X+MAC, and to HDC on W32.
4745 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
4746 (NO_PIXMAP): Common name for "None" or equivalent.
4747 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
4748 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
4749 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
4750 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
4751 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
4752 (XDrawLine): Define on MAC for code sharing.
4753 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
4754 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
4755 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
4756 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4757 (x_reference_bitmap, x_create_bitmap_from_data)
4758 (x_create_bitmap_from_file, x_destroy_bitmap)
4759 (x_destroy_all_bitmaps, x_create_bitmap_mask)
4760 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
4761 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
4762 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
4763 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
4764 (define_image_type, lookup_image_type, valid_image_p)
4765 (image_error, enum image_value_type, struct image_keyword)
4766 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
4767 (make_image, free_image, prepare_image_for_display, image_ascent)
4768 (four_corners_best, image_background, image_background_transparent)
4769 (x_clear_image_1, x_clear_image, x_alloc_image_color)
4770 (make_image_cache, free_image_cache, clear_image_cache)
4771 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
4772 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
4773 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
4774 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
4775 (init_image_func_pointer, image_load_quartz2d)
4776 (struct ct_color, init_color_table, free_color_table)
4777 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
4778 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
4779 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
4780 (x_disable_image, x_build_heuristic_mask)
4781 (XBM support, XPM support, PBM support, PNG support, JPEG support)
4782 (TIFF support, GIF support, Ghostscript support): Consolidate image
4783 code from xfns.c, w32fns.c, and macfns.c.
4784 (syms_of_image): Consolidate image related symbol setup here.
4785 (init_image): Consolidate image related initializations here.
37264101 4786
c0f97789
KS
4787 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
4788 and init_image. Remove call to init_xfns.
4789
37264101
SM
4790 * macterm.h (struct mac_bitmap_record): Add file member.
4791 Not currently used, but simplifies code sharing.
c0f97789
KS
4792
4793 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
4794 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4795 (x_reference_bitmap, x_create_bitmap_from_data)
4796 (x_create_bitmap_from_file, x_destroy_bitmap)
4797 (x_destroy_all_bitmaps, x_create_bitmap_mask)
4798 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
4799 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
4800 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
4801 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
4802 (define_image_type, lookup_image_type, valid_image_p)
4803 (image_error, enum image_value_type, struct image_keyword)
4804 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
4805 (make_image, free_image, prepare_image_for_display, image_ascent)
4806 (four_corners_best, image_background, image_background_transparent)
4807 (x_clear_image_1, x_clear_image, x_alloc_image_color)
4808 (make_image_cache, free_image_cache, clear_image_cache)
4809 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
4810 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
4811 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
4812 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
4813 (init_image_func_pointer, image_load_quartz2d)
4814 (struct ct_color, init_color_table, free_color_table)
4815 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
4816 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
4817 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
4818 (x_disable_image, x_build_heuristic_mask)
4819 (XBM support, XPM support, PBM support, PNG support, JPEG support)
4820 (TIFF support, GIF support, Ghostscript support): Merge with image
4821 code from xfns.c and macfns.c into image.c.
4822 (syms_of_xfns): Move image related symbols to image.c.
4823 (init_external_image_libraries, init_xfns): Remove; initialization
4824 moved to init_image in image.c.
4825
4826 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
4827 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4828 (x_reference_bitmap, x_create_bitmap_from_data)
4829 (x_create_bitmap_from_file, x_destroy_bitmap)
4830 (x_destroy_all_bitmaps, x_create_bitmap_mask)
4831 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
4832 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
4833 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
4834 (define_image_type, lookup_image_type, valid_image_p)
4835 (image_error, enum image_value_type, struct image_keyword)
4836 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
4837 (make_image, free_image, prepare_image_for_display, image_ascent)
4838 (four_corners_best, image_background, image_background_transparent)
4839 (x_clear_image_1, x_clear_image, x_alloc_image_color)
4840 (make_image_cache, free_image_cache, clear_image_cache)
4841 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
4842 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
4843 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
4844 (struct ct_color, init_color_table, free_color_table)
4845 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
4846 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
4847 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
4848 (x_disable_image, x_build_heuristic_mask)
4849 (XBM support, XPM support, PBM support, PNG support, JPEG support)
4850 (TIFF support, GIF support, Ghostscript support): Merge with image
4851 code from xfns.c and macfns.c into image.c.
4852 (syms_of_xfns): Move image related symbols to image.c.
4853 (init_external_image_libraries, init_xfns): Remove; initialization
4854 moved to init_image in image.c.
4855
4856 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
4857 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4858 (x_reference_bitmap, x_create_bitmap_from_data)
4859 (x_create_bitmap_from_file, x_destroy_bitmap)
4860 (x_destroy_all_bitmaps, x_create_bitmap_mask)
4861 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
4862 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
4863 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
4864 (define_image_type, lookup_image_type, valid_image_p)
4865 (image_error, enum image_value_type, struct image_keyword)
4866 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
4867 (make_image, free_image, prepare_image_for_display, image_ascent)
4868 (four_corners_best, image_background, image_background_transparent)
4869 (x_clear_image_1, x_clear_image, x_alloc_image_color)
4870 (make_image_cache, free_image_cache, clear_image_cache)
4871 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
4872 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
4873 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
4874 (struct ct_color, init_color_table, free_color_table)
4875 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
4876 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
4877 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
4878 (x_disable_image, x_build_heuristic_mask)
4879 (XBM support, XPM support, PBM support, PNG support, JPEG support)
4880 (TIFF support, GIF support, Ghostscript support): Merge with
4881 w32fns.c and macfns.c image code into image.c.
4882 (syms_of_xfns): Move image related symbols to image.c.
4883 (init_xfns): Remove; initialization moved to init_image in image.c.
4884
4885 * lisp.h (syms_of_image, init_image): Add protoypes.
4886 (init_xfns): Remove prototype.
4887
4888 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4889 (x_reference_bitmap, x_create_bitmap_from_data)
4890 (x_create_bitmap_from_file, x_destroy_bitmap)
4891 (x_create_bitmap_mask): Move prototypes from dispextern.h.
4892 (gamma_correct) [MAC_OS]: Add prototype.
4893
4894 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
4895 (x_reference_bitmap, x_create_bitmap_from_data)
4896 (x_create_bitmap_from_file, x_destroy_bitmap)
4897 (x_create_bitmap_mask): Move prototypes to dispextern.h.
4898
6eced09c
KH
48992004-03-09 Kenichi Handa <handa@etlken2>
4900
4901 * coding.c (decode_coding_emacs_mule): Handle insufficent source
4902 correctly.
4903
9a7e95f3
RS
49042004-03-04 Richard M. Stallman <rms@gnu.org>
4905
04a6e76b
RS
4906 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
4907
9a7e95f3
RS
4908 * window.c (Fdisplay_buffer): Doc fix.
4909
4910 * buffer.c (Fpop_to_buffer): Doc fix.
4911
6c2488df
KS
49122004-03-03 Kim F. Storm <storm@cua.dk>
4913
4914 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
4915
d8d95bc7
SM
49162004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
4917
4918 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
4919
357589bf
RS
49202004-03-02 Richard M. Stallman <rms@gnu.org>
4921
4922 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
4923
409949b5
KH
49242004-03-02 Kenichi Handa <handa@m17n.org>
4925
4926 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
4927
d24bc50f
KS
49282004-03-02 Kim F. Storm <storm@cua.dk>
4929
4930 * window.h (struct window): New member overlay_arrow_bitmap.
4931
4932 * window.c (make_window): Initialize overlay_arrow_bitmap.
4933
4934 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
4935 implement and integrate multiple overlay arrows with redisplay.
4936 (syms_of_xdisp): DEFVAR_LISP and initialize it.
4937 (last_arrow_position, last_arrow_string): Replace by properties.
4938 (Qlast_arrow_position, Qlast_arrow_string)
4939 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
4940 (syms_of_xdisp): Intern and staticpro them.
4941 (overlay_arrow_string_or_property, update_overlay_arrows)
4942 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
4943 (overlay_arrow_at_row): New functions for multiple overlay arrows.
4944 (redisplay_internal): Use them instead of directly accessing
4945 Voverlay_arrow_position etc. for multiple overlay arrows.
4946 (mark_window_display_accurate): Use update_overlay_arrows.
4947 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
4948 (try_window_id): Use overlay_arrows_changed_p.
4949 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
4950 (display_line): Use overlay_arrow_at_row to check multiple
4951 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 4952 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
4953 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
4954 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
4955
4956 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
4957 (update_window_fringes): Remove unused code.
4958
c1464661
JR
49592004-03-01 Jason Rumney <jasonr@gnu.org>
4960
4961 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
4962
a64387ee
JB
49632004-03-01 Juanma Barranquero <lektu@terra.es>
4964
4965 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
4966
4967 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
4968
334faa08
JD
49692004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4970
4971 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
4972 how many colors can be displayed.
4973
bb62616f
KH
49742004-03-01 Kenichi Handa <handa@m17n.org>
4975
4976 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
4977 correctly.
4978
0fd16104
KS
49792004-02-28 Kim F. Storm <storm@cua.dk>
4980
4981 * dispnew.c (update_window): Update header line also if there are
4982 no other changes in window (move code after set_cursor label).
4983
4984 * lisp.h (mark_window_display_accurate): Remove prototype.
4985
4986 * window.c (window_loop, Fforce_window_update): Force mode line
4987 updates by setting prevent_redisplay_optimizations_p and
4988 update_mode_lines.
4989
b59dd9c8
JD
49902004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4991
d8d95bc7 4992 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
4993
4994 * xterm.c (x_calc_absolute_position): Call x_real_positions
4995 to get WM window sizes and use those to calculate position.
d8d95bc7 4996 (x_set_offset): Remove code commented out.
b59dd9c8 4997
a874691c
MB
49982004-02-28 Miles Bader <miles@gnu.org>
4999
5000 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
5001
3e0c6482
KS
50022004-02-28 Kim F. Storm <storm@cua.dk>
5003
5004 * keyboard.c (kbd_buffer_store_event_hold): New function to store
5005 an event into kbd fifo, but with special handling of quit event;
5006 a quit event is saved for later, and further events are discarded
5007 until the saved quit event has been processed.
5008 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
5009 (gen_help_event): Store help event in kbd fifo.
5010 (NREAD_INPUT_EVENTS): Remove.
5011 (read_avail_input): Adapt to new read_socket_hook interface.
5012 Remove allocation and initialization of local input_event buffer,
5013 as read_socket_hook stores events directly in fifo. Allocate and
5014 initialize local hold_quit event to handle postponed quit event
5015 (and store it if set by kbd_buffer_store_event_hold).
5016
5017 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
5018 (gen_help_event): Fix prototype.
5019
a64387ee 5020 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 5021 numcharsp args. Add hold_quit arg.
f63fd14e 5022 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
5023 directly in fifo using kbd_buffer_store_event_hold.
5024
5025 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
5026 (read_input_waiting): Adapt to new read_socket_hook interface.
5027 Remove allocation and initialization of local input_event buffer,
5028 as read_socket_hook stores events directly in fifo. Allocate and
5029 initialize local hold_quit event to handle postponed quit event
5030 (and store it if set by kbd_buffer_store_event_hold).
5031
a64387ee 5032 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
5033
5034 * termhooks.h (read_socket_hook): Fix prototype.
5035
5036 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
5037 numcharsp args. Add hold_quit arg.
f63fd14e 5038 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
5039 directly in fifo using kbd_buffer_store_event_hold.
5040
5041 * w32inevt.h (w32_console_mouse_position): Fix prototype.
5042
5043 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
5044 Add hold_quit arg. Rework to use just one, local, inev
5045 input_event. Store inev directly in fifo using
3e0c6482
KS
5046 kbd_buffer_store_event_hold. Update count in one place.
5047 Postpone call to gen_help_event until inev is stored; use new
5048 local do_help for this.
5049 Remove local emacs_event in handing of ButtonPress event; just use
5050 inev instead (so no reason to copy it later).
5051
5052 * xsmfns.c (x_session_check_input): Remove numchars arg.
5053
d8d95bc7
SM
5054 * xterm.c (x_focus_changed, x_detect_focus_change):
5055 Remove numchars arg. Always store event into bufp arg.
5056 Return nothing. Callers changed accordingly.
3e0c6482
KS
5057 (glyph_rect): Simplify.
5058 (STORE_KEYSYM_FOR_DEBUG): New macro.
5059 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
5060 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
5061 (current_hold_quit) [USE_GTK]: Add.
5062 (event_handler_gdk): Adapt to new handle_one_xevent.
5063 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
5064 Add hold_quit arg. Rework to use just one, local, inev
5065 input_event. Store inev directly in fifo using
3e0c6482
KS
5066 kbd_buffer_store_event_hold. Update count in one place.
5067 Postpone call to gen_help_event until inev is stored; use new
5068 local do_help for this.
5069 Simplify handling of keysyms (consolidate common code). Fix bug
5070 where count was updated with nchars instead of nbytes.
5071 Remove local emacs_event in handing of ButtonPress event; just use
5072 inev instead (so no reason to copy it later).
5073 Remove `out' label. Rename label `ret' to `done'; add various
5074 `goto done' to clarify code flow in deeply nested blocks.
5075 (x_dispatch_event): Simplify as handle_one_xevent now calls
5076 kbd_buffer_store_event itself.
f63fd14e 5077 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
5078 arg. Call handle_one_xevent with new arglist. Store event from
5079 x_session_check_input in fifo.
5080 [USE_GTK]: Setup current_hold_quit.
5081 Decrement handling_signal before unblocking input.
5082 (x_initialize) [USE_GTK]: Initialize current_count.
5083
5084 * xterm.h (x_session_check_input): Fix prototype.
5085
e3564461 50862004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 5087
d8d95bc7 5088 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 5089
e3564461
ST
5090 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
5091 macgui.h).
a64387ee 5092
e3564461 5093 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 5094
e3564461
ST
5095 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
5096 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
5097 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
5098 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
5099 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
5100 (Bitmap): Remove typedef.
5101 (Pixmap): Change int to GWorldPtr.
5102
d8d95bc7 5103 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 5104
d8d95bc7
SM
5105 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
5106 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
5107 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
5108 long representation.
5109 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
5110 colors used for masks.
5111 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 5112
e3564461
ST
5113 * macfns.c: Include sys/types.h and sys/stat.h.
5114 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
5115 Include QuickTime/QuickTime.h.
5116 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
5117 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
5118 functions defined in macterm.c.
5119 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
5120 (ZPixmap): New #define for compatibility with xfns.c.
5121 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
5122 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
5123 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
5124 New functions.
e3564461 5125 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
5126 (x_destroy_x_image, unwind_create_frame, x_disable_image)
5127 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
5128 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
5129 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
5130 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
5131 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
5132 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
5133 long mixup.
5134 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
5135 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
5136 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
5137 (x_set_cursor_type, Fxw_color_values, valid_image_p)
5138 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
5139 (x_alloc_image_color, clear_image_cache, lookup_image)
5140 (x_find_image_file, xbm_read_bitmap_file_data)
5141 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
5142 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
5143 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
5144 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
5145 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 5146 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
5147 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
5148 #if 0.
5149 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
5150 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
5151 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
5152 New functions (from xfns.c).
e3564461
ST
5153 (Fx_create_frame): Record unwind_create_frame.
5154 (Fxw_display_color_p): Use dpyinfo->color_p.
5155 (Fx_display_grayscale_p, Fx_display_planes): Don't use
5156 dpyinfo->n_cbits.
5157 (Fx_display_color_cells): Use dpyinfo->n_planes;
5158 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
5159 (Qheuristic, cross_disabled_images, emboss_matrix)
5160 (laplace_matrix): New variables (from xfns.c).
5161 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
5162 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
5163 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
5164 (image_background_transparent): New function (from xfns.c).
5165 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
5166 (image_load_quicktime): Add declaration.
5167 [MAC_OSX] (image_load_quartz2d): Likewise.
5168 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
5169 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 5170 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
5171 (xbm_load_image_from_file, x_laplace_read_row)
5172 (x_laplace_write_row, pbm_read_file): Remove functions.
5173 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
5174 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
5175 (colors_in_color_table): Sync with xfns.c (although not used).
5176 (lookup_rgb_color): Don't lookup color table. Just do gamma
5177 correction.
5178 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
5179 (x_disable_image): New function (from xfns.c).
5180 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
5181 (x_build_heuristic_mask): Sync with xfns.c.
5182 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
5183 (HAVE_PBM): Remove #ifdef.
5184 (pbm_load): Sync with xfns.c. Set img->width and img->height
5185 before IMAGE_BACKGROUND.
d8d95bc7 5186 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
5187 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
5188 Don't enclose with #if HAVE_PNG.
5189 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
5190 symbol _CGImageCreateWithPNGDataProvider is defined.
5191 Otherwise use image_load_quicktime.
e3564461 5192 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
5193 [HAVE_PNG] (png_load): Sync with xfns.c.
5194 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
5195 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
5196 HAVE_JPEG.
5197 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
5198 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
5199 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
5200 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
5201 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
5202 (tiff_image_p, tiff_load): Don't enclose declarations with #if
5203 HAVE_TIFF.
5204 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
5205 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
5206 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
5207 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
5208 New functions (from xfns.c).
e3564461 5209 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 5210 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
5211 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
5212 Don't enclose with #if HAVE_GIF.
5213 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
5214 animated gif. Otherwise use image_load_quicktime.
5215 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
5216 gif_DrawText to avoid conflict with QuickdrawText.h.
5217 [HAVE_GIF] (gif_load): Sync with xfns.c.
5218 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
5219 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
5220 Ghostscript is not supported yet).
5221 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
5222 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
5223 cross_disabled_images (from xfns.c). Remove #if 0 for supported
5224 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
5225 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
5226 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
5227 HAVE_PNG. Call EnterMovies to support animated gifs.
5228 Call init_image_func_pointer to bind a symbol
e3564461 5229 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 5230
d8d95bc7 5231 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
5232 (x_draw_bar_cursor): Sync declaration with xterm.c.
5233 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
5234 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
5235 graphics).
5236 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
5237 (mac_draw_line_to_pixmap, XCreatePixmap)
5238 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
5239 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
5240 New functions.
5241 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
5242 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
5243 Cast bits to char *.
e3564461
ST
5244 (reflect_byte): New function (from w32fns.c).
5245 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
5246 due to byte alignment.
d8d95bc7
SM
5247 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
5248 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
5249 (XSetForeground): Remove static (now used in macfns.c).
5250 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
5251 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
5252 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
5253 (x_draw_glyph_string_box, x_draw_image_foreground)
5254 (x_draw_image_foreground_1, x_draw_image_glyph_string)
5255 (x_draw_stretch_glyph_string, x_draw_glyph_string)
5256 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
5257 Sync with xterm.c.
5258 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
5259 than the xterm.c version when a strictly horizontal or vertical
5260 line is drawn.
5261 (XTset_terminal_window): Add static.
5262 (x_make_frame_visible): Add UNBLOCK_INPUT.
5263 (x_free_frame_resources): New funcion (from xterm.c).
5264 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
5265 occurs in tool bar area.
d8d95bc7
SM
5266 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
5267 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
5268 Initialize image cache.
5269 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
5270 Enclose unused functions with #if 0.
5271 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
5272 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 5273 from a mac font name to an XLFD font name according to its script code.
e3564461 5274 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 5275 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
5276 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
5277 whose name starts with `.'.
5278 (init_font_name_table): Use decode_mac_font_name. Add both
5279 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
5280 of a font is smJapanese.
5281 (mac_do_list_fonts): New function to list fonts that match a given
5282 pattern.
5283 (x_list_fonts, XLoadQueryFont): Use it.
5284 (XLoadQueryFont): Set rbearing field for each variable width
5285 character to avoid needless redraw.
5286 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
5287
446f5f3d
KS
52882004-02-26 Kim F. Storm <storm@cua.dk>
5289
af617d0f
KS
5290 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
5291 as read_socket_hook handler on X aborts if buffer is too small
5292 and W32 handler doesn't always check buffer limit.
5293
446f5f3d
KS
5294 * xdisp.c (handle_single_display_prop): Handle left-fringe and
5295 right-fringe similar to a display margin image. Specifically,
5296 the characters having the fringe prop are no longer shown, and
5297 we use IT_IMAGE/next_element_from_image with image_id = -1 to
5298 do this. Set fringe bitmap face_id in it->face_id.
5299 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
5300 still realize it->face (i.e. the fringe bitmap face).
5301
7d8a0b55
MB
53022004-02-25 Miles Bader <miles@gnu.org>
5303
5304 * xdisp.c (check_it): Check string/string_pos consistency.
5305 (init_iterator): Initialize string-related fields properly.
5306
53072004-02-11 Miles Bader <miles@gnu.org>
5308
5309 * xdisp.c (produce_image_glyph): Force negative descents to zero.
5310
53112004-02-10 Miles Bader <miles@gnu.org>
5312
5313 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
5314 BLOCK_INPUT can be nested, so it doesn't make much sense.
5315
a64387ee 53162004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
5317
5318 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
5319 (xbm_read_bitmap_data): Use unsigned char for image data.
5320
92f5fba2
LT
53212004-02-23 Luc Teirlinck <teirllm@auburn.edu>
5322
5323 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
5324
8565fb3d
JR
53252004-02-22 Jason Rumney <jasonr@gnu.org>
5326
5327 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
5328 correctly over other bitmaps.
5329
a6eeaa81 53302004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
5331
5332 * emacs.c (USAGE1): Split into two halves.
5333 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
5334 (USAGE3): Rename from USAGE2.
5335 (USAGE4): Rename from USAGE3.
f8125c39 5336
4effffca
EZ
53372004-02-21 Juri Linkov <juri@jurta.org>
5338
5339 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
5340 Fix --multibyte. Move --help, --version to USAGE2. Add alias
5341 --file. Fix -f, -l. Sort options. Untabify.
5342 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
5343
923c1e6f
LT
53442004-02-19 Luc Teirlinck <teirllm@auburn.edu>
5345
5346 * category.c (Fdefine_category, Fcategory_docstring)
5347 (Fget_unused_category, Fset_category_table)
5348 (Fcategory_set_mnemonics): Doc fixes.
5349
b0e225fd
KS
53502004-02-20 Kim F. Storm <storm@cua.dk>
5351
5352 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
5353 The following changes are relative to the 2004-01-21 revision.
5354 (NREAD_INPUT_EVENTS): Define as max number of input events to read
5355 in one call to read_socket_hook. Value is 8.
5356 (read_avail_input): Separate and rework handling of read_socket_hook
5357 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
5358 in read_socket_hook case, and repeat if full buffer is read.
5359 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
5360 In non-read_socket_hook case, just use a single input_event, and
5361 call kbd_buffer_store_event on the fly for each character.
5362
b15aa9f9
SM
53632004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
5364
5365 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
5366 Remove unused `gu' alternative.
5367
83c9aa95
AS
53682004-02-19 Andreas Schwab <schwab@suse.de>
5369
5370 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
5371 warning.
5372
cc808173
KS
53732004-02-18 Kim F. Storm <storm@cua.dk>
5374
5375 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
5376 Fix last change.
5377
ab90a54d
KS
53782004-02-17 Kim F. Storm <storm@cua.dk>
5379
b26f249f
KS
5380 * xdisp.c (fast_find_position): Fix return value of new version;
5381 it was inverted compared to the 21.1 version.
5382 (get_window_cursor_type): Don't look at glyph if NULL.
5383 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 5384
ab90a54d
KS
5385 * keyboard.c: Rework previous change; it didn't consider that the
5386 buf array was allocated on the stack.
5387 (prev_read): Remove variable.
5388 (read_avail_input_buf): New static event buffer array.
b9568dfc 5389 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 5390 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
5391 Use in_read_avail_input to handle re-entrance; when re-entered,
5392 fully initialize and use tmp_buf array instead of read_avail_input_buf.
5393 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
5394 is always cleared on entry. To ensure that, we clear (just) the
5395 entries that were used before we return.
5396 (init_keyboard): Initialize read_avail_input_buf here.
5397
b6189c3b 53982004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
5399
5400 * cmds.c (Fend_of_line): Doc fix.
5401
7b5368c1
EZ
54022004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
5403
5404 * keyboard.c (prev_read): New static variable.
5405 (read_avail_input): Use it to zero out only those slots in buf[]
5406 that were used last time we were called.
5407
a6eeaa81 54082004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
5409
5410 * Makefile.in (obj): Move fringe.o from here...
5411 (XOBJ, MAC_OBJ): ...to here.
5412
159c348e
SE
54132004-02-16 Stephen Eglen <stephen@gnu.org>
5414
5415 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
5416
d2f14999
SM
54172004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
5418
b15aa9f9
SM
5419 * data.c (Fbyteorder):
5420 * fringe.c (Fdefine_fringe_bitmap):
5421 * xdisp.c (handle_single_display_prop):
d2f14999
SM
5422 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
5423
8d50508a
JR
54242004-02-16 Jason Rumney <jasonr@gnu.org>
5425
5426 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
5427
dd4497dc
ST
54282004-02-15 Steven Tamm <steventamm@mac.com>
5429
5430 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
5431 controlling emulation of a three button mouse with option and
5432 command keys.
5433 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 5434 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 5435
c9159cb3
KS
54362004-02-15 Kim F. Storm <storm@cua.dk>
5437
2cc52658
KS
5438 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
5439
c9159cb3
KS
5440 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
5441 Perform byte-swapping.
5442
12fde2dc
KS
54432004-02-14 Kim F. Storm <storm@cua.dk>
5444
5445 * dispextern.h (struct draw_fringe_bitmap_params): Change member
5446 bits from char to short to facilitate wider bitmaps.
5447 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
5448 member.
5449
5450 * fringe.c (struct fringe_bitmap): Change member bits from char to
5451 short to facilitate 16 bits wide bitmaps. Modify all standard
5452 bitmaps accordingly.
5453 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
5454 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
5455 (draw_fringe_bitmap): Ditto.
5456 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
5457 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
5458 handle up to 16 bits wide bitmaps.
5459 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 5460 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
5461
5462 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
5463 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
5464 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
5465
5466 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
5467 so it is no longer necessary to expand them here.
5468
5469 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
5470
9d7271e8
KS
54712004-02-12 Kim F. Storm <storm@cua.dk>
5472
5473 * window.c (Fwindow_fringes): Doc fix.
5474
706c1e4f
JD
54752004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5476
5477 * xselect.c (x_get_foreign_selection): Add new optional parameter
5478 time_stamp.
5479 (Fx_get_selection_internal): Ditto, pass time_stamp to
5480 x_get_foreign_selection.
5481
5482 * data.c (Fbyteorder): New function.
5483
c2d12b5d
JD
54842004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5485
5486 * atimer.c: Move include stdio.h to same place as in other files.
5487
5488 * region-cache.c: Ditto.
5489
5490 * sysdep.c: Ditto.
5491
5492 * xfaces.c: Ditto.
5493
4c1947b9
SS
54942004-02-09 Sam Steingold <sds@gnu.org>
5495
89458937 5496 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 5497
82722af3
KS
54982004-02-09 Kim F. Storm <storm@cua.dk>
5499
5500 * fringe.c: New file. Move original fringe related declarations
5501 and code from dispextern.h and xdisp.c here.
5502 Rework code to support user defined fringe bitmaps, redefining
5503 standard bitmaps, ability to overlay user defined bitmap with
5504 overlay arrow bitmap, and add faces to bitmaps.
5505 (Voverflow_newline_into_fringe): Declare here.
5506 (enum fringe_bitmap_align): New enum.
5507 (..._bits): All bitmaps are now defined without bitswapping; that
5508 is now done in init_fringe_once (if necessary).
5509 (standard_bitmaps): New array with specifications for the
5510 standard fringe bitmaps.
5511 (fringe_faces): New array.
5512 (valid_fringe_bitmap_id_p): New function.
5513 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
5514 (draw_fringe_bitmap): New function which draws fringe bitmap,
5515 possibly overlaying bitmap with cursor in right fringe or the
5516 overlay arrow in the left fringe.
5517 (update_window_fringes): Do not handle overlay arrow here.
5518 Compare and copy fringe bitmap faces.
5519 (init_fringe_bitmap): New function.
5520 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
5521 define and destroy user defined fringe bitmaps.
5522 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
5523 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
5524 (syms_of_fringe): New function. Defsubr new DEFUNs.
5525 DEFVAR_LISP Voverflow_newline_into_fringe.
5526 (init_fringe_once, init_fringe): New functions.
5527 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 5528
82722af3
KS
5529 * Makefile.in (obj): Add fringe.o.
5530 (fringe.o): New dependencies.
5531
5532 * dispextern.h (FRINGE_ID_BITS): New definition for number of
5533 bits allocated to hold a fringe number. Increase number of bits
5534 from 4 to 8 to allow user defined fringe bitmaps.
5535 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
5536 left_user_fringe_face_id, right_user_fringe_bitmap,
5537 right_user_fringe_face_id.
5538 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
5539 Move to new file fringe.c.
5540 (MAX_FRINGE_BITMAPS): Define here.
5541 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
5542 and overlay_p. Change member which to int.
5543 (struct redisplay_interface): New members define_fringe_bitmap
5544 and destroy_fringe_bitmap.
5545 (valid_fringe_bitmap_id_p): Add prototype.
5546 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
5547
5548 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
5549 arrows.
5550 (update_frame): Do flush_display if force_flush_display_p to
5551 ensure display (specifically fringes) are updated in a timely
5552 manner when resizing the frame by dragging the mouse.
5553 (update_window_line): Update row if overlay arrow changed.
5554 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
5555 or overlay arrow changed.
5556
5557 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
5558 syms_of_fringe, and init_fringe.
5559
5560 * frame.h (struct frame): New member force_flush_display_p.
5561
5562 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
5563 Add prototypes.
5564
a3993cc8 5565 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 5566 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
5567 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
5568 Use cursor color for displaying cursor in fringe.
82722af3
KS
5569 (x_redisplay_interface): Add null handlers for
5570 define_fringe_bitmap and destroy_fringe_bitmap functions.
5571
5572 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
5573 xterm.c to handle overlayed fringe bitmaps and to use cursor color
5574 for displaying cursor in fringe.
5575 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
5576 specific functions to define and destroy fringe bitmaps in fringe_bmp.
5577 (w32_redisplay_interface): Add them to redisplay_interface.
5578 (w32_term_init): Call w32_init_fringe instead of explicitly
5579 defining fringe bitmaps in fringe_bmp array.
5580 (x_delete_display): Call w32_reset_fringes instead of explicitly
5581 destroying fringe bitmaps in fringe_bmp array.
5582
5583 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
5584 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
5585 (continued_bits, continuation_bits, ov_bits, first_line_bits)
5586 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
5587 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
5588 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
5589 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
5590 Move fringe handling vars and code to new file fringe.c.
5591 (handle_display_prop): Handle left-fringe and right-fringe
5592 display properties; store user fringe bitmaps in iterator.
5593 (move_it_in_display_line_to): Handle cursor in fringe at eob.
5594 (clear_garbaged_frames): Set force_flush_display_p if resized.
5595 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
5596 (display_line): Handle cursor in fringe at eob.
5597 (display_line): Set row user fringe bitmaps from iterator.
5598
5599 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
5600 Use cursor color for displaying cursor in fringe.
5601 (x_redisplay_interface): Add null handlers for
5602 define_fringe_bitmap and destroy_fringe_bitmap functions.
5603
030400eb
JD
56042004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5605
5606 * macfns.c (Fx_change_window_property): Make doc string and
5607 parameters same as for X version.
5608
5609 * w32fns.c (Fx_change_window_property): Ditto.
5610
3af55251
KS
56112004-02-07 Kim F. Storm <storm@cua.dk>
5612
ec110e9e
KS
5613 * xdisp.c (hscroll_window_tree): Position cursor near to right
5614 margin in hscrolled window when jumping to end of line (rather
5615 than centering cursor).
5616
3af55251
KS
5617 * process.c (wait_reading_process_input): Don't do adaptive read
5618 buffering if waiting for a specific process.
5619
b0c138ce
LT
56202004-02-05 Luc Teirlinck <teirllm@auburn.edu>
5621
5622 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
5623 (Fread_minibuffer, Feval_minibuffer)
5624 (Fread_string, Fread_no_blanks_input)
5625 (Fcompleting_read): Doc fixes.
5626 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
5627 completion-regexp-list. Define Qcase_fold_search and staticpro it.
5628 (read_minibuf): Fix initial comment.
5629 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 5630 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
5631 checking completion-regexp-list.
5632 (Fdisplay_completion_list): Make it handle arguments that are
5633 symbols. Doc fix.
5634
9676f5ad 56352004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 5636
9676f5ad 5637 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 5638
9676f5ad
JD
5639 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
5640 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 5641 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 5642 format. Remove unused variable cons.
5b698285
JD
5643
5644 * xselect.c: Include stdio,h.
5645
fc1d15f6
KH
56462004-02-05 Kenichi Handa <handa@m17n.org>
5647
ebaff4af
KH
5648 * fns.c (Fset_char_table_range): Fix previous change.
5649
fc1d15f6
KH
5650 * buffer.c (Fset_buffer_multibyte): Fix docstring.
5651
9676f5ad
JD
56522004-02-04 Luc Teirlinck <teirllm@auburn.edu>
5653
5654 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
5655
da75761f
SM
56562004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
5657
5658 * keymap.c (Vmouse_events): Rename from Vmenu_events.
5659 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
5660
13c5d120
KH
56612004-02-04 Kenichi Handa <handa@m17n.org>
5662
5663 * fns.c (Fset_char_table_range): Handle charsets ascii,
5664 eight-bit-control, and eight-bit-graphic correctly.
5665
2883d842
JR
56662004-02-03 Jason Rumney <jasonr@gnu.org>
5667
5668 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
5669
5670 * w32fns.c (x_to_w32_font): Likewise.
5671
69eff41f
JD
56722004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5673
5674 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
5675 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
5676
5677 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
5678 ClientMessages.
5679
5680 * xselect.c: Include termhooks.h and X11/Xproto.h
5681 (x_check_property_data, x_fill_property_data)
5682 (x_property_data_to_lisp, mouse_position_for_drop)
5683 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 5684 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
5685 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
5686
da75761f 5687 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
5688 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
5689 OUTER_P.
5690 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
5691 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
5692 if vector_ret_p is true.
5693 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 5694
a6eeaa81 56952004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
5696
5697 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
5698 basename of FILE relative to it, not FILE itself.
5699
09721b31
KH
57002004-02-02 Kenichi Handa <handa@m17n.org>
5701
5702 * coding.c (coding_restore_composition): Check invalid
5703 composition data more rigidly.
5704
eb996101
LT
57052004-01-30 Luc Teirlinck <teirllm@auburn.edu>
5706
5707 * fileio.c (Fread_file_name_internal): Correctly handle the case
5708 where insert-default-directory is nil.
5709 (Fread_file_name): Always return an empty string if the user exits
5710 with an empty minibuffer. Adapt the docstring accordingly.
5711 (syms_of_fileio): Adapt the docstring of insert-default-directory
5712 to the change in Fread_file_name.
5713
a6eeaa81 57142004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
5715
5716 * alloca.c [!alloca]: Fix the prototype for xfree.
5717
13f52ed8
KH
57182004-01-29 Kenichi Handa <handa@m17n.org>
5719
5720 * fns.c (string_char_to_byte): Optimize for ASCII only string.
5721 (string_byte_to_char): Likewise.
5722
d57625a0
JR
57232004-01-28 Peter Runestig <peter@runestig.com>
5724
5725 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
5726
a64387ee 57272004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
5728
5729 * unexmacosx.c (unexec_copy): Do not copy more than was
5730 requested to prevent overwriting during unexec.
5731
eb37b8fd
JD
57322004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5733
ce38070a
JD
5734 * process.c (sigchld_handler): Add comment about not calling malloc.
5735
eb37b8fd
JD
5736 * process.h: Add extern to synch_process_termsig.
5737
a64387ee 57382004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 5739
da75761f
SM
5740 * macterm.c (make_mac_frame, make_mac_terminal_frame):
5741 Move setting of scroll bars from make_mac_frame to
5742 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 5743
d62a265d
RS
57442004-01-26 Richard M. Stallman <rms@gnu.org>
5745
5746 * search.c (Freplace_match): Handle nonexistent
5747 back-references properly.
5748
57492004-01-03 Richard M. Stallman <rms@gnu.org>
5750
5751 * window.c (decode_any_window): New function.
5752 (Fwindow_height, Fwindow_width, Fwindow_edges)
5753 (Fwindow_pixel_edges, Fwindow_inside_edges)
5754 (Fwindow_inside_pixel_edges): Use decode_any_window.
5755
ff236419
JD
57562004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5757
5758 * process.h: synch_process_termsig new variable.
5759
5760 * callproc.c: Define synch_process_termsig.
5761 (Fcall_process): Initiate synch_process_termsig to zero and
5762 check if non-zero and get signal name after subprocess has ended.
5763
5764 * process.c (sigchld_handler): Set synch_process_termsig
5765 if terminated by a signal. synch_process_death setting removed.
5766
5767 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
5768
41b867ea
AS
57692004-01-26 Andreas Schwab <schwab@suse.de>
5770
5771 * print.c (print_preprocess): Declare size as EMACS_INT to not
5772 lose bits.
5773 (print_object): Likewise.
5774 * alloc.c (Fpurecopy): Likewise.
5775
a08084ff
LT
57762004-01-25 Luc Teirlinck <teirllm@auburn.edu>
5777
5778 * window.c (Fwindow_minibuffer_p): Doc fix.
5779
b19ac475
JY
57802004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
5781
5782 * editfns.c (Fformat): Make both passes accept the same set of flags.
5783
fe905025
KH
57842004-01-23 Kenichi Handa <handa@m17n.org>
5785
5786 * fns.c (Fmd5): If OBJECT is a buffer different from the current
5787 one, set buffer to OBJECT temporarily.
5788
438fc6c0
SM
57892004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
5790
455316e2
SM
5791 * keyboard.c (kbd_buffer_gcpro): Remove.
5792 (kbd_buffer_store_event, clear_event, Fdiscard_input)
5793 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
5794 Don't initialize and/or maintain the variable any more. It was made
5795 redundant by my commit of 2003-06-15.
5796
438fc6c0
SM
5797 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
5798
5335a4ee
JD
57992004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5800
5801 * lisp.h: Add undef DECL_ALIGN.
5802
dcdaeebc
SM
58032004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
5804
5805 * process.c (wait_reading_process_input) [SYNC_INPUT]:
5806 Check interrupt_input_pending explicitly.
5807
5808 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
5809
5810 * keyboard.c (handle_async_input): New fun,
5811 extracted from input_available_signal.
5812 (input_available_signal, reinvoke_input_signal): Use it.
5813
9076a823
SM
58142004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
5815
d7107586
SM
5816 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
5817
5818 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
5819 manipulation macros for when tags are in the lower bits.
5820 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
5821 (DECL_ALIGN): New macro.
5822 (DEFUN): Use it.
5823
5824 * lisp.h [ENABLE_CHECKING]: Don't force union type.
5825
5826 * s/darwin.h (__attribute__): Remove outdated workaround.
5827
5828 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
5829
5830 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
5831 Don't check range of malloc address.
5832 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
5833
9076a823
SM
5834 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
5835
5836 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
5837
ba029065
KH
58382004-01-19 Kenichi Handa <handa@m17n.org>
5839
5840 * fontset.c (fontset_font_pattern): Fix previous change.
5841
7af0e8d7
MB
58422004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
5843
5844 * xdisp.c (Voverflow_newline_into_fringe)
5845 (move_it_in_display_line_to, redisplay_internal)
5846 (update_window_fringes, redisplay_window, display_line, window):
5847 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
5848 that it compiles without a window-system.
5849 * dispnew.c (direct_output_for_insert, update_window): Likewise.
5850
77a9cf69
KS
58512004-01-16 Kim F. Storm <storm@cua.dk>
5852
5853 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
5854
a64387ee 5855 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
5856 buffer_local_flags for indicate_buffer_boundaries.
5857 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
5858 default- variable for it.
5859
5860 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
5861 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 5862 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
5863 overflowing newlines into right fringe.
5864 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
5865 and indicate_bottom_line_p for buffer boundaries and scrolling.
5866 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
5867 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
5868 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
5869 and HOLLOW_SQUARE_BITMAP.
5870 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
5871 Add prototypes.
5872
5873 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
5874 instead of related indicator fields.
5875 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
5876 (direct_output_for_insert): Handle exact width lines like
5877 contined lines. Call update_window_fringes.
5878 (update_window): Call update_window_fringes.
5879 (scrolling_window): Don't skip desired rows with changed bitmaps.
5880 Check if fringe bitmaps changes when assigning scrolled rows.
5881
5882 * xdisp.c (Voverflow_newline_into_fringe): New variable.
5883 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
5884 (move_it_in_display_line_to): Overflow newline into fringe for
5885 rows that are exactly as wide as the window.
5886 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
5887 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
5888 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
5889 (fringe_bitmaps): Add new bitmaps.
5890 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
5891 Select proper bitmap for cursor in fringe when appropriate.
5892 Handle alignment of bitmap to top or bottom of row.
5893 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
5894 done by update_window_fringes.
5895 (update_window_fringes, draw_window_fringes): New functions.
5896 (redisplay_internal): Call update_window_fringes in case only
5897 cursor row is updated.
5898 (redisplay_window): Call update_window_fringes.
5899 Explicitly call draw_window_fringes if redisplay was done using
5900 the current matrix or the overlay arrow is in the window.
5901 (try_window_reusing_current_matrix): Mark scrolled rows for
5902 fringe update (to update buffer-boundaries / scrolling icons).
5903 (find_last_unchanged_at_beg_row): Handle exact width lines line
5904 continued lines.
5905 (display_line): Overflow newline into fringe for rows that are
5906 exactly as wide as the window. Don't append space for newline
d7107586 5907 in this case.
77a9cf69
KS
5908 (notice_overwritten_cursor): Explicitly clear cursor bitmap
5909 in fringe as if it had been overwritten.
5910 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 5911 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
5912 void-text-area-pointer as user options.
5913 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 5914
77a9cf69
KS
5915 * xterm.c (x_update_window_end): Call draw_window_fringes.
5916 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
5917 in row instead of actually drawing fringe bitmaps.
5918 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
5919 (x_draw_window_cursor): Draw cursor in fringe.
5920
5921 * w32term.c (x_update_window_end): Call draw_window_fringes.
5922 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
5923 in row instead of actually drawing fringe bitmaps.
5924 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
5925 (w32_draw_window_cursor): Draw cursor in fringe.
5926
5927 * macterm.c (x_update_window_end): Call draw_window_fringes.
5928 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
5929 in row instead of actually drawing fringe bitmaps.
5930 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
5931 (mac_draw_window_cursor): Draw cursor in fringe.
5932
a633a954
JD
59332004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5934
5935 * xterm.c (handle_one_xevent): Don't handle characters that are part
5936 of an old style (XLookupString) compose sequence.
5937
80460525
KH
59382004-01-15 Kenichi Handa <handa@m17n.org>
5939
5940 * search.c (Freplace_match): Use make_multibyte_string or
5941 make_unibyte_string according to the buffer multibyteness.
5942
7fc34f85
SM
59432004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
5944
5945 * alloc.c (struct interval_block, struct string_block)
5946 (struct symbol_block, struct marker_block, live_string_p)
5947 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
5948 Better preserve alignment for objects in blocks.
5949 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
5950
5951 * lread.c (defvar_per_buffer): Remove dead declaration.
5952
5953 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
5954 space size.
5955
66070bd1
JD
59562004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5957
5958 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
5959 if a key press should pop down. Only pop down if a key is pressed
5960 outside the menu/dialog.
5961 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
5962 popup_get_selection.
5963 (create_and_show_dialog): Pass 1 for down_on_keypress to
5964 popup_get_selection.
5965
de7515d6
JD
59662004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5967
5968 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
5969 BLOCK/UNBLOCK_INPUT.
5970
160b1b50
JD
59712004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5972
5973 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
5974 specified.
5975
3a9f36e6
KH
59762004-01-08 Kenichi Handa <handa@m17n.org>
5977
5978 * editfns.c (Fformat): Fix '&' to '&&'.
5979
3803eb32
AS
59802004-01-08 Andreas Schwab <schwab@suse.de>
5981
5982 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
5983 size if PSEUDOVECTOR_FLAG is set.
5984
9da88f37
KH
59852004-01-07 Kenichi Handa <handa@m17n.org>
5986
74ac5074
KH
5987 * charset.c (Fdeclare_equiv_charset): Fix docstring.
5988
9da88f37
KH
5989 * fontset.c (fontset_ref_via_base): Fix previous change.
5990
05faee07
KS
59912004-01-07 Kim F. Storm <storm@cua.dk>
5992
5993 * process.c (read_process_output): Only activate adaptive
5994 buffering if we read less than 256 bytes at a time.
5995
634910c8
KS
59962004-01-06 Kim F. Storm <storm@cua.dk>
5997
5998 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
5999 object and image object. Return glyph width and height.
6000 (mode_line_string, marginal_area_string): Ditto.
6001
6002 * dispextern.h (buffer_posn_from_coords, mode_line_string)
6003 (marginal_area_string): Fix prototypes.
6004
6005 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 6006 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
6007 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
6008
6009 * keyboard.c (make_lispy_position): Use modified mode_line_string,
6010 buffer_posn_from_coords, and marginal_area_string functions to
6011 include both string object and image object in the lispy position.
6012 Also add actual glyph width and height to position.
6013 (read_key_sequence): Use real buffer position from mouse
6014 event to find keymap property even when click is in marginal area.
6015
6016 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
6017 mode_line_string and marginal_area_string functions to handle
6018 both string object and image object properties.
d7107586 6019
57951c2e
AS
60202004-01-06 Andreas Schwab <schwab@suse.de>
6021
6022 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
6023 character.
6024
181e6a61
AS
60252004-01-02 Andreas Schwab <schwab@suse.de>
6026
d7107586
SM
6027 * macterm.c (emacs_options, x_initialized, same_x_server):
6028 Remove unused (and duplicated) definitions.
181e6a61 6029
31e0fbdd
KS
60302004-01-02 Kim F. Storm <storm@cua.dk>
6031
6032 * process.h (struct Lisp_Process): New members for adaptive read
6033 buffering: adaptive_read_buffering, read_output_delay, and
6034 read_output_skip.
6035
6036 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
6037 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
6038 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
6039 (process_output_delay_count, process_output_skip): New vars.
6040 (Vprocess_adaptive_read_buffering): New variable.
6041 (make_process): Initialize adaptive read buffering members.
6042 (Fstart_process): Set adaptive_read_buffering member.
6043 (deactivate_process): Cleanup adaptive read buffering.
6044 (wait_reading_process_input): Temporarily omit delayed
6045 subprocesses from the set of file descriptors to read from;
6046 adjust the select timeout if we skipped any subprocesses.
6047 (read_process_output): Increase adaptive read buffering delay if
6048 we read less than a full buffer; reduce delay when we read a
6049 full buffer.
6050 (send_process): Simplify using local Lisp_Process var.
6051 Reset adaptive read buffering delay after write.
6052 (init_process): Initialize process_output_delay_count and
6053 process_output_skip.
6054 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
6055
68c6a789
JR
60562004-01-01 Jason Rumney <jasonr@gnu.org>
6057
d7107586 6058 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 6059
3f70fe82
LT
60602003-12-30 Luc Teirlinck <teirllm@auburn.edu>
6061
6062 * print.c (Ferror_message_string): Add hyperlink in the docstring
6063 to the definition of `signal' in the Elisp manual.
6064 * eval.c (Fsignal): Ditto.
6065
b6189c3b 60662003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
6067
6068 * fns.c (internal_equal): Return t for two NaN arguments.
6069
7abd90ea
RS
60702003-12-29 Richard M. Stallman <rms@gnu.org>
6071
6072 * data.c (store_symval_forwarding): Handle setting
6073 default-fill-column, etc., by changing the value in
6074 buffers that use the default.
6075
6076 * minibuf.c (Fset_minibuffer_window): Doc fix.
6077
6078 * fileio.c (choose_write_coding_system): Ignore auto_saving
6079 if using the visited file for auto saves.
6080 (Fwrite_region): Don't update SAVE_MODIFF
6081 if auto-saving in visited file.
6082
3e7cfcdc
KH
60832003-12-29 Kenichi Handa <handa@m17n.org>
6084
6085 * dispextern.h (face_font_available_p): Extern it.
6086
6087 * fontset.c (Voverriding_fontspec_alist): New variable.
6088 (lookup_overriding_fontspec): New function.
d7107586 6089 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
6090 (fontset_font_pattern): Likewise.
6091 (regulalize_fontname): New function.
6092 (Fset_fontset_font): Call regulalize_fontname.
6093 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
6094 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
6095 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
6096
6097 * xfaces.c (face_font_available_p): New function.
6098
7abd90ea
RS
60992003-12-28 Richard M. Stallman <rms@gnu.org>
6100
6101 * buffer.c (Fother_buffer): Don't crash if BUF is nil
6102 or if its name is nil.
6103
6104 * buffer.c (Fkill_buffer): Don't delete auto-save file
6105 if it's the same as the visited file.
6106
de1d1a40
LT
61072003-12-28 Luc Teirlinck <teirllm@auburn.edu>
6108
6109 * coding.c (Fcheck_coding_system): Doc fix.
6110
204fb75e
KS
61112003-12-28 Kim F. Storm <storm@cua.dk>
6112
6113 * Makefile.in (eval.o): Depend on dispextern.h.
6114
6115 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
6116 image glyph using image's ascent.
6117 (mode_line_string): Return image glyph as object clicked on.
6118 Adjust y0 for image glyph using image's ascent.
6119
6120 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
6121 (struct glyph): New members, ascent and descent. Used to save
6122 this glyph's ascent and descent, instead of having.
6123 (struct glyph): Declare member face_id using FACE_ID_BITS.
6124 (find_hot_spot): Add prototype.
6125
6126 * keyboard.c (Qimage): Remove extern (now in lisp.h).
6127 (QCmap): Declare extern.
6128 (make_lispy_position): When position is inside image hot-spot,
6129 use hot-spot element's id as posn element.
6130
6131 * lisp.h (IMAGEP): New macro to test for image object type.
6132 (Qimage): Declare extern.
6133
6134 * macfns.c (Qimage): Remove extern (now in lisp.h).
6135 (valid_image_p, parse_image_spec): Use IMAGEP macro.
6136
6137 * macterm.c (Qface, Qmouse_face): Remove unused externs.
6138
6139 * w32fns.c (Qimage): Remove extern (now in lisp.h).
6140 (valid_image_p, parse_image_spec): Use IMAGEP macro.
6141
6142 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
6143
6144 * w32term.c (Qface, Qmouse_face): Remove unused externs.
6145
6146 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
6147 pointer types.
6148 (Qrelative_width, Qalign_to): Remove unused variables.
6149 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
6150 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
6151 image maps.
d7107586 6152 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
6153 new dx and dy args.
6154 Remove buffer_only_p arg (always 0). Simplify code accordingly.
6155 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
6156 than row's ascent and height, to get sensible height on tall rows.
6157 (build_desired_tool_bar_string): Remove Qimage extern.
6158 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
6159 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
6160 image glyph is alone on the last line.
6161 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 6162 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 6163 (on_hot_spot_p): New function to check if position is inside an
d7107586 6164 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
6165 (find_hot_spot): New function to search for image hot-spot.
6166 (Flookup_image_map): New defun to search for image hot-spot.
6167 (define_frame_cursor1): New aux function to determine frame pointer.
6168 (note_mode_line_or_margin_highlight, note_mouse_highlight):
6169 Handle `pointer' text property and :pointer image property to
6170 control frame pointer shape. Detect image hot-spots for pointer
6171 and help_echo properties. Use define_frame_cursor1.
6172 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 6173 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
6174 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
6175
6176 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
6177
6178 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
6179 (Qimage): Remove extern (now in lisp.h).
6180 (valid_image_p, parse_image_spec): Use IMAGEP macro.
6181
6182 * xmenu.c (show_help_event): Remove unused code.
6183
6184 * xterm.c (Qface, Qmouse_face): Remove unused externs.
6185 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
6186 row's ascent and descent, to get a sensible height on tall rows.
6187
fc052137
LT
61882003-12-25 Luc Teirlinck <teirllm@auburn.edu>
6189
6190 * minibuf.c (Fcompleting_read): Undo previous change.
6191
a64387ee 61922003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
6193
6194 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
6195 Arguments GCPRO'ed in call to file name handler.
6196
56ffd194
TTN
61972003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
6198
6199 * termcap.c (tgetst1): Scan for "%pN"; if all
6200 N are continuous in [1,9], remove all "%pN".
6201
5202d23d
JD
62022003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6203
f26fab36
JD
6204 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
6205
5202d23d
JD
6206 * xfaces.c (lface_fully_specified_p): Take into account that
6207 MAC OS always have unspecified stipple.
6208
8babaa59
TTN
62092003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
6210
6211 * tparam.c (tparam1): Add handling for `%pN', which
6212 means use param N for the next substitution.
6213
2d176448
TTN
62142003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
6215
6216 * xfaces.c (Fcolor_gray_p): Fix omission bug:
6217 In case `frame' is nil, consult the selected frame.
6218 (Fcolor_supported_p): Likewise.
6219
adb0708c
LT
62202003-12-23 Luc Teirlinck <teirllm@auburn.edu>
6221
000eeb15
LT
6222 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
6223 Doc fixes.
0dc72b11
LT
6224
6225 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
6226 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
6227 (Fread_from_minibuffer): Delete code moved into read_minibuf.
6228 Doc fix.
6229 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
6230 read_minibuf.
6231 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 6232 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 6233
2e4d132b
KH
62342003-12-03 Kenichi Handa <handa@m17n.org>
6235
6236 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
6237 encoding sequence.
6238
3999c705
KH
62392003-12-01 Kenichi Handa <handa@m17n.org>
6240
6241 * composite.c (syms_of_composite): Don't make the compostion hash
6242 table week.
6243
d344ecbb
LT
62442003-11-30 Luc Teirlinck <teirllm@auburn.edu>
6245
6246 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
6247 * textprop.c (Fget_char_property_and_overlay): New function.
6248 (syms_of_textprop): Defsubr it.
6249
03d6484e
JD
62502003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6251
019b1f0e
JD
6252 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
6253 to compile on terminal configuration.
6254
03d6484e
JD
6255 * fileio.c (Fread_file_name): Check use_file_dialog also before
6256 calling Fx_file_dialog.
6257
6258 * fns.c: use_file_dialog: New variable.
6259 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
6260
442d3fd0
KS
62612003-11-29 Kim F. Storm <storm@cua.dk>
6262
6263 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
6264 (syms_of_msdos): Don't intern and staticpro them.
6265
0f6a07a8
KS
62662003-11-27 Kim F. Storm <storm@cua.dk>
6267
6268 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
6269 coordinates relative to glyph at posn. If glyph is an image,
6270 return that as object at posn. Callers changed.
6271 (mode_line_string, marginal_area_string): Calculate and return
6272 pixel coordinates relative to glyph. Callers changed.
6273
6274 * dispextern.h (buffer_posn_from_coords, mode_line_string)
6275 (marginal_area_string): Fix prototypes.
6276 (window_box_left_offset, window_box_right_offset): Add prototypes.
6277
6278 * frame.h (get_specified_cursor_type, get_window_cursor_type):
6279 Remove prototypes.
6280
6281 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
6282
6283 * keyboard.c (make_lispy_position): Add x and y coordinates
6284 relative to the current glyph as 7th element of position.
6285 If glyph is an image, return it in the object element.
6286 (read_key_sequence): Skip checks for keymap property in cases
6287 where POSN_STRING is not a string (e.g. an image).
6288
6289 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
6290 (Vshow_text_cursor_in_void): New variable.
6291 (glyph_to_pixel_coords): Don't use negative hpos.
6292 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
6293 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 6294 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
6295 (calc_pixel_width_or_height): New aux function, implementing
6296 pixel based artihmetic for glyph widths and heights.
6297 (produce_stretch_glyph): Use calc_pixel_width_or_height for
6298 :width, :height, :align-to, and :ascent, thus allowing these to
6299 be specified in pixels as well as multiples of characters.
6300 Don't produce stretch glyphs with zero width or height.
6301 (get_specified_cursor_type): Declare static.
6302 (get_window_cursor_type): Declare static. Add glyph arg to be
6303 able to know when cursor is on an image; always substitute
6304 hollow-box cursor for filled-box cursor on images, to avoid
6305 negative images and flicker when blinking the cursor.
6306 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
6307 (note_mode_line_or_margin_highlight): Use non-text cursor rather
6308 than vertical scroll-bar cursor in display margins.
6309 (note_mouse_highlight): Use non-text cursor rather than text
6310 cursor in fringes and over images in the text area.
6311 Use non-text cursor when mouse pointer is outside editable text,
6312 i.e. in the void after end-of-line or end-of-buffer; this was
6313 already done for W32, but is now standard for all systems --
6314 user can toggle show-text-cursor-in-void to get old behaviour.
6315 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
6316 Vdisplay_pixels_per_inch.
6317
00498bfc
AS
63182003-11-25 Andreas Schwab <schwab@suse.de>
6319
6320 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
6321 EMACS_INT to not lose bits.
6322 (Ffillarray): Don't set bits beyond the size of a bool vector.
6323
edaa824d
KS
63242003-11-25 Kim F. Storm <storm@cua.dk>
6325
6326 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
6327 define this defun on systems that cannot use stderr as lvalue.
6328
74d6f539
GM
63292003-11-24 Gerd Moellmann <gerd@gnu.org>
6330
6331 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
6332 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
6333 ld's default is incompatible with unexec.
6334
6a1ff3ba
KS
63352003-11-23 Kim F. Storm <storm@cua.dk>
6336
63dc7c6b
KS
6337 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
6338 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
6339 (Fforce_window_update): New defun.
6340 (syms_of_window): Defsubr it.
6341 (Fset_window_margins, Fset_window_fringes): Doc fix.
6342
6a1ff3ba
KS
6343 * print.c (Fredirect_debugging_output): New defun.
6344 (syms_of_print): Defsubr it.
6345
aef109b7
LT
63462003-11-22 Luc Teirlinck <teirllm@auburn.edu>
6347
6348 * fns.c (Fset_char_table_parent): Doc fix.
6349
6a1ff3ba 63502003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
6351
6352 * dispnew.c (buffer_posn_from_coords): Return actual row/column
6353 for glyph clicked on, rather than (unused) pixel positions.
6354 (mode_line_string, marginal_area_string): Change X and Y args to
6355 pointers for returning actual row/column for glyph clicked on.
6356 Simplify and optimize loops.
6357
aef109b7
LT
6358 * dispextern.h (mode_line_string, marginal_area_string):
6359 Update prototypes.
63ccbe21
KS
6360
6361 * keyboard.c (make_lispy_position): New function for generating
6362 mouse click positions from frame and pixel coordinates.
6363 Enhanced to return buffer position and actual row/column for
6364 events outside the text area using updated mode_line_string and
6365 marginal_area_string functions.
6366 Return left-fringe and right-fringe clicks as such, rather than
6367 clicks in text area.
6368 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
6369 pixel_to_glyph_coords, as we never use the results.
6370 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
6371 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
6372 Eliminate unused code in WHEEL_EVENT handling.
6373 (make_lispy_movement): Use make_lispy_position.
6374
6375 * window.c (coordinates_in_window): Remove redundant tests.
6376 Fix returned X pixel value for left-margin.
6377
6378 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
6379 mode_line_string and marginal_area_string parameters.
6380
a64387ee 63812003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 6382
d7107586
SM
6383 * w32.c (struct the_group, getgrgid): Add.
6384 * mac.c (struct my_group, getgrgid): Add.
aef109b7 6385
3dbf3426
LT
63862003-11-21 Luc Teirlinck <teirllm@auburn.edu>
6387
6388 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
6389
cae8ddbb 63902003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 6391
d7107586
SM
6392 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
6393 include in call to file name handler. Optionally translate numeric
6394 UID and GID to strings. Update docstring.
6395 (directory_files_internal): Add parameter ID-FORMAT.
6396 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
6397 include in call to file name handler and call to
6398 directory_files_internal. Update Docstring.
6399 (Fdirectory_files): Add dummy parameter in call to
6400 directory_files_internal.
6401 * lisp.h (Qinteger): Add.
6402 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
6403 (Ffile_attributes): Add parameter.
6404 * data.c (Qinteger): Export.
cae8ddbb 6405
2550b848
LT
64062003-11-21 Luc Teirlinck <teirllm@auburn.edu>
6407
3dbf3426 6408 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 6409
88380018
KS
64102003-11-19 Kim F. Storm <storm@cua.dk>
6411
6412 * xdisp.c (init_iterator): Initialize it->start to position
6413 before reseating (in case start position is invisible).
6414 (init_to_row_start): Set it->start to row-start.
6415 (redisplay_window): Accept optional_new_start if start position
6416 is invisible (in which case IT_CHARPOS overshoots PT).
6417 (display_line): Setup row->start from it->start (rather than
6418 it->current which is wrong if first char on line is invisible).
6419 When done, reseat it->start to it->current (= start of next row).
6420 (expose_area): Fix exposure of text area when first char (e.g. TAB)
6421 is only partially visible.
6422
6423 * dispextern.h (struct it): New member start.
6424
854c1a59
SM
64252003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
6426
455316e2
SM
6427 * alloc.c (make_float, Fcons): Clear the markbit at init time.
6428 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
6429 of block_index outside of the macro call.
6430 (Fgarbage_collect): Remove null code.
6431
6432 * m/amdx86-64.h: Don't redefine XPNTR.
6433
854c1a59
SM
6434 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
6435 of VALMASK.
6436
6437 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
6438 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
6439 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
6440
6441 * lisp.h (VALMASK): Only define for non-union type.
6442 (MARKBIT): Remove.
6443 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
6444 (XTYPE): Define unconditionally.
6445 (XSETTYPE): Remove one more remnant.
6446 (EQ): Define differently for the union and non-union cases.
6447 (INTMASK): New bit mask.
6448 (struct Lisp_Marker): Move down to prepare for upcoming patch.
6449 (GC_EQ): Delegate to EQ.
6450
6451 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
6452
a0c6ef2d
JD
64532003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6454
6455 * xterm.c (x_window_to_scroll_bar): Move check of display to
6456 where window_id is compared.
6457
859492c4
KS
64582003-11-17 Kim F. Storm <storm@cua.dk>
6459
6460 * dispextern.h (struct it): New member first_vpos.
6461
6462 * xdisp.c (start_display): Set it->first_vpos.
6463 (try_window_id): Use first_vpos to start display in first _text_
6464 line if no reusable lines at start of window with header line.
6465
810f2256
JD
64662003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6467
7c402969 6468 * w32fns.c (XPutPixel):
854c1a59
SM
6469 * w32bdf.c (w32_init_bdf_font):
6470 * sunfns.c (sel_read):
6471 * process.c (Fmake_network_process):
6472 * frame.c (store_frame_param):
6473 * fontset.c (Fset_fontset_font):
6474 * emacs.c (shut_down_emacs):
a64387ee 6475 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 6476
a32e9bfd
JD
6477 * config.in: Regenerate.
6478
810f2256
JD
6479 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6480 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6481 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
6482 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
6483 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
6484
6485 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
6486
6487 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
6488 (XTmouse_position, handle_one_xevent): Pass Display* to
6489 x_window_to_scroll_bar.
6490 (x_window_to_scroll_bar): Take a Display* argument.
6491 Check that display for frame is equal to Display* argument.
854c1a59 6492 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
6493 x_display_info_for_display instead. Use Display in xev instead
6494 of GDK_DISPLAY.
6495 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 6496 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
6497 (x_connection_closed): Call xg_display_close for GTK.
6498 (x_term_init): Call xg_display_open for additional displays.
6499 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
6500 for GTK.
6501
6502 * xmenu.c (single_menu_item, mouse_position_for_popup)
6503 (x_activate_menubar): Formatting adjustments.
6504
6505 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
6506 adjustments.
6507
6508 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
6509 (xg_display_close, xg_create_default_cursor)
6510 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
6511 handling.
854c1a59
SM
6512 (xg_left_ptr_cursor): Remove.
6513 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
6514 cursor here.
6515 (xg_win_to_widget): Take Display* argument, call
6516 gdk_xid_table_lookup_for_display.
6517 (xg_create_frame_widgets, xg_get_file_name, create_menus)
6518 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
6519 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
6520 in FRAME_X_DISPLAY_INFO.
6521 (xg_get_scroll_id_for_window): Take Display* argument.
6522 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 6523 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256 6524
78819ebb
KS
6525 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
6526 Display* argument.
6527 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
810f2256 6528
0b03cc78
JD
65292003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6530
6531 * xterm.c (x_detect_focus_change): Do not change focus frame for
6532 Enter/LeaveNotify if the current focus frame has explicit focus.
6533
77e688fa
KS
65342003-11-14 Kim F. Storm <storm@cua.dk>
6535
6536 * dispnew.c (update_text_area): Fix redisplay error when hscroll
6537 is active and first glyph is only partially visible.
854c1a59 6538
dd429b03
KH
65392003-11-13 Kenichi Handa <handa@m17n.org>
6540
6541 * xdisp.c (select_frame_for_redisplay): New function.
6542 (redisplay_internal): Record also selected_frame for
6543 unwind_redisplay. Call select_frame_for_redisplay before
6544 redrawing each frame.
6545 (unwind_redisplay): Argument changed to a cons.
6546
6d9266f4
LT
65472003-11-12 Luc Teirlinck <teirllm@auburn.edu>
6548
6549 * fns.c (Fstring_to_multibyte): Doc fix.
6550
80060eb3
KH
65512003-11-11 Kenichi Handa <handa@m17n.org>
6552
6553 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
6554
74305183
JD
65552003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6556
6557 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
6558 program specified positions.
6559
cfda993e
JD
65602003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6561
6562 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
6563
df211069
KH
65642003-11-08 Kenichi Handa <handa@m17n.org>
6565
6566 * Makefile.in (lisp): Add kannada.el.
6567 (shortlisp): Likewise.
6568
4307d534
KH
65692003-11-07 Kenichi Handa <handa@m17n.org>
6570
854c1a59
SM
6571 * coding.c (coding_allocate_composition_data):
6572 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
6573 (coding_restore_composition): Detect invalid composition data.
6574 Give Fstring and Fvector a Lispy integer, not C int.
6575
854c1a59
SM
65762003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
6577
6578 * floatfns.c (Flogb): Don't use VALMASK.
6579
6580 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
6581 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
6582
6583 * lisp.h (XINT): Move the cast to clarify what is going on.
6584 (GCTYPEMASK, XSETTYPE): Remove.
6585 (XGCTYPE): Make it an alias of XTYPE.
6586
d04103a1
JD
65872003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6588
6589 * xterm.c (x_term_init): Fix formatting.
6590
da18b5ac
JD
65912003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6592
78819ebb
KS
6593 * gtkutil.h (xg_have_tear_offs): Declare.
6594 (xg_keep_popup, xg_did_tearoff): Remove.
da18b5ac
JD
6595
6596 * gtkutil.c: Remove variable xg_did_tearoff.
6597 (xg_have_tear_offs): New function.
6598 (tearoff_remove): Just decrease xg_detached_menus.
6599 (tearoff_activate): Increase xg_detached_menus and call
6600 tearoff_remove when tearoff is removed.
854c1a59 6601 (xg_keep_popup): Remove function.
da18b5ac
JD
6602 (create_menus): Give add_tearoff_p as argument to recursive
6603 call to create_menus.
6604 (xg_create_widget): Use variables instead of multiple
6605 strcmp. Tell create_menus to create tear off only for
6606 menu bar menus.
6607 (xg_update_menubar): Change title for a detached menu also.
6608 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
6609 of deep_p.
6610 (xg_initialize): Initialize xg_detached_menus, remove
6611 initialization of xg_did_tearoff.
6612
6613 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
6614 xg_have_tear_offs returns non-zero.
6615 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
6616 call to xg_keep_popup.
6617
64d4923e
AC
66182003-11-01 Andrew Choi <akochoi@shaw.ca>
6619
6620 * macterm.c (XTread_socket): Handle menubar selection and grow
6621 window only for mouseDown events.
854c1a59 6622
6cc8bc07
JD
66232003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6624
6625 * xterm.c (x_term_init): For GTK part, increase x_initialized
6626 to check for more than one display. Use error instead of return 0.
6627
043131c4
AC
66282003-10-31 Andrew Choi <akochoi@shaw.ca>
6629
854c1a59 6630 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
6631 (copy_dysymtab): Call it.
6632
bdda99a1
LT
66332003-10-31 Luc Teirlinck <teirllm@auburn.edu>
6634
6635 * eval.c (Fdefvaralias): Doc fix.
6636
800f42ff 66372003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
6638
6639 * data.c (Fsetplist): Doc fix.
6640
ef35b389
LK
66412003-10-14 Lute Kamstra <lute@gnu.org>
6642
6643 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 6644
ef35b389 66452003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 6646
07107abc
KS
6647 * window.c (Fset_window_margins): Simplify arg checking.
6648
f7005886
RS
66492003-10-13 Richard M. Stallman <rms@gnu.org>
6650
6651 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
6652 (print_partial_compiled_pattern): Replace assert with a printout.
6653 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
6654
6655 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
6656
6657 * window.c (Fset_window_margins): Allow only integers as args.
6658 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
6659 Doc fixes.
6660
9c0c2af5
LK
66612003-10-13 Lute Kamstra <lute@gnu.org>
6662
6663 * window.c (Fset_window_fringes): Elaborate docstring.
6664
3f080e4e
AC
66652003-10-12 Andrew Choi <akochoi@shaw.ca>
6666
854c1a59 6667 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 6668
3f080e4e
AC
6669 * s/darwin.h (GC_MARK_STACK): Define.
6670
0aa513ed
JD
66712003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6672
6673 * window.c (shrink_windows): New function.
6674 (size_window): Call shrink_windows to calculate window sizes when
6675 shrinking frame with more than one window.
6676
6aa8858a
KS
66772003-10-12 Kim F. Storm <storm@cua.dk>
6678
6679 * xdisp.c (compute_fringe_widths): Doc fix.
6680
c2164d91
KH
66812003-10-08 Kenichi Handa <handa@m17n.org>
6682
854c1a59 6683 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 6684
f82ac129
KH
66852003-10-07 Kenichi Handa <handa@m17n.org>
6686
6687 * coding.c (Qcoding_system_define_form): New variable.
6688 (syms_of_coding): Intern and staticpro it.
6689 (Fcheck_coding_system): Try to autoload the definition of
6690 CODING-SYSTEM.
6691
9296c947
LT
66922003-10-05 Luc Teirlinck <teirllm@auburn.edu>
6693
6694 * fns.c (Frequire): Doc fix.
6695
c1f0671a
JD
66962003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6697
3d8c3826
JD
6698 * xfns.c (Fx_send_client_event): New function as a base for
6699 manipulating extended window manager hints.
6dc15d98 6700 (Fx_send_client_event): Remove unused variable s.
3d8c3826 6701
068ae0fd
JD
6702 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
6703 that function is removed.
6704
6705 * xterm.c (x_set_offset): Use move_offset_left/top instead of
6706 x/y_pixels_outer_diff.
6707 (x_check_expected_move): Calculate move_offset_left/top.
6708
6709 * xterm.h (struct x_output): New members: move_offset_top/left.
6710
854c1a59 6711 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
6712 call x_set_offset directly.
6713
6714 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
6715
96f09305
JD
6716 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
6717
6718 * xterm.c (x_delete_display): Free font names and font_encoder
6719 in dpyinfo->font_table.
6720
854c1a59
SM
6721 * xfns.c (Fx_close_connection): Only call XFreeFont here.
6722 Move xfree of font names to x_delete_display.
96f09305 6723
c1f0671a
JD
6724 * xterm.h (struct x_display_info): New member, wm_type.
6725 (struct x_output): New members, expected_top/left and
6726 check_expected_move.
6727
6728 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
6729 is received.
854c1a59
SM
6730 (handle_one_xevent): Rename x_check_expected_move from
6731 x_check_fullscreen_move.
c1f0671a
JD
6732 (x_set_offset): Only add WM decoration sizes to modified_top/left
6733 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 6734 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
6735 Removed fullscreen specific code. Use check_expected_move,
6736 expected_left/top instead. Also, set wm_type.
6737 (x_term_init): Initialize wm_type to unknown.
6738
6739 * frame.c (x_fullscreen_move): Remove addition of WM decoration
6740 sizes to move_x/y.
6741
be2fdba9
KH
67422003-10-03 Kenichi Handa <handa@m17n.org>
6743
6744 * macterm.c (x_load_font): Clear all members of FONTP before start
6745 filling them.
6746
67472003-10-02 Kenichi Handa <handa@m17n.org>
6748
6749 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
6750 before calling find_ccl_program_func. Call find_ccl_program_func
6751 only when fontp->font_encoder is not NULL.
6752
6753 * xterm.c (x_load_font): Clear all members of FONTP before start
6754 filling them.
6755
26a6e439
JPW
67562003-10-03 John Paul Wallington <jpw@gnu.org>
6757
6758 * keymap.c (map_keymap): Don't abort when binding is a vector.
6759
0d4c2dc2
JR
67602003-10-02 Jason Rumney <jasonr@gnu.org>
6761
854c1a59
SM
6762 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
6763 Sync dependencies with Makefile.in.
a63cf46f
JR
6764 (alloca.o): Remove.
6765
0d4c2dc2
JR
6766 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
6767 filling them.
6768
6769 * w32bdf.c (w32_load_bdf_font): Likewise.
6770
ab8f7d5c
RS
67712003-09-30 Richard M. Stallman <rms@gnu.org>
6772
6773 * term.c (set_tty_color_mode): Calculate current_mode_spec
6774 regardless of value of VAL.
6775
854c1a59 6776 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
6777 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
6778 Handle over_used when splitting UNDER.
6779
a64387ee 67802003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
6781
6782 * regex.c (regex_compile): Free the stack when returning from function.
6783
3413f972
KH
67842003-09-28 Kenichi Handa <handa@m17n.org>
6785
6786 * fontset.c (Finternal_char_font): Change return value to
6787 cons (FONT-NAME . GLYPH-CODE).
6788
a6eeaa81 67892003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
6790
6791 * term.c (tty_setup_colors): Treat any negative argument as -1.
6792
f98ddc99
KH
67932003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
6794
6795 * process.c (send_process): Delete unused temp_buf.
6796
66c8f1a8
DL
67972003-09-26 Dave Love <fx@gnu.org>
6798
6799 * xterm.c (x_bitmap_mask): Declare.
6800
ca716c26
DL
68012003-09-25 Dave Love <fx@gnu.org>
6802
6803 * Makefile.in (fns.o): Depend on md5.h.
6804
fbe57420
KS
68052003-09-25 Kim F. Storm <storm@cua.dk>
6806
6807 * window.c (set_window_buffer): Fix redisplay problems when
6808 switching between buffers with different display margin widths.
6809
ef6ae4ff
KS
68102003-09-23 Kim F. Storm <storm@cua.dk>
6811
6812 * process.c (set_socket_option): Fix :bindtodevice option.
6813 (Fset_network_process_option): Update process contact list when
6814 setting option succeeds.
6815 (Fmake_network_process): Doc fix.
6816
68e03c1c
DL
68172003-09-23 Dave Love <fx@gnu.org>
6818
7146d1c1 6819 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 6820
a6eeaa81 68212003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
6822
6823 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
6824 color mode is an integer number (it could be -1).
6825
8fe7d8c8
RS
68262003-09-22 Richard M. Stallman <rms@gnu.org>
6827
6828 * intervals.c (graft_intervals_into_buffer): Correct the main loop
6829 in the case where OVER is longer than UNDER.
6830
2f71b5ea
MY
68312003-09-22 Masatake YAMATO <jet@gyve.org>
6832
7146d1c1 6833 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 6834 `vertical_type'.
7146d1c1 6835
0c4da023
KS
68362003-09-21 Kim F. Storm <storm@cua.dk>
6837
6838 * frame.c (Vdefault_frame_scroll_bars): New variable.
6839 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
6840 (syms_of_frame): DEFVAR_LISP it, and initialize according to
6841 window-system default scroll bar position.
6842
b648413b
KS
6843 * window.c (Fwindow_scroll_bars): Doc fix.
6844
8f5b9e34
JD
68452003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6846
854c1a59 6847 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 6848
b0f23edf
RS
68492003-09-19 Richard M. Stallman <rms@gnu.org>
6850
6851 * atimer.h: Don't include lisp.h.
6852 (P_): Define it here (as well as elsewhere).
6853
6854 * print.c (Fprin1_to_string): Move the PRINTPREPARE
6855 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
6856
6857 * data.c (Fvariable_binding_locus): New function.
6858 (syms_of_data): defsubr it.
6859 (Flocal_variable_p): Delete duplicate call to indirect_variable.
6860
e1283999
DL
68612003-09-18 Dave Love <fx@gnu.org>
6862
ad5f3636
DL
6863 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
6864
e1283999
DL
6865 * process.c (Fnetwork_interface_info): Fix type error.
6866 (Fnetwork_interface_list): Doc fix.
6867 (read_process_output, read_process_output): Delete unused var.
6868
b8c7fd71
KS
68692003-09-17 Kim F. Storm <storm@cua.dk>
6870
6871 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
6872 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
6873 (Fnetwork_interface_info): Check that ifreq struct has required
6874 fields before accessing them; this requires that those fields are
6875 defined as macros, which may be too restrictive on some platforms,
6876 but it is better than failing on other platforms.
6877 (syms_of_process): Only defsubr above fns when included.
6878
11e0a411
DL
68792003-09-17 Dave Love <fx@gnu.org>
6880
6881 * unexalpha.c: Don't include varargs.h.
6882
e9c50801
KS
68832003-09-17 Kim F. Storm <storm@cua.dk>
6884
6885 * process.c (Fset_process_sentinel): Add sentinel to childp plist
6886 for network process.
6887 (socket_options): Add `:' prefix to option names. Add optbit field.
6888 (set_socket_option): Remove no_error arg and special handling of s < 0.
6889 Return 1<<optbit for known option, 0 for unknown.
6890 Do not interpret 0 as false for boolean option (only nil).
6891 Pass failed option and value to report_file_error.
7146d1c1 6892 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
6893 (Fset_network_process_option): New function to set just one option.
6894 (Fmake_network_process): Allow :coding arg to be a cons.
6895 Allow :server arg to be an integer specifying backlog size.
6896 Remove :options arg, and allow options to be specified directly
6897 as :KEY, VALUE pairs. Parse these options before binding socket.
6898 As before, :reuseaddr t is default for a server process, but this
6899 can now be disabled by specifying :reuseaddr nil.
6900 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
6901 (init_process): Availability of network options is now checked with
6902 simpler syntax (featurep 'make-network-process :OPTION); use loop to
6903 setup features.
6904 (syms_of_process): Fix defsubr's for the replaced functions.
6905
a0fc3644
DL
69062003-09-16 Dave Love <fx@gnu.org>
6907
6908 * Makefile.in: Depend on coding.h.
6909
6df2a645
KS
69102003-09-14 Kim F. Storm <storm@cua.dk>
6911
6912 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
6913 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
6914 (syms_of_process): Defsubr them.
6915
6916 * config.in: Regenerate.
7146d1c1
SM
6917
69182003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
6919
6920 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
6921 * m/news-r6.h (XUNMARK): Remove.
6922 * m/mips.h (XUNMARK): Remove.
6923 * m/mips-siemens.h (XUNMARK): Remove.
6924 * m/iris4d.h (XUNMARK): Remove.
6925 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
6926
0930c1a1
SM
69272003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
6928
31003b9e
SM
6929 * lisp.h (VALBITS): Don't remove 1 for the markbit.
6930 (union Lisp_Object): Use unsigned int for types. Remove markbit.
6931 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
6932 (XTYPE): Use unsigned right-shift.
6933 (XMARKBIT, XMARK, XUNMARK): Remove.
6934
0930c1a1
SM
6935 * alloc.c (init_intervals, init_symbol, init_marker):
6936 Don't preallocate anything.
6937 (Fgarbage_collect, mark_object): Ignore the markbit.
6938
6939 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
6940
19bb0fcd 69412003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
6942
6943 * xdisp.c (pint2hrstr): New function.
6944 (decode_mode_spec): Add `%i' and `%I' specs.
6945 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
6946 for `mode-line-format'.
6947
03bb6a06
AS
69482003-09-07 Andreas Schwab <schwab@suse.de>
6949
6950 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
6951 avoid warning.
6952
a6eeaa81 69532003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 6954
0930c1a1 6955 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 6956
ed159bbf
KS
69572003-09-03 Kim F. Storm <storm@cua.dk>
6958
6959 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
6960 change (superseded by 2002-08-30 change); the default blink-off
6961 cursor is now again "no cursor".
6962
fe64a394
JR
69632003-09-01 Jason Rumney <jasonr@gnu.org>
6964
6965 * makefile.w32-in (alloca.o): Remove.
6966 (coding.o): Depend on intervals.h
6967 (emacs.o, bytecode.o): Depend on window.h
6968
c0175e24
DL
69692003-09-01 Dave Love <fx@gnu.org>
6970
6971 * Makefile.in (alloca.o): Remove commands.
6972 (coding.o): Depend on intervals.h composite.h window.h.
6973 (emacs.o): Depend on window.h keyboard.h keymap.h.
6974 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
6975 (bytecode.o): Depend on window.h.
6976
a24d4cb2
JR
69772003-08-31 Jason Rumney <jasonr@gnu.org>
6978
4bc2315e
JR
6979 * w32term.c (w32_per_char_metric): Allow cached metrics to be
6980 returned even when font_type is unknown.
6981
a24d4cb2
JR
6982 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
6983
9d35adc7
JD
69842003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6985
6986 * xterm.c (x_term_init): Initialize new fields in x_display_info.
6987
6988 * xterm.h (struct x_display_info): Add red/green/blue_bits and
6989 *_offset.
6990
6991 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
6992 calculate pixel value.
6993
6f68b035
GM
69942003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
6995
0930c1a1
SM
6996 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
6997 Don't tell redisplay display is accurate when it's actually been
6998 paused for pending input.
6f68b035 6999
4828b4d7
RS
70002003-08-29 Richard M. Stallman <rms@gnu.org>
7001
7002 * dispnew.c (adjust_glyph_matrix): Call window_box
7003 whenever W is nonzero.
7004
7005 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
7006 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 7007 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
7008 Use indirect_variable to trace thru variable aliases.
7009
7010 * config.in: Updated.
7011
7012 * callint.c (Fcall_interactively): Save and restore
7013 Vthis_command, Vthis_original_command, real_this_command,
7014 and current_kboard->Vlast_command.
7015
7016 * abbrev.c (Fexpand_abbrev): Insert before deleting.
7017
e019878d
GM
70182003-08-29 Gerd Moellmann <gerd@gnu.org>
7019
7020 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
7021
85478bc6
KH
70222003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
7023
0930c1a1 7024 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
7025 (decode_coding_sjis_big5): Likewise.
7026
07ce82d3
JR
70272003-08-27 Jason Rumney <jasonr@gnu.org>
7028
d3703de3
JR
7029 * w32.c (sys_pipe): Protect against file descriptor overflow.
7030
ee4a01d1
JR
7031 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
7032
07ce82d3
JR
7033 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
7034
a64387ee 70352003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
7036
7037 * xfns.c (Vgtk_version_string): New variable.
7038 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
7039
a6eeaa81 70402003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 7041
0930c1a1 7042 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 7043
5459e42a
EZ
7044 * Makefile.in (msdos.o): Depend on intervals.h.
7045
0930c1a1 7046 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 7047
231d6cfb
JD
70482003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7049
7050 * xterm.h (struct x_display_info): New fields: client_leader_window
7051 and Xatom_wm_client_leader.
7052
7053 * xterm.c (x_initialize): Move call to x_session_initialize to ...
7054 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
7055
7056 * xsmfns.c (create_client_leader_window): New function.
7057 (x_session_initialize): Call create_client_leader_window, take
7058 dpyinfo as argument.
7059
7060 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
7061
7062 * Makefile.in (xsmfns.o): Add more depenedencies.
7063
afa88464
DL
70642003-08-21 Dave Love <fx@gnu.org>
7065
7066 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
7067
f730033e
KH
70682003-08-21 Kenichi Handa <handa@m17n.org>
7069
7070 * term.c (term_init): Fix previous change; don't rely on the
7071 length of `buffer' if TERMINFO is defined.
7072
6dca786c
DL
70732003-08-20 Dave Love <fx@gnu.org>
7074
7075 * atimer.h: Include lisp.h.
7076
7077 * lisp.h (EMACS_LISP_H): New.
7078 (popup_activated_flag): Don't declare.
7079
7080 * alloca.c: Some merging with gnulib. Change logic and doc
7081 concerning (x)malloc/(x)free -- no longer Emacs-specific.
7082 [DO_BLOCK_INPUT]: Don't include lisp.h.
7083 (xmalloc, xfree): Declare.
7084 (malloc): Don't declare.
7085
0930c1a1 7086 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
7087 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
7088 atimer.h, blockinput.h.
7089
7090 * alloc.c (lisp_align_malloc): Change type of `aligned'.
7091
78819ebb 7092 * alloca.s: Remove.
6dca786c 7093
3a06a6d9
RS
70942003-08-19 Gerd Moellmann <gerd@gnu.org>
7095
7096 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
7097 use -lncurses.
7098
7099 * term.c (term_init): Use a buffer of size 4096 for tgetent since
7100 FreeBSD returns something longer than 2044. Abort if the end of
7101 the buffer is overwritten.
7102
27eeee55
MB
71032003-08-19 Miles Bader <miles@gnu.org>
7104
7105 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
7106
2f297815
GM
71072003-08-19 Gerd Moellmann <gerd@gnu.org>
7108
f4446bbf
GM
7109 * alloc.c (lisp_align_malloc): Check for memory full when
7110 allocating ablocks, which also avoids freeing a pointer into an
7111 ablocks structure.
7112
7113 * puresize.h (BASE_PURESIZE): Increase to 1100000.
7114
0930c1a1 7115 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 7116
0e7d7aae
RS
71172003-08-16 Richard M. Stallman <rms@gnu.org>
7118
7119 * editfns.c (Fencode_time): Doc fix.
7120
71212003-08-16 David Ponce <david@dponce.com>
7122
7123 * fileio.c (Fwrite_region): Fix conditional expression to issue
7124 the right message.
7125
b6189c3b 71262003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
7127
7128 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 7129 Set default value to 1.
0e7d7aae 7130
5d551295
KH
71312003-08-15 Kenichi Handa <handa@m17n.org>
7132
7133 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
7134 what autoscaled.
7135 (best_matching_font): Once we find a better scalable font, set
7136 non_scalable_has_exact_height_p to 1.
7137 (try_font_list): Call try_alternative_families to try any family
7138 with the given registry.
7139
1661e56b
AS
71402003-08-09 Andreas Schwab <schwab@suse.de>
7141
f29181dc
AS
7142 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
7143
1661e56b
AS
7144 * print.c (print_string): Fix printing of multibyte string with
7145 nontrivial printcharfun.
7146
465aa50a
JD
71472003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7148
7149 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
7150
7151 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
7152
e430e5ba
KH
71532003-07-31 Kenichi Handa <handa@m17n.org>
7154
7155 * process.c (read_process_output): Return the actually read bytes
7156 instead of the result of decoding.
7157
97e7188e
KH
71582003-07-31 Kenichi Handa <handa@m17n.org>
7159
7160 * xterm.h (struct x_bitmap_record): New member have_mask.
7161
7162 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
7163 to 0.
7164 (x_create_bitmap_from_file): Likewise.
7165 (x_destroy_bitmap): Check have_mask member before freeing a mask.
7166 (x_destroy_all_bitmaps): Likewise.
7167 (x_create_bitmap_mask): Set have_mask member to 1.
7168
b53094d6
RS
71692003-07-30 Richard M. Stallman <rms@gnu.org>
7170
7171 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
7172
631f2082
JD
71732003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7174
7175 * gtkutil.c (xg_mark_data): Update calls to mark_object.
7176
c855f2ca
RS
71772003-07-29 Richard M. Stallman <rms@gnu.org>
7178
7179 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
7180 Conditionalize XIM code on HAVE_XIM.
7181
7182 * fns.c (Fclear_string): New function.
7183 (syms_of_fns): defsubr it.
7184
b6189c3b 71852003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 7186
0930c1a1 7187 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 7188
29ea8ae9
SM
71892003-07-22 Stefan Monnier <monnier@cs.yale.edu>
7190
7191 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
7192
7193 * buffer.c (delete_all_overlays): New function.
7194 * buffer.h (delete_all_overlays): Declare.
7195 * coding.c (run_pre_post_conversion_on_str):
7196 * print.c (temp_output_buffer_setup):
7197 * fileio.c (Finsert_file_contents):
7198 * minibuf.c (get_minibuffer): Use it.
7199
1dd7ccf2
AC
72002003-07-22 Andrew Choi <akochoi@shaw.ca>
7201
7202 * unexmacosx.c (unexec_regions_sort_compare):
7203 (unexec_regions_merge): New functions. Sort and merge unexec
7204 regions before dumping them.
7205
f57bd967
DL
72062003-07-22 Dave Love <fx@gnu.org>
7207
7208 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
7209
7cdee936
SM
72102003-07-21 Stefan Monnier <monnier@cs.yale.edu>
7211
7212 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
7213 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
7214 MARKBIT as the gcmarkbit for strings.
7215
e50886d3
RS
72162003-07-21 Richard M. Stallman <rms@gnu.org>
7217
7218 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
7219
29ea8ae9 7220 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
7221 (syms_of_fns): Corresponding change.
7222
7223 * alloc.c (syms_of_alloc): Doc fixes.
7224
72252003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
7226
7227 * s/netbsd.h: Use -Wl syntax.
7228
fdc39b59
RS
72292003-07-17 Richard M. Stallman <rms@gnu.org>
7230
7231 * xterm.c (xim_initialize): Redo 6/24 change.
7232
9c53385f
SM
72332003-07-15 Stefan Monnier <monnier@cs.yale.edu>
7234
7235 * buffer.c (copy_overlays): Use EMACS_INT for positions.
7236 (Fswitch_to_buffer): Don't signal an error when switching to the same
7237 buffer in a dedicated window.
7238
7239 * alloc.c: Use bitmaps for cons, as was done for floats.
7240 (init_float, init_cons): Let the normal code allocate the first block.
7241 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
7242 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
7243 New macros.
7244 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
7245 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
7246 (live_cons_p): Check the pointer is not past the `conses' array.
7247 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
7248 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
7249 (survives_gc_p): Use CONS_MARKED_P and simplify.
7250 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
7251
dde13196
PE
72522003-07-13 Paul Eggert <eggert@twinsun.com>
7253
7254 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
7255 puts it into BSS instead, at least on Solaris 8 and 9.
7256 This is a valid optimization, and it may occur on other platforms,
7257 so Emacs should not assume that initializing a static variable to
7258 zero puts it into data.
7259 * alloc.c (pure, staticvec):
7260 Initialize these arrays to nonzero, so that they're not
7261 put into BSS by that optimization.
7262
a801bc34
SM
72632003-07-13 Stefan Monnier <monnier@cs.yale.edu>
7264
7265 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
7266 (lisp_align_malloc): Use posix_memalign is available.
7267 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
7268 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
7269 for consistency. Update users.
7270
0c8b2afa
RS
72712003-07-13 Richard M. Stallman <rms@gnu.org>
7272
7273 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
7274
668c2ab0
JB
72752003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
7276
7277 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
7278 and use the Gtk+ function gtk_window_icon_from_file if available.
7279
7280 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
7281 handle mask of bitmaps.
7282 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
7283 mask property.
7284 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
7285
7286 * xterm.h (xg_set_icon): New function.
7287
800bebe3
RS
72882003-07-12 Paul Eggert <eggert@twinsun.com>
7289
7290 * unexelf.c (unexec): Consider a section to precede the .bss
7291 section if its addresses overlap that of .bss.
7292
69e38995
RS
72932003-07-12 Richard M. Stallman <rms@gnu.org>
7294
7295 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
7296
7297 * config.in (HAVE_CRTIN): Add #undef.
7298 (INLINE): Really inline only if OPTIMIZE is defined.
7299
7300 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
7301 END_FILES_1.
7302 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 7303 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
7304
7305 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
7306 (TERMINFO): Define.
7307 (LIBS_TERMCAP): Define.
7308 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
7309
7310 * xfns.c: Include libpng/png.h instead of png.h.
7311
f1d0c238
AS
73122003-07-11 Andreas Schwab <schwab@suse.de>
7313
7314 * buffer.c (modify_overlay): Update prototype.
7315 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
7316 Likewise.
7317
5f6bf5fe
SM
73182003-07-09 Stefan Monnier <monnier@cs.yale.edu>
7319
7320 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
7321 (struct interval): Move to intervals.h.
7322 (struct Lisp_Marker): Use EMACS_INT for position info.
7323 (forward_point): Remove prototype of defunct function.
7324 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
7325 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
7326 (syms_of_textprop, set_text_properties): Remove prototypes that are
7327 already in intervals.h.
7328
7329 * intervals.h (struct interval): Move from lisp.h.
7330 Use EMACS_INT for position and size info.
7331
7332 * coding.c: Include intervals.h for Fset_text_properties.
7333
7334 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
7335 position and length information.
7336
2765b457
SM
73372003-07-09 Stefan Monnier <monnier@cs.yale.edu>
7338
7339 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
7340 position and length information.
7341
2410d73a
SM
73422003-07-09 Stefan Monnier <monnier@cs.yale.edu>
7343
7344 Change overlays_after and overlays_before so the overlays themselves
7345 are linked into lists, rather than using cons cells. After all each
7346 Lisp_Misc already occupies 5 words, so we can add a `next' field to
7347 Lisp_Overlay for free and save up one cons cell per overlay (not
7348 to mention one indirection when traversing the list of overlay).
7349
7350 * lisp.h (struct Lisp_Overlay): New field `next'.
7351
7352 * buffer.h (struct buffer): Change overlays_before and overlays_after
7353 from Lisp lists of overlays to pointers to overlays.
7354
7355 * buffer.c (overlay_strings, recenter_overlay_lists):
7356 Fix typo in eassert in last commit.
7357 (unchain_overlay): New function.
7358 (add_overlay_mod_hooklist): Use AREF.
7359 (copy_overlays, reset_buffer, overlays_at, overlays_in)
7360 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
7361 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
7362 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
7363 (report_overlay_modification, evaporate_overlays, init_buffer_once):
7364 Adjust to new type of overlays_(before|after).
7365
7366 * alloc.c (mark_object): Mark the new `next' field of overlays.
7367 (mark_buffer): Manually mark the overlays_(after|before) fields.
7368
7369 * coding.c (run_pre_post_conversion_on_str):
7370 * editfns.c (overlays_around):
7371 * xdisp.c (load_overlay_strings):
7372 * fileio.c (Finsert_file_contents):
7373 * indent.c (current_column):
7374 * insdel.c (signal_before_change, signal_after_change):
7375 * intervals.c (set_point_both):
7376 * print.c (temp_output_buffer_setup): Use new type for
7377 overlays_(before|after).
7378
04812929
SM
73792003-07-08 Stefan Monnier <monnier@cs.yale.edu>
7380
7381 * buffer.c (report_overlay_modification): Don't run hooks while
7382 traversing the list of overlays.
7383
7384 * buffer.h (struct buffer): Use an int for overlay_center.
7385 (overlays_at, evaporate_overlays, recenter_overlay_lists)
7386 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
7387
7388 * buffer.c (reset_buffer, recenter_overlay_lists)
7389 (adjust_overlays_for_insert, adjust_overlays_for_delete)
7390 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
7391 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
7392 (overlays_at, evaporate_overlays, recenter_overlay_lists)
7393 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
7394
7395 * xdisp.c (fast_find_position): Remove unused var.
7396
7397 * cmds.c (Qexpand_abbrev): New sym.
7398 (syms_of_cmds): Initialize it.
7399 (internal_self_insert): Use it to call expand-abbrev.
7400
2e7ecf15
KS
74012003-07-09 Kim F. Storm <storm@cua.dk>
7402
f9711de4 7403 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 7404 was configured with --without-xim.
42f81f64 7405 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 7406
c6de56a0
RS
74072003-07-07 Richard M. Stallman <rms@gnu.org>
7408
7409 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
7410
7411 * alloc.c (Fgarbage_collect): Doc fix.
7412
b6189c3b 74132003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
7414
7415 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
7416
bfe1a3f7
SM
74172003-07-06 Stefan Monnier <monnier@cs.yale.edu>
7418
04812929
SM
7419 * minibuf.c (read_minibuf): UNGCPRO before returning.
7420 (Ftry_completion, Fall_completions): Doc fix.
7421
bfe1a3f7
SM
7422 * alloc.c (live_float_p): Check that p is not past the `floats' array,
7423 now that `floats' is not the last element of the struct any more.
7424
ee79d1aa
JR
74252003-07-06 Jason Rumney <jasonr@gnu.org>
7426
7427 * w32term.h (ClipboardSequence_Proc): New type.
7428
7429 * w32fns.c (clipboard_sequence_fn): New variable.
7430 (globals_of_w32fns): Initialize it.
7431
7432 * w32select.c (last_clipboard_sequence_number): New variable.
7433 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
7434 number if possible.
7435
49723c04
SM
74362003-07-06 Stefan Monnier <monnier@cs.yale.edu>
7437
4698665f
SM
7438 * m/amdx86-64.h (MARKBIT):
7439 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
7440 MARKBIT and ARRAY_MARK_FLAG any more.
7441
7442 * m/hp800.h (XSETMARKBIT):
7443 * m/sr2k.h (XSETMARKBIT):
7444 * lisp.h (XSETMARKBIT): Remove unused macro.
7445
49723c04
SM
7446 * lisp.h (mark_object): Change prototype.
7447
7448 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
7449 (last_marked): Change accordingly.
7450 (mark_interval, mark_maybe_object, mark_maybe_pointer)
7451 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
7452 (mark_buffer): Update calls to mark_object.
7453
7454 * bytecode.c (mark_byte_stack):
7455 * fns.c (sweep_weak_table):
7456 * keyboard.c (mark_kboards): Update calls to mark_object.
7457
1d660eca
JR
74582003-07-06 Jason Rumney <jasonr@gnu.org>
7459
7460 * alloc.c (struct ablock): Only include padding when there is some.
7461
618b5ae4
SM
74622003-07-04 Stefan Monnier <monnier@cs.yale.edu>
7463
7464 * alloc.c (ALIGN): Add casts to simplify usage.
7465 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
7466 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
7467 (struct ablock, struct ablocks): New types.
7468 (free_ablock): New global var.
7469 (lisp_align_malloc, lisp_align_free): New functions.
7470 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
7471 (struct float_block): Reorder and add gcmarkbits.
7472 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
7473 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
7474 (init_float, make_float): Use lisp_align_malloc.
7475 (free_float, live_float_p): Don't use `type' any more.
7476 (make_float): Use FLOAT_UNMARK to access to mark bit.
7477 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
7478 Use FLOAT_MARKED_P to access the mark bit.
7479 (pure_alloc): Simplify use of ALIGN.
7480 (mark_object): Use FLOAT_MARK to access the mark bit.
7481 (gc_sweep): Use new macros to access the float's mark bit.
7482 (init_alloc_once): Init free_ablock.
7483
7484 * lisp.h (struct Lisp_Float): Remove unused field `type'.
7485
3ef06d12
SM
74862003-06-27 Stefan Monnier <monnier@cs.yale.edu>
7487
7488 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
7489 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
7490 (allocate_buffer): Move.
7491 (string_bytes): Don't mask markbit of `size_byte'.
7492 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
7493 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
7494 Use the `size' field of buffers (rather than the `name' field) for
7495 the mark bit, as is done for all other vectorlike objects.
7496 Use the new macros to access the mark bit of vectorlike objects.
7497
e81043aa
RS
74982003-06-26 Richard M. Stallman <rms@gnu.org>
7499
7500 * puresize.h (BASE_PURESIZE): Increment base size.
7501
7502 * xdisp.c (fast_find_position): Enable Gerd's new definition.
7503
7504 * xterm.c (xim_initialize): Undo previous change.
7505
2d0834cc
SM
75062003-06-26 Stefan Monnier <monnier@cs.yale.edu>
7507
7508 * alloc.c (survives_gc_p): Simplify.
7509
7510 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
7511
7512 * window.c (Fset_window_dedicated_p): Simplify.
7513 (display_buffer_1): Don't raise the win from which minibuf was entered.
7514 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
7515 (Fminibuffer_selected_window): Simplify.
7516
7517 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
7518
7519 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
7520 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
7521
7522 * insdel.c (check_markers, adjust_markers_for_delete)
7523 (adjust_markers_for_insert, adjust_markers_for_replace)
7524 (prepare_to_modify_buffer, RESTORE_VALUE):
7525 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
7526 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
7527 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
7528 * alloc.c (Fmake_marker, free_marker, gc_sweep):
7529 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
7530 * editfns.c (save_excursion_restore, transpose_markers):
7531 * window.c (delete_window):
7532 * xdisp.c (message_dolog): Update for new types.
7533
d54ae3d8
JD
75342003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7535
a5f696ac
JD
7536 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
7537 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 7538 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
7539
7540 * frame.c (make_frame): Initialize default_face_done_p.
7541
7542 * frame.h (struct frame): Add default_face_done_p.
7543
d54ae3d8
JD
7544 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
7545 will be defined.
7546
2336fe58
SM
75472003-06-25 Stefan Monnier <monnier@cs.yale.edu>
7548
7549 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
7550 Initialize the new field `gcmarkbit'.
7551 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
7552 (mark_interval_tree): Don't mark the tree separately from the nodes.
7553 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
7554 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
7555 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
7556
7557 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
7558 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
7559 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
7560 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
7561 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
7562
bcea31c2
DL
75632003-06-24 Dave Love <fx@gnu.org>
7564
7565 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
7566
7567 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
7568 from gnulib.
7569
2601f59e
RS
75702003-06-21 Richard M. Stallman <rms@gnu.org>
7571
7572 * fileio.c (Fwrite_region): Alternate messages
7573 for append and partial write.
7574
7575 * keyboard.c (read_key_sequence): When converting upcase fn key to
7576 downcase, update fkey and keytran so `backspace' gets translated.
7577
7578 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
7579
7580 * process.c (wait_reading_process_input): Don't signal SIGIO
7581 in batch mode.
7582
b5d2c621
KH
75832003-06-17 Kenichi Handa <handa@m17n.org>
7584
7585 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
7586 composite.h.
7587
7588 * xselect.c: Don't include charset.h, coding.h, composite.h.
7589 (Qforeign_selection): New variable.
7590 (syms_of_xselect): Intern and static it.
7591 (selection_data_to_lisp_data): Return a unibyte string made from
7592 data with `foreign-selection' text property.
7593
6793bc63
SM
75942003-06-15 Stefan Monnier <monnier@cs.yale.edu>
7595
7596 * termhooks.h (EVENT_INIT): New macro.
7597
7598 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
7599
7600 * alloc.c (mark_kboards): Move to keyboard.c.
7601
7602 * keyboard.c (record_asynch_buffer_change, read_avail_input):
7603 * xterm.c (x_dispatch_event):
7604 * xmenu.c (find_and_call_menu_selection):
7605 * xdisp.c (handle_tool_bar_click):
7606 * w32menu.c (menubar_selection_callback):
7607 * sysdep.c (kbd_input_ast, read_input_waiting):
7608 * msdos.c (dos_rawgetc):
7609 * macterm.c (mac_check_for_quit_char):
7610 * macmenu.c (menubar_selection_callback):
7611 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
7612 data to kbd_buffer_store_event.
7613
b3ea810c
KS
76142003-06-15 Kim F. Storm <storm@cua.dk>
7615
7616 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 7617 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 7618
b8f75eda
KG
76192003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7620
7621 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
7622
ba92ce48
KH
76232003-06-12 Kenichi Handa <handa@m17n.org>
7624
7625 * fileio.c (Fwrite_region): Save and restore restriction.
7626
b80263be
DL
76272003-06-12 Dave Love <fx@gnu.org>
7628
7629 * alloca.c (alloca): Declare arg as size_t.
7630
6793bc63
SM
7631 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
7632 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 7633
b23c0a83
DL
76342003-06-11 Dave Love <fx@gnu.org>
7635
7636 * search.c (shrink_regexp_cache): Use xrealloc.
7637 (syms_of_search): Use xmalloc.
7638
700e47c2
KS
76392003-06-10 Kim F. Storm <storm@cua.dk>
7640
7641 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
7642 Adjust phys_cursor.x to be relative to window box, rather than
7643 text area before checking -- to ensure cursor is redrawn when
7644 exposing window.
7645 Note: This also fixes a similar (older) bug if display margins
7646 are present.
7647
f11aa0b2
KH
76482003-06-06 Kenichi Handa <handa@m17n.org>
7649
7650 * coding.c (encoding_buffer_size): If coding->type is
7651 coding_type_ccl, double magnification on CRLF encoding.
7652
3d143690
JR
76532003-06-06 Jason Rumney <jasonr@gnu.org>
7654
7655 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
7656 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
7657
7658 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
7659 Mac too.
7660
f16205ca
DL
76612003-06-05 Dave Love <fx@gnu.org>
7662
b23c0a83
DL
7663 * strftime.c: Merge changes from gnulib.
7664
f16205ca
DL
7665 * mktime.c (__mktime_internal): Merge changes from gnulib
7666 involving year 69 and dst2.
7667
7668 Changes to merge with gnulib version and be consistent with the
7669 autoconf test:
7670
6793bc63
SM
7671 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
7672 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
7673 [HAVE_LOCALE_H]: Include locale.h.
7674 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
7675
9b87a0bc
KS
76762003-06-05 Kim F. Storm <storm@cua.dk>
7677
7678 * window.c (coordinates_in_window): Convert X and Y to window
7679 relative coordinates inside mode-line and header-line parts.
7680 Convert X and Y to margin area relative coordinates inside left
7681 and right display margin parts.
7682
5a8a15ec
JR
76832003-06-05 Jason Rumney <jasonr@gnu.org>
7684
7685 * w32fns.c (add_system_logical_colors_to_map): New function.
7686 (Fx_open_connection): Use it.
7687
01ed8ff1
SM
76882003-06-04 Stefan Monnier <monnier@cs.yale.edu>
7689
7690 * process.c (allocate_pty): Revert part of the previous patch.
7691 (Faccept_process_output): Simplify.
7692
b427b65d
JR
76932003-06-04 Jason Rumney <jasonr@gnu.org>
7694
7695 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
7696
7697 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
7698 (lispy_mouse_wheel_names): Remove.
7699 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
7700 Always define drag_and_drop_syms.
7701
7702 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
7703 WHEEL_EVENT events.
7704
914a8c47
SM
77052003-06-03 Stefan Monnier <monnier@cs.yale.edu>
7706
01ed8ff1
SM
7707 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
7708
914a8c47
SM
7709 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
7710
adcb132c
JD
77112003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7712
7713 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
7714 menu item label.
7715
be781fa7
RS
77162003-06-03 Richard M. Stallman <rms@gnu.org>
7717
7718 * window.c (Fwindow_edges): Doc fix.
7719 (Fwindow_pixel_edges, Fwindow_inside_edges)
7720 (Fwindow_inside_pixel_edges): New functions.
7721 (syms_of_window): defsubr them.
7722
7723 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
7724 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
7725
914a8c47
SM
77262003-06-02 Stefan Monnier <monnier@cs.yale.edu>
7727
7728 * dispnew.c (Fsit_for): Don't lie about the number of args.
7729
5b07197a
DL
77302003-06-02 Dave Love <fx@gnu.org>
7731
7732 * callproc.c: Use HAVE_FCNTL_H, not USG5.
7733 (syms_of_callproc) <process-environment>: Doc fix.
7734
7735 * doc.c: Use HAVE_FCNTL_H, not USG5.
7736
7737 * xfaces.c (font_rescale_ratio): Fix for K&R.
7738
7739 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
7740
7741 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
7742
7743 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
7744
7745 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
7746 (xg_create_frame_widgets): Use ENCODE_UTF_8.
7747
d7107586 7748 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
7749
7750 * xmenu.c (ENCODE_MENU_STRING): New.
7751 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
7752 Use it.
7753
7754 * coding.h (ENCODE_UTF_8): New.
7755 (Qutf_8): Declare.
7756
7757 * coding.c (Qutf_8): New.
7758 (syms_of_coding): Intern it.
7759
7760 * fns.c: Doc fixes.
7761
7335b336
KH
77622003-06-02 Kenichi Handa <handa@m17n.org>
7763
7764 * buffer.c (Fset_buffer_multibyte): Fix previous change.
7765
914a8c47
SM
77662003-06-01 Stefan Monnier <monnier@cs.yale.edu>
7767
7768 * lread.c (openp): Make sure STR is a string.
7769
9862c135
JR
77702003-06-01 David Ponce <david@dponce.com>
7771
cab27d04 7772 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
9862c135
JR
7773 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
7774
7775 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
7776 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
7777 (discard_mouse_events): Discard WHEEL_EVENT events too.
7778 (lispy_wheel_names, wheel_syms): New.
7779 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
cab27d04 7780 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
914a8c47 7781 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
7782
7783 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
7784 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
7785 WHEEL_EVENT events.
7786
f984e73e
JPW
77872003-05-31 John Paul Wallington <jpw@gnu.org>
7788
7789 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
7790 timer are in lisp/emacs-lisp.
7791
1efcd78f
KH
77922003-05-31 Kenichi Handa <handa@m17n.org>
7793
458c8af4
KH
7794 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
7795 region when a buffer is changed to unibyte.
7796
1efcd78f
KH
7797 * charset.h (VALID_LEADING_CODE_P): New macro.
7798 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
7799
778e2804
KH
7800 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
7801 is nonzero, accept multibyte form of eight-bit-control chars.
7802 (decode_composition_emacs_mule): Likewise.
7803 (decode_coding_emacs_mule): Likewise.
7804 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
7805 multibyte form of eight-bit-control chars.
7806
7807 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
7808 (Finsert_file_contents): If coding-system-for-read is bound to
7809 Qauto_save_coding, use the coding system emacs-mule with special
7810 setting for recovering a file.
7811 (choose_write_coding_system): On auto saving, use the coding
7812 system emacs-mule with special setting for auto saving.
7813 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
7814
034060e4
KH
78152003-05-30 Kenichi Handa <handa@m17n.org>
7816
7817 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
7818 properly before calling ccl_driver.
7819
778e2804 7820 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4 7821
cab27d04 7822 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
034060e4
KH
7823 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
7824 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
7825
595f5aa5
GM
78262003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
7827
7828 * xfaces.c (realize_default_face): Do not abort if lface is
7829 non-existent - reverts change from 2003-05-19.
7830
103e0180
KH
78312003-05-29 Kenichi Handa <handa@m17n.org>
7832
7833 * coding.c (decode_coding_iso2022): Pay attention to the byte
7834 sequence of CTEXT extended segment, and retain those bytes as is.
7835
78362003-05-28 Kenichi Handa <handa@m17n.org>
7837
cab27d04 7838 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
103e0180
KH
7839 of CODING_REPLACEMENT_CHARACTER.
7840 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
7841 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
7842 check this flag on encoding.
cab27d04
SM
7843 (encode_coding_sjis_big5):
7844 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
7845 (Fset_terminal_coding_system_internal):
7846 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
7847 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
7848
7849 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
103e0180
KH
7850 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
7851 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
7852
ff6a3bfb 78532003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 7854
ff6a3bfb
RS
7855 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
7856
7857 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 7858
1963c428
KS
78592003-05-28 Kim F. Storm <storm@cua.dk>
7860
7861 * xdisp.c (expose_window): Fix error in calculation of
7862 window relative coordinates of area to redisplay.
7863
2b5d4601
JR
78642003-05-27 Jason Rumney <jasonr@gnu.org>
7865
7866 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
7867
1c64a4a2
JB
78682003-05-27 David Ponce <david@dponce.com>
7869
7870 Handle W32 mouse wheel events as mouse click events, like in X.
7871
7872 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
7873 MOUSE_WHEEL_EVENT anymore.
7874
7875 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
7876 Scrolling down/up the mouse wheel is respectively mapped to mouse
7877 button 4 and 5.
7878 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
7879 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
7880 WM_MOUSEWHEEL events.
7881
2d031b89
AS
78822003-05-27 Andreas Schwab <schwab@suse.de>
7883
20464fdf
AS
7884 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
7885
2d031b89
AS
7886 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
7887 partially visible line.
7888
7889 * alloc.c (Fgarbage_collect): Fix last change.
7890
97bc76d4
JPW
78912003-05-26 John Paul Wallington <jpw@gnu.org>
7892
7893 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
7894
56613f06
SM
78952003-05-25 Stefan Monnier <monnier@cs.yale.edu>
7896
7897 * window.c (Fset_window_buffer): Add type of `keep_margins'.
7898 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
7899
7900 * window.h (window_box_text_cols): Declare.
7901
7902 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
7903 (x_draw_vertical_border): Remove unused var `f'.
7904
7905 * xfaces.c (build_scalable_font_name): Remove `unused var
7906 pixel_size' warning.
7907
7908 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
7909
7910 * unexelf.c (unexec): Remove `unused var n' warning.
7911
7912 * strftime.c (my_strftime_localtime_r): Remove `defined but
7913 unused' warning.
7914
7915 * process.c (allocate_pty): Remove `unused var stb' and
7916 `cp might be used uninitialized' warnings.
7917
7918 * dispnew.c (mode_line_string): Remove unused var `f'.
7919
7920 * coding.c (find_safe_codings): Remove unused var `i'.
7921
7922 * bytecode.c (Fbyte_code): Remove `unused val' warning.
7923
7924 * buffer.c (Fkill_buffer): Remove unused var `list'.
7925
7926 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
7927
93421a1f
JD
79282003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7929
7930 * frame.c (make_frame): Condition want_fullscreen with
7931 HAVE_WINDOW_SYSTEM.
7932
c4b8aebc
JB
79332003-05-25 Juanma Barranquero <lektu@terra.es>
7934
7935 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
7936 (Fwindow_scroll_bars): Fix typo in docstring.
7937
0416870b
KS
79382003-05-24 Kim F. Storm <storm@cua.dk>
7939
7940 The following changes serve several purposes:
7941
7942 1) Swap the position of fringes and display margins in windows, i.e.
7943 the fringes are now displayed between the margins and the text area
7944 (by default).
7945
7946 2) Allow fringe and scroll bar parameters to be set per-buffer and
7947 per-window (like display margins). Such settings are now stored
7948 in window configurations, preserved when frames are resized, and
9018a88e 7949 copied when windows are split vertically or horizontally.
0416870b
KS
7950 Several bugs related to display margins have been fixed.
7951
7952 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 7953
0416870b
KS
7954 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
7955 rather than FRAME_WIDTH (FRAME_FONT (f)).
7956
7957 5) Introduce a consistent naming of variables, members and macros
7958 depending on whether their value is measured in pixels or in
7959 canonical columns/lines. Pixel dimensions are named *_width and
7960 *_height, while canonical columns/lines are named *_cols and
7961 *_lines. Pixel positions are named *_x and *_y, while column/line
7962 positions are named *_col and *_line.
7963
7964 6) Consolidate more of the X, W32, and MAC gui code by moving
7965 common data into struct frame, and generalize it for the non-gui
7966 case by using suitable defaults.
7967
7968 7) Cleanup and consolidate the macros controlling frame and window
7969 layout into frame.h and window.h, and generalize the use of the
7970 various window_box_* functions (enhanced to handle the new fringe
7971 position and the per-window fringe and scroll bar settings).
7972
7973 * frame.h (struct frame): Rename members height to text_lines,
7974 width to text_cols, window_height to total_lines, window_width to
7975 total_cols, new_height to new_text_lines, new_width to
7976 new_text_cols. All uses changed.
7977 (struct frame): New members which consolidate common members of
7978 x_output, w32_output, and mac_output structures: left_pos,
7979 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
7980 win_gravity, size_hint_flags, border_width, internal_border_width,
7981 line_height, fringe_cols, left_fringe_width, right_fringe_width,
7982 want_fullscreen. All uses changed.
7983 (struct frame): New member column_width contaning the canonical
7984 column width, analogue to line_height. All uses changed.
7985 (struct frame): Rename members scroll_bar_pixel_width to
7986 config_scroll_bar_width, and scroll_bar_cols to
7987 config_scroll_bar_cols. All uses changed.
7988 (struct frame): New member scroll_bar_actual_width which
7989 consolidates and renames the vertical_scroll_bar_extra member of
7990 x_output, w32_output, and mac_output structures. All uses changed.
cab27d04 7991 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
0416870b
KS
7992 from x/w32/macterm.h files. All uses changed. Also change code
7993 which referred to f->output_data...->pixel_height.
cab27d04 7994 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
f63fd14e 7995 from x/w32/macterm.h files. All uses changed. Also change code
0416870b 7996 which referred to f->output_data...->pixel_width.
cab27d04 7997 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
0416870b 7998 Also change code which referred to f->height.
cab27d04 7999 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
0416870b
KS
8000 Also change code which referred to f->width.
8001 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
8002 to update new_text_lines and new_text_cols members directly.
cab27d04 8003 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
0416870b 8004 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
cab27d04 8005 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
0416870b
KS
8006 FRAME_SCROLL_BAR_COLS. All uses changed.
8007 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
cab27d04 8008 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
0416870b
KS
8009 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
8010 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
8011 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
cab27d04
SM
8012 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
8013 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
8014 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
0416870b
KS
8015 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
8016 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
cab27d04
SM
8017 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
8018 Unconditionally return line_height member (it now has proper value
8019 also for non-window frames).
8020 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
0416870b
KS
8021 return new column_width member (rather than the default font width).
8022 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
cab27d04 8023 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
0416870b
KS
8024 from x/w32/macterm.h files. Unconditionally return corresponding
8025 member of frame structure (they now have proper values also for
8026 non-window frames).
cab27d04 8027 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
0416870b
KS
8028 Calculate return value from left and right widths.
8029 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
8030 internal_border_width member (has proper value for non-window frame).
cab27d04
SM
8031 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
8032 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
8033 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
8034 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
8035 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
0416870b 8036 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 8037 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
0416870b 8038 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 8039 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
0416870b 8040 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
cab27d04 8041 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
0416870b 8042 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
cab27d04 8043 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
0416870b 8044 consolidated from x/mac/w32term.h.
cab27d04 8045 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
0416870b 8046 consolidated from x/mac/w32term.h.
cab27d04 8047 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
0416870b 8048 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
cab27d04 8049 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
0416870b
KS
8050 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
8051
8052 * window.h (struct window): Rename members left to left_col,
8053 top to top_line, height to total_lines, width to total_cols,
8054 left_margin_width to left_margin_cols, right_margin_width to
8055 right_margin_cols, orig_height to orig_total_lines, orig_top to
8056 orig_top_line. All uses changed.
8057 (struct window): New members left_fringe_width, right_fringe_width,
8058 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
8059 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
8060 New macros primarily used to simplify other macros.
8061 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
8062 referred to XINT (w->width).
8063 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
8064 referred to XINT (w->height).
8065 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
8066 referred to XINT (w->width) * canon_x_unit.
8067 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
8068 referred to XINT (w->height) * canon_y_unit.
8069 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
8070 referred to XINT (w->left).
cab27d04 8071 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
0416870b
KS
8072 all uses and code that referred to XINT (w->left) + XINT (w->width).
8073 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
8074 referred to XINT (w->top).
8075 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
8076 referred to XINT (w->top) + XINT (w->height).
8077 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
8078 referred to XINT (w->left) * canon_x_unit.
8079 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
8080 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
8081 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
8082 referred to XINT (w->top) * canon_y_unit.
8083 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
8084 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
8085 (WINDOW_LEFTMOST_P): New macro.
cab27d04 8086 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
0416870b 8087 All uses changed.
cab27d04 8088 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
0416870b 8089 All uses changed.
cab27d04 8090 (WINDOW_BOX_LEFT_EDGE_X): Rename from
0416870b
KS
8091 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
8092 Do not exclude left fringe width.
cab27d04 8093 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
0416870b
KS
8094 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
8095 Do not exclude fringe widths.
8096 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
8097 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
8098 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
8099 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
8100 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
8101 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
8102 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
8103 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
8104 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
8105 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
8106 New macros. Change code which referenced corresponding
8107 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
8108 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
8109 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
8110 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
8111 allow per-window scroll-bar settings.
8112 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
8113 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
8114 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
8115 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
8116 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
8117 FRAME_SCROLL_BAR_WIDTH.
8118 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 8119 (WINDOW_SCROLL_BAR_AREA_X): New macros.
cab27d04 8120 (WINDOW_HEADER_LINE_HEIGHT): Rename from
0416870b 8121 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
cab27d04 8122 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
0416870b 8123 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
cab27d04 8124 (WINDOW_BOX_TEXT_HEIGHT): Rename from
0416870b
KS
8125 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
8126 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
8127 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
cab27d04
SM
8128 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
8129 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
0416870b 8130 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
cab27d04 8131 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
0416870b
KS
8132 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
8133 (window_from_coordinates): Update prototype.
8134 (Fset_window_buffer): Update EXFUN.
8135 (set_window_buffer): Update prototype.
9018a88e 8136
0416870b 8137 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 8138 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
8139 changed.
8140 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
8141 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
8142 internal_border_width is now set to 0 for non-window frames.
8143 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
8144 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
8145 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
8146 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
8147 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
8148 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
8149 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
8150 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
8151 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 8152 Move to window.h and renamed [see window.h changes].
0416870b
KS
8153 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
8154 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
8155 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
8156 Use WINDOW_TOTAL_LINES.
0416870b
KS
8157 (frame_update_line_height): Remove prototype.
8158
8159 * buffer.h (struct buffer): Rename members measured in columns:
8160 left_margin_width to left_margin_cols, right_margin_width to
8161 right_margin_cols. All uses changed.
8162 New members left_fringe_width, right_fringe_width,
8163 fringes_outside_margins for per-buffer fringe settings.
8164 New members scroll_bar_width and vertical_scroll_bar_type for
8165 per-buffer scroll bar settings.
8166
8167 * buffer.c (init_buffer_once): Set buffer_defaults and
8168 buffer_local_flags for new buffer-local variables
8169 left_fringe_width, right_fringe_width, fringes_outside_margins,
8170 scroll_bar_width, and vertical_scroll_bar_type.
8171 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
8172 default-* variables for them.
8173
8174 * dispnew.c: Make (many) trivial substitutions for renamed and
8175 new macros in dispextern.h, frame.h and window.h.
8176 (mode_line_string): No need to adjust width for mode lines, as it
8177 is already adjusted by the caller.
8178 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 8179
0416870b
KS
8180 * frame.c: Make (many) trivial substitutions for renamed and
8181 new macros in dispextern.h, frame.h and window.h.
8182 (make_frame): Initialize left_fringe_width, right_fringe_width,
8183 fringe_cols, scroll_bar_actual_width, border_width,
8184 internal_border_width, column_width, line_height, x_pixels_diff,
8185 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
8186 members with values suitable for a non-window frames.
8187
8188 * gtkutil.c: Make (many) trivial substitutions for renamed and
8189 new macros in dispextern.h, frame.h and window.h.
9018a88e 8190
0416870b
KS
8191 * indent.c: Make (few) trivial substitutions for renamed and
8192 new macros in dispextern.h, frame.h and window.h.
8193
8194 * keyboard.c: Make (many) trivial substitutions for renamed and
8195 new macros in dispextern.h, frame.h and window.h.
8196 (make_lispy_event): Use window positions returned from
8197 window_from_coordinates when constructing the lisp event for
8198 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
8199 (incorrect) values locally.
8200 (make_lispy_movement): Use window positions returned from
8201 window_from_coordinates when constructing the lisp event, rather
8202 than calculating (incorrect) values locally.
8203
8204 * scroll.c: Make (some) trivial substitutions for renamed and
8205 new macros in dispextern.h, frame.h and window.h.
8206
8207 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
8208 scroll-bars.
8209
8210 * sysdep.c: Make (few) trivial substitutions for renamed and
8211 new macros in dispextern.h, frame.h and window.h.
8212
8213 * term.c: Make (some) trivial substitutions for renamed and
8214 new macros in dispextern.h, frame.h and window.h.
8215
8216 * widget.c: Make (few) trivial substitutions for renamed and
8217 new macros in dispextern.h, frame.h and window.h.
8218
8219 * window.c: Make (many) trivial substitutions for renamed and
8220 new macros in dispextern.h, frame.h and window.h.
8221 (make_window): Initialize new members
8222 left_margin_cols, right_margin_cols, left_fringe_width,
8223 right_fringe_width, fringes_outside_margins, scroll_bar_width,
8224 and vertical_scroll_bar_type.
cab27d04 8225 (coordinates_in_window): Adapt to new fringe/margin positions
9018a88e 8226 and per-window fringes and scroll-bars.
0416870b 8227 Fix bug related to incorrectly adjusting coordinates by
9018a88e 8228 frame's internal_border_width (the effect normally negible since
0416870b
KS
8229 the internal_border_width is typically 0 or 1 pixel, but very
8230 noticeable for an internal_border_width of e.g. 25 pixels).
8231 Upon successful return (other than ON_NOTHING), the coordinates
8232 are now always properly converted to window relative for the
8233 given display element.
8234 (window_from_coordinates): Add new parameters wx and wy to
8235 return the window relative x and y position in the returned
8236 window and part. A null arg means, don't return the position.
8237 All callers changed.
8238 (adjust_window_margins): New function which may reduce the width
8239 of the display margins if a window's text area is too small after
8240 resizing or splitting windows.
8241 (size_window): Fix bug that did not account for display margin
8242 widths when checking the minimum width of a window; use
8243 adjust_window_margins.
8244 (set_window_buffer): Call Fset_window_fringes and
8245 Fset_window_scroll_bars to setup per-window elements.
8246 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
8247 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
8248 (e.g. after splitting a window or resizing the frame).
8249 All callers changed.
0416870b
KS
8250 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
8251 (Fsplit_window): Duplicate original window's display margin,
8252 fringe, and scroll-bar settings; then call Fset_window_buffer with
8253 KEEP_MARGINS non-nil. This fixes a bug which caused a split
8254 window to only preserve the display margins in one of the windows.
c4b8aebc 8255 When splitting horizontally, call adjust_window_margins on both
0416870b 8256 windows to ensure that the text area of the new windows is non too
f9711de4 8257 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
8258 width of the split window was less than the width of the display
8259 margins.
cab27d04 8260 (window_box_text_cols): Rename from window_internal_width.
9018a88e 8261 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
8262 Fix bug that caused vertical separator to be subtracted also on
8263 window frames. Fix another bug that did not reduce the returned
8264 value by the columns used for display margins.
8265 (window_scroll_line_based): Fix bug related to scrolling too much
8266 when display margins are present (implicitly fixed by the fix to
8267 window_box_text_cols).
8268 (scroll_left, scroll_right): Fix bug related to scrolling too far
8269 by default when display margins are present (implicitly fixed by
8270 the fix to window_box_text_cols).
8271 (struct saved_window): Rename members left to left_col, top to
8272 top_line, width to total_cols, height to total_lines, orig_top to
8273 orig_top_line, orig_height to orig_total_lines. All uses changed.
8274 New members left_margin_cols, right_margin_cols,
8275 left_fringe_width, right_fringe_width, fringes_outside_margins,
8276 scroll_bar_width, and vertical_scroll_bar_type for saving
8277 per-window display elements.
8278 (Fset_window_configuration): Restore display margins, fringes,
8279 and scroll bar settings. This fixes a bug which caused display
8280 margins to be discarded when saving and restoring a window
8281 configuration.
8282 (save_window_save): Save display margins, fringes, and scroll bar
8283 settings. This fixes a bug which caused display margins to be
8284 discarded when saving and restoring a window configuration.
8285 (Fset_window_margins): Do nothing if display margins are not
8286 really changed. Otherwise, call adjust_window_margins to ensure
8287 the text area doesn't get too narrow. This fixes a bug which
f9711de4 8288 could cause Emacs to trap if setting display margins wider than
0416870b
KS
8289 the width of the window.
8290 (Fset_window_fringes): New defun to allow user to specifically set
8291 this window's fringe widths and position vs. display margins.
cab27d04 8292 (Fwindow_fringes): New defun to return window's actual fringe settings.
0416870b
KS
8293 (Fset_window_scroll_bars): New defun to allow user to specifically
8294 set this window's scroll bar width and position.
8295 (Fwindow_scroll_bars): New defun to return window's actual scroll
8296 bar settings.
8297 (compare_window_configurations): Also compare display margins,
8298 fringes, and scroll bar settings.
8299 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
8300
8301 * xdisp.c: Make (many) trivial substitutions for renamed and
8302 new macros in dispextern.h, frame.h and window.h.
8303 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 8304 and new fringe vs. display margin position. Note that returned
0416870b
KS
8305 value is no longer guaranteed to be a whole multiple of the frame
8306 column width, since per-window fringes may now be any width.
8307 (window_box_left_offset): New function like window_box_left, but
8308 value is relative to left border of window (rather than frame).
8309 (window_box_right_offset): New function like window_box_right,
8310 but value is relative to left border of window.
8311 (window_box_left): Adapt to per-window fringes and scroll bars,
8312 and new fringe vs. display margin position. Simplify by using
8313 WINDOW_LEFT_EDGE_X and window_box_left_offset.
8314 (window_box): Allow null args for unnecessary return values;
8315 change/simplify relevant callers.
8316 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
8317 and new fringe vs. display margin position.
8318 Use window_box_left_offset and window_box_right_offset
0416870b 8319 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
8320 scroll bars, and new fringe vs. display margin position.
8321 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
8322 (draw_fringe_bitmap): Rework to handle per-window fringes and new
8323 fringe vs. display margin position.
8324 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
8325 (redisplay_window): Adapt to per-window scroll bars.
8326 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
8327 bars, and new fringe vs. display margin position.
8328 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 8329 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
8330 bars, and new fringe vs. display margin position. Fix bug which
8331 increased total width of full_width rows by width of scroll bars
8332 although window's total width already includes that.
8333 (x_fix_overlapping_area): Simplify using window_box_left_offset.
8334 (expose_area): Simplify using window_box_left_offset.
8335 (x_draw_vertical_border): Handle per-window scroll bar settings,
8336 mixing windows with left, right and no scroll bars.
8337
8338 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
8339 where it's used in x_list_fonts (for clarity).
8340 (frame_update_line_height): Remove unused function; functionality
8341 is now done directly when setting the default font in x_set_font.
8342
8343 * xfns.c: Make (many) trivial substitutions for renamed and
8344 new macros in dispextern.h, frame.h and window.h.
8345
8346 * xmenu.c: Make (some) trivial substitutions for renamed and
8347 new macros in dispextern.h, frame.h and window.h.
8348
8349 * xterm.h (struct x_output): Move members left_pos, top_pos,
8350 border_width, pixel_height, pixel_width, line_height,
8351 internal_border_width, vertical_scroll_bar_extra,
8352 left_fringe_width, right_fringe_width, fringe_cols,
8353 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
8354 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
8355 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
8356 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
8357 (PIXEL_WIDTH, PIXEL_HEIGHT)
8358 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 8359 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
8360 frame.h and renamed [see frame.h changes].
8361 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
8362 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 8363 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 8364 and renamed [see frame.h changes].
9018a88e 8365
0416870b
KS
8366 * xterm.c: Make (several) trivial substitutions for renamed and
8367 new macros in dispextern.h, frame.h and window.h.
cab27d04 8368 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
8369 (scroll_run): Adapt to new fringe position.
8370 (glyph_rect): Use window coordinates returned from
8371 window_from_coordinates rather than frame_to_window_pixel_xy.
8372 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
8373 scroll-bars.
8374 (handle_one_xevent): Simplify a USE_GTK conditional.
8375 (x_clip_to_row): Remove superfluous whole_line_p arg and code
8376 (fringes are now inside margins, i.e. always in the clipping area).
8377 All callers changed.
8378 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
8379 directly, then call compute_fringe_widths. Don't call
8380 frame_update_line_height.
8381
8382 * w32term.h (struct w32_output): Move members left_pos, top_pos,
8383 border_width, pixel_height, pixel_width, line_height,
8384 internal_border_width, vertical_scroll_bar_extra,
8385 left_fringe_width, right_fringe_width, fringe_cols,
8386 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
8387 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
8388 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
8389 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
8390 (PIXEL_WIDTH, PIXEL_HEIGHT)
8391 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 8392 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
8393 frame.h and renamed [see frame.h changes].
8394 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
8395 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 8396 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 8397 and renamed [see frame.h changes].
9018a88e 8398
0416870b
KS
8399 * w32term.c: Make (several) trivial substitutions for renamed and
8400 new macros in dispextern.h, frame.h and window.h.
cab27d04 8401 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
8402 (glyph_rect): Use window coordinates returned from
8403 window_from_coordinates rather than frame_to_window_pixel_xy.
8404 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
8405 scroll-bars.
8406 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
8407 (fringes are now inside margins, i.e. always in the clipping area).
8408 All callers changed.
8409 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
8410 directly, then call compute_fringe_widths. Don't call
8411 frame_update_line_height.
8412
8413 * w32console.c: Make (few) trivial substitutions for renamed and
8414 new macros in dispextern.h, frame.h and window.h.
8415
8416 * w32fns.c: Make (many) trivial substitutions for renamed and
8417 new macros in dispextern.h, frame.h and window.h.
8418
8419 * w32menu.c: Make (few) trivial substitutions for renamed and
8420 new macros in dispextern.h, frame.h and window.h.
8421
8422 * macterm.h (struct mac_output): Move members left_pos, top_pos,
8423 border_width, pixel_height, pixel_width, line_height,
8424 internal_border_width, vertical_scroll_bar_extra,
8425 left_fringe_width, right_fringe_width, fringe_cols,
8426 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
8427 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
8428 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
8429 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
8430 (PIXEL_WIDTH, PIXEL_HEIGHT)
8431 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 8432 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
8433 frame.h and renamed [see frame.h changes].
8434 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
8435 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 8436 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 8437 and renamed [see frame.h changes].
9018a88e 8438
0416870b
KS
8439 * macterm.c: Make (several) trivial substitutions for renamed and
8440 new macros in dispextern.h, frame.h and window.h.
cab27d04 8441 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
8442 (glyph_rect): Use window coordinates returned from
8443 window_from_coordinates rather than frame_to_window_pixel_xy.
8444 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
8445 scroll-bars.
8446 (x_clip_to_row): Remove superfluous whole_line_p arg and code
8447 (fringes are now inside margins, i.e. always in the clipping area).
8448 All callers changed.
8449 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
8450 directly, then call compute_fringe_widths. Don't call
8451 frame_update_line_height.
8452
8453 * macfns.c: Make (several) trivial substitutions for renamed and
8454 new macros in dispextern.h, frame.h and window.h.
9018a88e 8455 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
8456
8457 * macmenu.c: Make (few) trivial substitutions for renamed and
8458 new macros in dispextern.h, frame.h and window.h.
8459
8460 * msdos.h (struct x_output): Remove members left_pos, top_pos,
8461 and line_height, and use corresponding new members in struct
8462 frame. All uses changed.
8463 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
8464 superseeded by corresponding macros in frame.h.
8465
8466 * msdos.c: Make (several) trivial substitutions for renamed and
8467 new macros in dispextern.h, frame.h and window.h.
8468 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 8469 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
8470 (internal_terminal_init): No need to initialize line_height here;
8471 it now defaults to 1.
8472
9018a88e
SM
84732003-05-24 Stefan Monnier <monnier@cs.yale.edu>
8474
8475 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
8476 dropping `down' events.
8477
016bd3c0
AS
84782003-05-24 Andreas Schwab <schwab@suse.de>
8479
8480 * coding.c (find_safe_codings): Fix last change.
8481
4dacadcc
TTN
84822003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
8483
8484 * xfns.c (x_window): Fix typo from 2003-05-21 change.
8485
319830ce
SM
84862003-05-23 Stefan Monnier <monnier@cs.yale.edu>
8487
9018a88e
SM
8488 * xdisp.c (display_mode_element): Increase max depth.
8489 Simplify the error handling code. Use a different error string
8490 for the case where we hit the depth limit.
8491
319830ce
SM
8492 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
8493
8494 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
8495
84962003-05-21 Stefan Monnier <monnier@cs.yale.edu>
8497
8498 * intervals.c (get_local_map): Don't get char-property of previous
8499 point any more: get_pos_property already does it and better.
8500
c67de8ba
DL
85012003-05-21 Dave Love <fx@gnu.org>
8502
8503 [Merged from unicode branch.]
8504
8505 * xfns.c (x_window, x_window): Use use_xim.
8506
8507 * xterm.c (use_xim): Initialize.
8508 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
8509 (x_term_init): Maybe set use_xim.
8510
8511 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
8512
edd3ff1d
JR
85132003-05-21 Jason Rumney <jasonr@gnu.org>
8514
8515 * unexw32.c (_start): Remove _fmode initialization.
8516
8517 * emacs.c (main) [WINDOWSNT]: Move it here.
8518
463f55ee
DL
85192003-05-20 Dave Love <fx@gnu.org>
8520
8521 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
8522
af253914
RS
85232003-05-19 Richard M. Stallman <rms@gnu.org>
8524
8525 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
8526 as value for QCfont attribute.
8527 (realize_default_face): lface should already exist; crash if not.
8528 Specify 0 for FORCE_P when calling set_lface_from_font_name.
8529
8530 * frame.c (Fignore_event): Doc fix.
8531
1d211019
KH
85322003-05-19 Kenichi Handa <handa@m17n.org>
8533
8534 * coding.c (decode_coding_string): Handle post-read-conversion
8535 even if the coding doesn't require decoding.
8536
4dd68254
RS
85372003-05-18 Richard M. Stallman <rms@gnu.org>
8538
8539 * callproc.c (Fcall_process_region): Doc fix.
8540
14d87dc9
SM
85412003-05-17 Stefan Monnier <monnier@cs.yale.edu>
8542
deca5d96
SM
8543 * lread.c (Fload): Print a message if package is obsolete.
8544
14d87dc9
SM
8545 * window.c (Fselect_window): Add optional `norecord' arg.
8546 (select_window_1): Fold into Fselect_window.
8547 (select_window_norecord): New function.
8548 (temp_output_buffer_show): Use it. Preserve current buffer.
8549
8550 * window.h (Fselect_window): Update declaration.
8551
8552 * window.c (delete_window, Fother_window, Fset_window_configuration):
8553 * minibuf.c (read_minibuf):
8554 * macterm.c (x_new_focus_frame):
8555 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
8556 * callint.c (Fcall_interactively):
8557 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
8558
8559 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
8560
78f52183
DK
85612003-05-17 David Kastrup <dak@gnu.org>
8562
8563 * process.c (read_process_output): Back out change from 2003-03-09.
8564
14d87dc9
SM
85652003-05-17 Stefan Monnier <monnier@cs.yale.edu>
8566
8567 * editfns.c (get_pos_property): Don't assume that `object' = nil.
8568
8569 * textprop.c (text_property_stickiness): New arg `buffer'.
8570
8571 * intervals.h (text_property_stickiness): New arg `buffer'.
8572 (get_pos_property): Declare.
8573
8574 * intervals.c (get_local_map): Use get_pos_property, to obey
8575 stickiness and empty overlays.
8576 (create_root_interval, graft_intervals_into_buffer): Use BEG.
8577 (merge_properties, intervals_equal, merge_properties_sticky):
8578 Use XCAR, XCDR.
8579 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
8580
1fd1cc2f
RS
85812003-05-17 Richard M. Stallman <rms@gnu.org>
8582
4f9f637a
RS
8583 * minibuf.c (read_minibuf): If buffer is empty, record the default
8584 in the history.
8585 (Fminibuffer_complete_word): When deleting the overlap, take account
8586 of its real position.
8587
8588 * fns.c (map_char_table): Fix previous change.
8589
1fd1cc2f
RS
8590 * syntax.c (find_defun_start):
8591 When open_paren_in_column_0_is_defun_start,
8592 return beginning of buffer.
8593
8594 * lisp.h (map_char_table): Declare added arg.
8595
8596 * fns.c (map_char_table): New arg TABLE gets the master table.
8597 All calls changed.
8598 Process default and inheritance, resorting to Faref if necessary.
8599
8600 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
8601 (Faccessible_keymaps): Pass new arg to map_char_table.
8602
8603 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
8604
8605 * casetab.c (set_case_table): Pass new arg to map_char_table.
8606
8607 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
8608
8609 * lisp.h (specbinding_func): New typedef.
8610 (struct specbinding): Use specbinding_func, to put the `volatile'
8611 in the right place.
8612
8613 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
8614 to avoid GCC warning.
14d87dc9 8615
b6189c3b 86162003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 8617
14d87dc9 8618 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 8619
35fb885d
SM
86202003-05-15 Stefan Monnier <monnier@cs.yale.edu>
8621
8622 * keyboard.c (apply_modifiers): Don't fill the other cache.
8623
9a274fbd
SM
86242003-05-14 Stefan Monnier <monnier@cs.yale.edu>
8625
c55b5fad
SM
8626 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
8627
9a274fbd
SM
8628 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
8629 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
8630 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
8631 (Fset_window_configuration, Fcurrent_window_configuration)
8632 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
8633 (Fpos_visible_in_window_p, mark_window_cursors_off)
8634 (window_internal_height, window_internal_width, Frecenter)
8635 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
8636 (replace_buffer_in_all_windows, init_window_once, init_window)
8637 (syms_of_window, keys_of_window): Move from lisp.h.
8638 * lisp.h: Move window.c declarations to window.h.
8639
8640 * bytecode.c: Include window.h.
8641 * emacs.c: Include window.h.
8642
14d87dc9 8643 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
8644 (keyremap): Add `parent' field.
8645 (keyremap_step): Use it. Remove `parent' argument.
8646 (read_key_sequence): Setup and use the new `parent' field.
8647
fd93e331
SM
86482003-05-11 Stefan Monnier <monnier@cs.yale.edu>
8649
8650 * keyboard.c (adjust_point_for_property): Ensure termination.
8651
1c4001a1
SM
86522003-05-10 Stefan Monnier <monnier@cs.yale.edu>
8653
8654 * keyboard.c (follow_key): Remove dead variable `did_meta'.
8655 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
8656 duplicated handling of function-key-map and key-translation-map
8657 in read_key_sequence.
8658 (read_key_sequence): Use them.
8659
8660 * keyboard.c (adjust_point_for_property): Try harder to move point
8661 to the non-sticky end of an invisible property.
8662
8663 * xdisp.c (single_display_prop_intangible_p): Make `space' display
8664 property intangible as well.
8665
780379b1
AS
86662003-05-10 Andreas Schwab <schwab@suse.de>
8667
8668 * xmenu.c (single_menu_item): Change last parameter to void* to
8669 avoid warning.
8670
ca2de342
RS
86712003-05-09 Richard M. Stallman <rms@gnu.org>
8672
8673 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
8674 Bind Qinhibit_modification_hooks to t so there will be no GC.
8675 Rename local `tem' to `save_deactivate_mark'.
8676
8677 * eval.c (specpdl_ptr): Declare volatile.
8678 (unbind_to): Copy the whole binding and decrement specpdl_ptr
8679 before doing the work of unbinding it.
8680
8681 * lisp.h (struct specbinding): Declare elements volatile.
8682 (specpdl_ptr): Declare volatile.
8683
8684 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
8685
8686 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
8687 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
8688
347003be
DL
86892003-05-08 Dave Love <fx@gnu.org>
8690
8691 * coding.c (Vlast_coding_system_used): Doc fix.
8692
5adcec23
JR
86932003-05-07 Jason Rumney <jasonr@gnu.org>
8694
8695 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
8696 when system does not support them.
8697
5fe3b8a4
SM
86982003-05-05 Stefan Monnier <monnier@cs.yale.edu>
8699
8700 * fileio.c (Qwrite_region_annotate_functions): New var.
8701 (build_annotations): Use it to process the global part of the hook.
8702 (syms_of_fileio): Init and staticpro it.
8703
8704 * keyboard.c (safe_run_hooks_error): Display a message instead of
8705 silently ignoring the error.
8706
87072003-05-03 Stefan Monnier <monnier@cs.yale.edu>
8708
8709 * keyboard.c (input_available_signal): Mark static.
8710 (menu_bar_items): Use map_keymap.
8711 (menu_bar_one_keymap): Remove.
8712 (menu_bar_item): Adjust arglist (for use in map_keymap).
8713 Properly hide a second binding when not both are keymaps.
8714
8715 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
8716 (single_keymap_panes): Use it and map_keymap.
8717 (single_menu_item): Use skp as well.
8718
8719 * keymap.h (map_keymap_function_t): New type.
8720 (map_keymap): Declare.
8721
8722 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
8723 (map_keymap_call, Fmap_keymap): New functions.
8724 (syms_of_keymap): Defsubr map-keymap.
8725
4b1b4443
JD
87262003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8727
8728 * gtkutil.c (create_dialog, make_widget_for_menu_item)
8729 (make_menu_item, create_menus, xg_update_menu_item): Don't call
8730 ..._with_mnemonic functions for menu items.
8731
1f816871
KH
87322003-05-01 Kenichi Handa <handa@m17n.org>
8733
8734 * coding.c (coding_system_accept_latin_extra_p): Delete this
8735 function.
8736 (find_safe_codings): Pay attention to
8737 the property tranlsation-table-for-encode of each codings.
8738 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
8739
5ed6ba5b
SM
87402003-05-01 Stefan Monnier <monnier@cs.yale.edu>
8741
8742 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
8743
32c06229
SM
87442003-04-30 Stefan Monnier <monnier@cs.yale.edu>
8745
8746 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
8747
8748 * lisp.h (CHECK): Wrap args in parenthesis.
8749 (specbind): Fix doc: symbol = Qnil is not supported any more.
8750
8751 * bytecode.c (Fbyte_code) <unwind-protect>:
8752 Use Fprogn rather than 0 and Qnil.
8753
8754 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
8755 `double', and `triple' modifiers as well.
8756
ed3c3314
RS
87572003-04-30 Richard M. Stallman <rms@gnu.org>
8758
8759 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
8760
8761 * alloc.c (abort_on_gc): New variable.
8762 (Fgarbage_collect): Abort if abort_on_gc is set.
8763
8764 * lisp.h (abort_on_gc): Add decl.
8765
8766 * eval.c (Fsignal): Clear abort_on_gc.
8767
8768 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 8769 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
8770
8771 * xdisp.c (move_it_vertically_backward): Do the final big else
8772 even if nlines is 0.
8773
8774 * xdisp.c (redisplay_internal): Finish the per-frame loop
8775 even if redisplay is suspended by input.
8776
0b325c12
AC
87772003-04-24 Andrew Choi <akochoi@shaw.ca>
8778
8779 * macterm.c (x_list_fonts): Return all fonts that match if
8780 maxnames = -1.
8781
4e837cd0
KH
87822003-04-25 Kenichi Handa <handa@m17n.org>
8783
8784 * syntax.c (skip_chars): Fix previous change.
8785
9af7511a
KH
87862003-04-24 Kenichi Handa <handa@m17n.org>
8787
8788 * syntax.c (skip_chars): Make the code faster by using the common
8789 technique of *p, *stop, and *endp.
8790
e3b2c21f
JD
87912003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8792
8793 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 8794 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
8795 being updated.
8796
32c06229
SM
87972003-04-19 Stefan Monnier <monnier@cs.yale.edu>
8798
8799 * eval.c (Fapply): Undo last change and add a comment about why.
8800
c6464167
MB
88012003-04-18 Miles Bader <miles@gnu.org>
8802
8803 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
8804 pickier PARSE_MULTIBYTE_SEQ.
8805
e509f168
SM
88062003-04-17 Stefan Monnier <monnier@cs.yale.edu>
8807
8808 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
8809 Use XCDR, XCAR, CONSP.
8810 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
8811 (Fapply): Remove unnecessary GCPRO.
8812
8813 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
8814
8815 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
8816
8817 * buffer.h: Don't hardcode BEG==1.
8818
8819 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
8820
5ceea398
RS
88212003-04-16 Richard M. Stallman <rms@gnu.org>
8822
8823 * xdisp.c (try_window, try_window_reusing_current_matrix):
8824 When at end of window, set window_end_pos to Z-ZV.
8825
8826 * buffer.c (Foverlay_recenter): Doc fix.
8827
e509f168
SM
88282003-04-14 Stefan Monnier <monnier@cs.yale.edu>
8829
8830 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
8831
d243e605
AC
88322003-04-14 Andrew Choi <akochoi@shaw.ca>
8833
8834 * macterm.c (mac_check_for_quit_char): Don't check more often than
8835 once a second.
8836
6901b111
SM
88372003-04-11 Stefan Monnier <monnier@cs.yale.edu>
8838
8839 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
8840 specially, so that they can't hide an implicit switch-frame event.
8841 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
8842 (head_table): Use switch-frame as event_kind for select-window.
8843 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
8844
8845 * editfns.c (Fformat): Lisp_Object/int mixup.
8846 (format2): Remove unused var numargs.
8847
e301806f 88482003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 8849
6901b111 8850 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
8851 (Qafter_insert_file_set_coding): New variable.
8852 (syms_of_fileio): Initialize and staticpro it. Delete declaration
8853 for after-insert-file-adjust-coding-function.
8854 (Finsert_file_contents): Call Qafter_insert_file_set_coding
8855 instead of Vafter_insert_file_adjust_coding_function.
8856
38914424
KH
88572003-04-11 Kenichi Handa <handa@m17n.org>
8858
8859 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
8860
8861 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
8862 string. Callers changed.
8863
88642003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 8865
6901b111 8866 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 8867 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
8868 (Finsert_file_contents):
8869 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
8870 decode-format.
8871
f979dc05
JD
88722003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8873
8874 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
8875 get GtkAdjustment as widget now is a GtkRange.
8876
8877 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
8878 GtkRange to avoid memory leak.
8879
f8c6b4c2 88802003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 8881
50ebc53d
KH
8882 * xfaces.c (Vface_font_rescale_alist): New variable.
8883 (struct font_name): New member rescale_ratio.
8884 (font_rescale_ratio): New function.
6901b111 8885 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
8886 (better_font_p): On comparing point sized, pay attention to
8887 recale_ratio member of fonts.
8888 (build_scalable_font_name): Reflect font->rescale_ratio in the
8889 font name.
6901b111 8890 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 8891
cb98871c
KH
8892 * lread.c (read1): Before calling index, check if the 2nd
8893 arguemnt is in ASCII range.
8894
4773b8ca
RS
88952003-04-08 Richard M. Stallman <rms@gnu.org>
8896
b0ada147
RS
8897 * fileio.c (Ffile_symlink_p): Doc fix.
8898
8899 * editfns.c (Fformat): Translate positions of text properties
8900 in the format string to apply them to the result.
8901
4773b8ca
RS
8902 * fileio.c (Finsert_file_contents): Doc fix.
8903 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
8904
89052003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 8906
4773b8ca
RS
8907 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
8908
e8f25745 89092003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 8910
e8f25745
ST
8911 * mac.c (init_mac_osx_environment): Switch libexec and bin so
8912 that self-contained application finds libexec files.
8913
f8c6b4c2 89142003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 8915
6901b111
SM
8916 * coding.c (code_convert_region_unwind):
8917 Set Vlast_coding_system_used to the argument.
2310d84c
KH
8918 (code_convert_region): If post-read-conversion function changed
8919 the value of last-coding-sytem, keep the new value in
8920 coding->symbol so that it won't be overridden.
8921 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
8922 (coding_system_accept_latin_extra_p): New function.
8923 (find_safe_codings): Pay attention to characters registered in
8924 latin-extra-code-table.
2310d84c 8925
39c9a034
TTN
89262003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
8927
8928 * Makefile.in (md5.o): Add missing dependency info.
8929
eb67c5d6
RS
89302003-04-06 Richard M. Stallman <rms@gnu.org>
8931
8932 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
8933
8934 * marker.c (verify_bytepos): New function.
8935
8936 * intervals.c (set_intervals_multibyte_1): When becoming
8937 multibyte, adjust right and left child sizes to a whole set of
8938 characters. If an interval gets zero total-length, delete it.
8939 If an interval consists of just its children, delete one of them.
8940
8941 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
8942 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 8943
eb67c5d6
RS
8944 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
8945 All calls deleted.
8946 (lisp_malloc): Do the work here directly.
8947
b1f81fc5
JB
89482003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
8949
8950 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
8951 char tables.
8952
89532003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
8954
8955 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
8956 destructively change "%S" to "%s".
8957
774666fb
MB
89582003-04-03 Miles Bader <miles@gnu.org>
8959
8960 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
8961 always set.
8962
19c37f01
DL
89632003-04-01 Dave Love <fx@gnu.org>
8964
8965 * xfns.c (xpm_lookup_color): Grok "opaque".
8966
2f4b24c3
AC
89672003-03-31 Andrew Choi <akochoi@shaw.ca>
8968
8969 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
8970 parent window ID.
8971
8972 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
8973
8974 * macterm.h (struct mac_output): Define x_pixels_diff and
8975 y_pixels_diff.
b1f81fc5 8976
9443fcf6
JB
89772003-03-31 Juanma Barranquero <lektu@terra.es>
8978
8979 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
8980 blockinput.h and files included from it.
8981
e072891b
KS
89822003-03-31 Kim F. Storm <storm@cua.dk>
8983
8984 The following changes consolidates the common code related to
8985 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
8986 files into frame.c.
9443fcf6 8987
e072891b
KS
8988 * frame.c: Include blockinput.h.
8989 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
8990 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
8991 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
8992 related vars here.
8993 (struct frame_parm_table, frame_parms): New table for describing
8994 frame parameters and their associated Q-variable.
8995 The order of the parameters corresponds to the sequence of the
8996 frame_parm_handlers table in redisplay_interface.
8997 (x_fullscreen_move, x_set_frame_parameters)
8998 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
8999 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
9000 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9001 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
9002 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
9003 Generic functions for processing of frame parameters.
9004 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
9005 (display_x_get_resource, x_get_resource_string): Functions for
9006 generic access to X resources.
9007 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
9008 (x_default_parameter, Fx_parse_geometry): Functions for generic
9009 access to frame parameters.
6901b111
SM
9010 (x_figure_window_size): Generic calculation of frame size.
9011 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
9012 (syms_of_frame): Intern and staticpro frame parameter variables.
9013 Defvar_lisp Vx_resource_class and Vx_resource_name here.
9014 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 9015
e072891b
KS
9016 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
9017 parameter related vars defined in frame.c.
9018 (EMACS_CLASS): Define here.
9019 (enum FULLSCREEN_*): Define here.
9020 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
9021 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
9022 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
9023 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
9024 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
9025 (x_set_visibility, x_set_autoraise, x_set_autolower)
9026 (x_set_unsplittable, x_set_vertical_scroll_bars)
9027 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
9028 (x_figure_window_size): Add prototypes.
9029
9030 * dispextern.h (frame_parm_handler): New typedef.
9031 (struct redisplay_interface): New member frame_parm_handlers.
9032 (enum resource_types): Move declaration here.
9033 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
9034 (x_default_parameter): Add prototypes.
9035
9036 * window.c: Remove extern decl for frame parameter vars.
9037 (change_window_heights): New generic function;
9038 replaces x_change_window_heights. All users changed.
9039
9040 * window.h (change_window_heights): Add prototype.
9041
9042 * xfaces.c: Remove extern decl for frame parameter vars.
9043
9044 * xterm.h (EMACS_CLASS): Remove. Use generic define.
9045 (struct w32_display_info): Fix type of xrdb member.
9046 (enum FULLSCREEN_*): Remove.
9047 Remove prototypes for generic functions (in frame.h).
9048
9049 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
9050 parameters now defined in frame.h and frame.c.
f63fd14e 9051 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
9052 (enum x_frame_parms): Remove (bogus, unused enum).
9053 (check_x_display_info): Make non-static (for frame.c).
9054 (struct x_frame_parm_table, x_frame_parms): Remove.
9055 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
9056 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
9057 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9058 (x_change_window_heights, x_set_autoraise, x_set_autolower)
9059 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
9060 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
9061 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
9062 Remove. Use generic functions instead.
9063 (enum resource_types): Remove.
9064 (x_set_scroll_bar_default_width): New global function (for frame.c).
9065 (Fx_create_frame): Depend on x_figure_window_size to add space for
9066 toolbar and setup size_hint_flags.
9067 (x_frame_parm_handlers): New table for redisplay_interface.
9068 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 9069
e072891b 9070 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 9071 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
9072 (x_redisplay_interface): Add x_frame_parm_handlers member.
9073
9074 * w32gui.h (XrmDatabase): New (dummy) typedef.
9075
9076 * w32term.h (EMACS_CLASS): Remove. Use generic define.
9077 (struct w32_display_info): Fix type of xrdb member.
9078 (enum FULLSCREEN_*): Remove.
9079 (x_fullscreen_adjust): Remove prototype.
9080
9081 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
9082 parameters now defined in frame.h and frame.c.
f63fd14e 9083 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
9084 (enum x_frame_parms): Remove (bogus, unused enum).
9085 (check_x_display_info): Make non-static (for frame.c).
9086 (struct x_frame_parm_table, x_frame_parms): Remove.
9087 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
9088 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
9089 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9090 (x_change_window_heights, x_set_autoraise, x_set_autolower)
9091 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
9092 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
9093 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
9094 Remove. Use generic functions instead.
9095 (enum resource_types): Remove.
9096 (x_set_scroll_bar_default_width): New global function (for frame.c).
9097 (Fx_create_frame): Depend on x_figure_window_size to add space for
9098 toolbar and setup size_hint_flags.
9099 (w32_frame_parm_handlers): New table for redisplay_interface.
9100 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 9101
e072891b
KS
9102 * w32term.c: Remove unnecessary extern declarations.
9103 (x_fullscreen_adjust): Remove. Use generic instead.
9104 (x_redisplay_interface): Add w32_frame_parm_handlers member.
9105
9106 * w32reg.c (x_get_string_resource): Use XrmDatabase.
9107
9108 * macgui.h (XrmDatabase): New (dummy) typedef.
9109
9110 * macterm.h (EMACS_CLASS): Remove.
9111 (struct mac_display_info): Add xrdb member.
9112 (struct mac_output): Add want_fullscreen member.
9113
9114 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
9115 parameters now defined in frame.h and frame.c.
f63fd14e 9116 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
9117 (check_x_display_info): Make non-static (for frame.c).
9118 (struct x_frame_parm_table, x_frame_parms): Remove.
9119 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
9120 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
9121 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9122 (x_change_window_heights, x_set_autoraise, x_set_autolower)
9123 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
9124 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
9125 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
9126 Remove. Use generic functions instead.
9127 (enum resource_types): Remove.
9128 (x_set_scroll_bar_default_width): New global function (for frame.c).
9129 (mac_frame_parm_handlers): New table for redisplay_interface.
9130 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 9131
e072891b
KS
9132 * macterm.c: Remove unnecessary extern declarations.
9133 (x_redisplay_interface): Add mac_frame_parm_handlers member.
9134
3e6a560b
KS
9135 * Makefile.in (frame.o): Add dependency on blockinput.h and files
9136 included from it (atimer.h and systime.h).
9137
7b7b454e
AS
91382003-03-30 Andreas Schwab <schwab@suse.de>
9139
9140 * xdisp.c (x_insert_glyphs): Fix swapped width and height
9141 parameters for shift_glyphs_for_insert.
9142
9143 * macterm.c (x_redisplay_interface): Add missing entry for
9144 draw_vertical_window_border.
9145
beb402de
KG
91462003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
9147
9148 * fileio.c (Fexpand_file_name): In the no-handler case, after
9149 expanding, look again for a handler and invoke it. This is needed
9150 for filenames like "/foo/../user@host:/bar/../baz" -- the first
9151 expansion produces "/user@host:/bar/../baz" which needs to be
9152 expanded again for the finame result "/user@host:/baz".
9153
b676f356
JD
91542003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9155
9156 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
9157 of area to be redrawn for better performance.
9158
3c671a56
SM
91592003-03-28 Stefan Monnier <monnier@cs.yale.edu>
9160
9161 * xterm.c (take_vertical_position_into_account): Remove.
9162 (xt_action_hook): Call set_vertical_scroll_bar if needed.
9163 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
9164 (xm_scroll_callback, x_create_toolkit_scroll_bar)
9165 (x_set_toolkit_scroll_bar_thumb): Simplify.
9166 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
9167 (XTread_socket): Remove unused var.
9168 (x_make_frame_invisible): Replace goto with else.
9169
9170 * xdisp.c (set_vertical_scroll_bar): New fun.
9171 (redisplay_window): Use it.
9172
84f2e615
RS
91732003-03-26 Richard M. Stallman <rms@gnu.org>
9174
9175 * xdisp.c (update_tool_bar): Recompute tool bar if
9176 update_mode_lines is set. Set w->update_mode_line
9177 only if the tool bar contents actually change.
9178 (update_menu_bar): Undo previous change.
9179
70b6104c
JD
91802003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9181
5fd6f727
JD
9182 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
9183 (xg_frame_set_char_size): Calculate scroll bar width before frame
9184 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
9185 (xg_separator_p): Check for all documented separator types.
9186 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
9187 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
9188
70b6104c
JD
9189 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
9190 so tool bar gets updated.
9191
d9b36d19
SM
91922003-03-26 Stefan Monnier <monnier@cs.yale.edu>
9193
9194 * data.c (store_symval_forwarding): Re-instate part of the code
9195 that was deleted with too much enthusiasm.
9196
91972003-03-25 Stefan Monnier <monnier@cs.yale.edu>
9198
9199 * data.c (store_symval_forwarding): Delete special read-only
9200 hack for type == -1, since we now use ->constant instead.
9201 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
9202
9203 * buffer.c (overlays_in): Declare static.
9204 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
9205 `constant' field rather than the variable's `type' field.
9206
365fa1b3
AC
92072003-03-24 Andrew Choi <akochoi@shaw.ca>
9208
9209 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
9210
9211 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
9212
9213 * fns.c [MAC_OSX]: Do not redefine vector.
9214
9215 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
9216
9217 * macgui.h: Remove definition of No_Cursor.
9218
d9b36d19 9219 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
9220
9221 * xdisp.c: Define No_Cursor.
9222 (x_write_glyphs, notice_overwritten_cursor)
9223 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
9224 (note_mouse_highlight): Remove Mac-specific code.
9225 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 9226
c0bcce6f
JPW
92272003-03-24 John Paul Wallington <jpw@gnu.org>
9228
9229 * xdisp.c (redisplay_window): If mini window's buffer is not
9230 empty, then redisplay it like other windows.
9231
a526b96c
KS
92322003-03-23 Kim F. Storm <storm@cua.dk>
9233
9234 * w32term.c (w32_draw_window_cursor): Fix last change.
9235
37ab321e
KH
92362003-03-23 Kenichi Handa <handa@m17n.org>
9237
a526b96c
KS
9238 * alloc.c (make_string_from_bytes, make_specified_string):
9239 Add `const' for the arg CONTENTS.
37ab321e
KH
9240
9241 * lisp.h (make_string_from_bytes, make_specified_string):
9242 Prototypes adjusted.
9243
7863d625
JD
92442003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9245
a526b96c 9246 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 9247
7863d625
JD
9248 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
9249 (XG_SB_RANGE): New define.
9250
9251 * gtkutil.c (xg_fixed_handle_expose): New function.
9252 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
9253 expose events.
9254 (xg_update_scrollbar_pos): Take two more arguments, left and width
9255 of scroll bar including borders.
9256 Clear left and right part outside scroll bar separately as some
9257 themes have bars that are not an even number of pixels.
d9b36d19 9258 Don't set reallocate_redraws, don't call
7863d625
JD
9259 gdk_window_process_all_updates.
9260 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
9261 so no need to change it. Calculate size and value with XG_SB_RANGE.
9262
d9b36d19
SM
9263 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
9264 Pass left and width of scroll bar including borders to
7863d625
JD
9265 xg_update_scrollbar_pos.
9266
af0ad939
TTN
92672003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
9268
9269 * Makefile.in: Make sure space precedes end-of-line backslashes.
9270
b22139fd
KS
92712003-03-22 Kim F. Storm <storm@cua.dk>
9272
9273 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
9274 Add generic versions here. Remove system specific versions
9275 defined elsewhere.
9276
9277 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
9278 Add prototypes.
9279
6e6410cf
KS
9280 * xterm.h (STORE_NATIVE_RECT): New macro.
9281
5c9cc435
KS
92822003-03-21 Kim F. Storm <storm@cua.dk>
9283
00c64fab
SM
9284 * xdisp.c (get_glyph_string_clip_rect):
9285 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
9286
9287 * dispextern.h (struct redisplay_interface): Add active_p
9288 argument to draw_window_cursor member. All uses changed.
9289
acd37560
KS
92902003-03-21 Kim F. Storm <storm@cua.dk>
9291
9292 The following changes consolidate code related to writing and
9293 inserting glyphs, exposing frame, the tool bar, the mouse face,
9294 the output cursor, and help echo from xterm.c, w32term.c and
9295 macterm.c into xdisp.c. It also generalizes the use of the
9296 window_part enum instead of using numeric values throughout.
af0ad939 9297
acd37560
KS
9298 * xdisp.c: Consolidate gui-independent code here.
9299 Include keymap.h.
9300 (Qhelp_echo): Import.
9301 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
9302 (help_echo_string, help_echo_window, help_echo_object)
9303 (previous_help_echo_string, help_echo_pos): Declare here.
9304 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
9305 (estimate_mode_line_height): Define here. Handle windowing
9306 systems directly (without using estimate_mode_line_height_hook).
9307 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
9308 (update_window_cursor, update_cursor_in_window_tree)
9309 (fast_find_position, fast_find_string_pos)
9310 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
9311 (expose_area, expose_line, expose_overlaps, expose_window)
9312 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
9313 declared static as they are only used locally in xdisp.c.
9314 (draw_glyphs): Rename from x_draw_glyphs and make static.
9315 (tool_bar_item_info, notice_overwritten_cursor): Make static.
9316 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
9317 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 9318 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
9319 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
9320 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
9321 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
9322 (note_mouse_highlight, x_clear_window_mouse_face)
9323 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
9324 (x_intersect_rectangles): New generic functions for use by xdisp.c
9325 and GUI front-ends.
9326 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
9327 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
9328
9329 * dispextern.h (Display_Info): Generic typedef for *_display_info.
9330 (NativeRectangle): Generic typedef for rectangle type.
9331 (enum window_part): Move here from window.c.
9332 (struct redisplay_interface): New members flush_display_optional,
9333 define_frame_cursor, clear_frame_area, draw_window_cursor,
9334 draw_vertical_window_border, shift_glyphs_for_insert.
9335 Rename member clear_mouse_face to clear_window_mouse_face.
9336 (estimate_mode_line_height_hook): Remove hook.
9337 (auto_raise_tool_bar_buttons_p): Don't declare extern.
9338 (tool_bar_item_info): Remove prototype.
9339 (help_echo_string, help_echo_window, help_echo_object)
9340 (previous_help_echo_string, help_echo_pos)
9341 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
9342 (x_stretch_cursor_p, output_cursor): Declare extern.
9343 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
9344 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
9345 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
9346 (display_and_set_cursor, set_output_cursor, x_cursor_to)
9347 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
9348 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
9349 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
9350 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
9351 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
9352 Add prototypes.
9353 (mode_line_string, marginal_area_string): Fix prototypes.
9354
9355 * window.c (enum window_part): Move to dispextern.h.
9356 (coordinates_in_window): Use enum window_part member names
9357 instead of numbers to describe return value.
9358 (struct check_window_data): Change part member to window_part.
9359 (check_window_containing): Return window_part unaltered.
9360 (window_from_coordinates): Change part arg from int to enum
9361 window_part. Allow part arg to be null. All users changed.
9362
9363 * window.h (window_from_coordinates): Fix prototype.
9364
9365 * term.c (estimate_mode_line_height): Move to xdisp.c.
9366
9367 * keyboard.c (make_lispy_event): Use enum window_part.
9368
9369 * dispnew.c (mode_line_string, marginal_area_string): Use enum
9370 window_part instead of int in arg list. Users changed.
9371
9372 * xterm.h (No_Cursor): Declare as None for X.
9373 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 9374
acd37560
KS
9375 * xterm.c: Remove consolidated defines and code.
9376 (BETWEEN): Remove unused macro.
9377 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
9378 (x_define_frame_cursor, x_clear_frame_area)
9379 (x_draw_window_cursor): New X-specific functions for RIF.
9380 (x_redisplay_interface): Add new members.
9381
9382 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
9383
9384 * w32term.h (struct w32_output): Remove cross_cursor member.
9385
9386 * w32term.c: Remove consolidated defines and code.
9387 (BETWEEN): Remove unused macro.
9388 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
9389 (w32_define_frame_cursor, w32_clear_frame_area)
9390 (w32_draw_window_cursor): New W32-specific functions for RIF.
9391 (w32_redisplay_interface): Add new members.
9392
a64387ee 9393 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
9394 (XRectangle): Add X compatible rectangle type.
9395 (NativeRectangle): Declare as RECT for W32.
9396 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
9397
9398 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
9399
9400 * w32console.c: Remove consolidated defines and code.
af0ad939 9401
acd37560
KS
9402 * msdos.h (Display_Info): Add generic typedef.
9403
9404 * msdos.c: Remove consolidated defines and code.
9405 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
9406
9407 * macterm.h (struct mac_output): Replace member cross_cursor by
9408 hand_cursor.
9409 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
9410
9411 * macterm.c: Remove consolidated defines and code.
9412 (BETWEEN): Remove unused macro.
9413 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
9414 (mac_define_frame_cursor, mac_clear_frame_area)
9415 (mac_draw_window_cursor): New Mac-specific functions for RIF.
9416 (x_redisplay_interface): Add new members.
9417
9418 * macgui.h (No_Cursor): Define as 0 for Mac.
9419 (XRectangle): Add X compatible rectangle type.
9420 (NativeRectangle): Declare as Rect for Mac.
9421 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
9422
204ccab1
KS
9423 * macfns.c (x_set_mouse_color): Setup hand_cursor.
9424 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 9425
9443fcf6 9426 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
9427 included from it. Add dependency on keymap.h.
9428
9429 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
9430
8ba01a70 94312003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
9432
9433 * fileio.c (Fexpand_file_name): Fix previous change.
9434
8ba01a70 94352003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
9436
9437 * fileio.c (Ffile_name_directory): Reconstruct file name by
9438 make_specified_string.
9439 (Ffile_name_nondirectory, Ffile_name_as_directory)
9440 (Fdirectory_file_name, Fexpand_file_name)
9441 (Fsubstitute_in_file_name): Likewise.
9442 (Fread_file_name): Compare decoded homedir with DIR and
9443 DEFAULT_FILENAME.
9444
9445 * alloc.c (make_specified_string): If NCHARS is negative, count
9446 the number of characters.
9447
19536747
JD
94482003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9449
de38ae5a
JD
9450 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
9451 all widgets.
9452
19536747
JD
9453 * gtkutil.h: Removed xg_ignore_next_thumb.
9454
37ab321e 94552003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
9456
9457 * coding.c (Vchar_coding_system_table): Remove this variable.
9458 (Vcoding_system_safe_chars): New variable.
9459 (intersection): Remove this function.
9460 (find_safe_codings): Don't use Vchar_coding_system_table, but try
9461 all codings in SAFE_CODINGS.
00c64fab 9462 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
9463 find_safe_codings. Get generic coding systems from
9464 Vcoding_system_safe_chars.
9465 (Fdefine_coding_system_internal): New function.
9466 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
9467 Initialize and staticpro Vcoding_system_safe_chars.
9468
17097258
JD
94692003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9470
2a2071c3
JD
9471 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
9472 equal old values before updating.
9473
17097258
JD
9474 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
9475
9476 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
9477
94782003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9479
9480 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
9481 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
9482 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
9483 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
9484 (xg_create_scroll_bar): Pass bar to button event callback.
9485 (xg_find_top_left_in_fixed): New function.
9486 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
9487 whole scroll bar area. Get old position with
9488 xg_find_top_left_in_fixed, calculate and only clear needed areas.
9489 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
9490 dragging is in progress. Calculate whole as for Motif.
9491 Remove code that saved last values. Call gtk_range functions to
9492 set scroll bar sizes.
9493
9494 * gtkutil.h: Removed xg_ignore_next_thumb.
9495
8cb9dfbf
JB
94962003-03-17 Juanma Barranquero <lektu@terra.es>
9497
9498 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
9499 and files included from it.
9500
00c64fab
SM
95012003-03-18 Stefan Monnier <monnier@cs.yale.edu>
9502
9503 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
9504 multiple occurrences of the same keymap under different prefixes.
9505 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
9506
c45bb3b2
JR
95072003-03-16 Jason Rumney <jasonr@gnu.org>
9508
9509 * w32gui.h: Use HDC for Display.
9510
9511 * w32term.c (w32_encode_char): Prevent double-byte chars from
9512 crashing Emacs.
9513
9514 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
9515 as binary.
9516
2a6d0874
JB
95172003-03-16 Juanma Barranquero <lektu@terra.es>
9518
9519 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
9520
03eb5fab
KS
95212003-03-16 Kim F. Storm <storm@cua.dk>
9522
9523 The following changes consolidate some of the gui-independent
9524 parts of the processing and drawing of "glyph strings" from
9525 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 9526
03eb5fab
KS
9527 * dispextern.h (struct glyph): Reduce face_id member from 22 to
9528 21 bits (this reduces number of faces from 4M to 2M).
9529 Replace W32 specific w32_font_type member (2 bits) by generic
9530 font_type member (3 bits) for portability.
9531 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
9532 (enum draw_glyphs_face): Define here.
9533 (struct glyph_string): Define here. Merge W32 and X versions.
9534 (struct redisplay_interface): New members per_char_metric,
9535 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
9536 (VCENTER_BASELINE_OFFSET): Define here.
9537 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
9538 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
9539
9540 * xdisp.c: Consolidate gui-independent "glyph string" code here.
9541 (dump_glyph_string): Moved here.
9542 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
9543 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
9544 (fill_composite_glyph_string, fill_glyph_string)
9545 (fill_image_glyph_string, fill_stretch_glyph_string)
9546 (left_overwritten, left_overwriting, right_overwritten)
9547 (right_overwriting, get_char_face_and_encoding)
9548 (set_glyph_string_background_width, compute_overhangs_and_x)
9549 (append_glyph, append_composite_glyph, produce_image_glyph)
9550 (take_vertical_position_into_account, append_stretch_glyph)
9551 (produce_stretch_glyph): New generic functions (based on X version).
9552 Call platform specific functions through rif.
9553 (INIT_GLYPH_STRING): New macro, hides W32 details.
9554 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
9555 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
9556 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
9557 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
9558 (notice_overwritten_cursor):
9559 Generic functions exported to platform modules. Users changed.
9560
9561 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
9562 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
9563 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 9564 New macros for consolidated code.
2a6d0874 9565
03eb5fab
KS
9566 * xterm.c: Remove consolidated defines and code.
9567 (x_per_char_metric, x_encode_char)
9568 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
9569 (x_redisplay_interface): Add new members.
9570
9571 * w32gui.h (Display): Add dummy typedef for consolidation.
9572 (XChar2b): Define alias for wchar_t for consolidation.
9573 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
9574
9575 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 9576 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
9577 New macros for consolidation.
9578
fad49844 9579 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
9580 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
9581 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
9582 (w32_per_char_metric): Change font_type arg to int for RIF.
9583 (w32_encode_char): Return int according to RIF requirements.
9584 (w32_compute_glyph_string_overhangs): Adapt to RIF.
9585 (w32_get_glyph_overhangs): New function for RIF. Uses generic
9586 x_get_glyph_overhangs.
9587 (w32_redisplay_interface): Add new members.
9588
9589 * macgui.h (XChar2b): Move typedef here for consolidation.
9590 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
9591
9592 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
9593 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
9594 consolidation.
9595
9596 * macterm.c: Remove consolidated defines and code.
9597 (mac_per_char_metric): New function for RIF.
00c64fab 9598 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
9599 (mac_compute_glyph_string_overhangs): Adapt for RIF.
9600 (x_redisplay_interface): Add new members.
9601
00c64fab
SM
96022003-03-15 Stefan Monnier <monnier@cs.yale.edu>
9603
9604 * keymap.c (Vmenu_events): New var.
9605 (syms_of_keymap): Initialize it.
9606 (where_is_internal): Check more carefully what is a menu event.
9607
225c7a07
RS
96082003-03-14 Richard M. Stallman <rms@gnu.org>
9609
9610 * lread.c (read1): After #!, exit loop on eof.
9611
cea9be54
JD
96122003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9613
9ea0e54d
JD
9614 * gtkutil.h: Add declaration for xg_frame_cleared.
9615
0cb35f4e
JD
9616 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
9617
cea9be54
JD
9618 * gtkutil.c (struct xg_last_sb_pos): New structure.
9619 (handle_fixed_child): New function.
9620 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
9621 and force a redraw on them.
9622 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
9623 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
9624 so we can avoid unneeded redraws.
9625 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
9626 and force a redraw on the scroll bar.
9627 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
9628 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 9629 (xg_frame_cleared): New function.
cea9be54 9630
20b853f3
KH
96312003-03-13 Kenichi Handa <handa@m17n.org>
9632
9633 * coding.c (Fdetect_coding_region): Fix docstring.
9634 (Fdetect_coding_string): Fix docstring.
9635
7a555aff
AS
96362003-03-13 Andreas Schwab <schwab@suse.de>
9637
25cc0080
AS
9638 * gtkutil.c: Add prototype for create_menus.
9639
30225431
AS
9640 * data.c (long_to_cons): Fix type of top.
9641
9642 * xselect.c (selection_data_to_lisp_data): Use int instead of
9643 long for an integer of size 4.
9644
7a555aff 9645 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 9646 (xg_tool_bar_help_callback): Likewise.
7a555aff 9647
a3e4741f
AS
96482003-03-12 Andreas Schwab <schwab@suse.de>
9649
9650 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
9651
9668be7c
KS
96522003-03-12 Kim F. Storm <storm@cua.dk>
9653
03eb5fab 9654 The following changes consolidate the fringe handling from
9668be7c 9655 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 9656
9668be7c
KS
9657 * xdisp.c: Consolidate fringe handling code here.
9658 (left_bits, right_bits, continued_bits, continuation_bits)
9659 (ov_bits, zv_bits): Define fringe bitmaps.
9660 (fringe_bitmaps): New array holding fringe bitmaps.
9661 (draw_fringe_bitmap): Draw a specific bitmap; call display
9662 specific drawing routine via rif->draw_fringe_bitmap.
9663 (draw_row_fringe_bitmaps): Generic replacement for
9664 x_draw_row_fringe_bitmaps; all callers changed.
9665 (compute_fringe_widths): Generic replacement for
9666 x_compute_fringe_widths; all callers changed.
9667
9668 * dispextern.h (enum fringe_bitmap_type): Define here.
9669 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
9670 (fringe_bitmaps): Declare extern.
9671 (struct redisplay_interface): New member draw_fringe_bitmap.
9672 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
9673
9674 * xterm.c: Remove generic fringe code.
9675 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
9676 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
9677
9678 * w32term.c: Remove generic fringe code.
9679 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
9680 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 9681
9668be7c
KS
9682 * macterm.c: Remove generic fringe code.
9683 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
9684 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
9685
00a88f32
SM
96862003-03-11 Stefan Monnier <monnier@cs.yale.edu>
9687
9688 * print.c (Fprin1_to_string): Return unibyte string if possible.
9689
1d1de695
DK
96902003-03-09 David Kastrup <dak@gnu.org>
9691
9692 * process.c (read_process_output): We have allocated enough space
9693 for readmax and carryover, so actually use the alloted space.
9694
257f40f2
JD
96952003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9696
9697 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
9698 toolkit scrollbar click.
9699
9700 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
9701 for USE_GTK.
9702 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
9703 also.
9704 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
9705 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 9706
78819ebb 9707 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
257f40f2
JD
9708
9709 * gtkutil.c (xg_get_scroll_id_for_window): New function.
9710 (xg_tool_bar_item_expose_callback): New function.
9711 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
9712 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
9713 on the tool bar widget.
9714 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
9715 to expose on the tool bar item widgets.
9716
15213141
JD
97172003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9718
26b74a0b 9719 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 9720 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
9721 deleted from the image cache).
9722
15213141
JD
9723 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
9724 the event isn't for a frame (i.e. for dialogs).
9725
20b853f3 97262003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
9727
9728 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
9729 composition components reaches the limit, terminate composing.
9730 (COMPOSITION_OK): New macro.
00a88f32 9731 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
9732 composition is found.
9733 (coding_restore_composition): Adjust the number of composition
9734 components if it is not sane.
9735
c9029fe5
JB
97362003-03-06 Juanma Barranquero <lektu@terra.es>
9737
9738 * w32term.h (struct w32_display_info): Add xrdb member to support
9739 passing resources via -xrm on Windows.
9740
9741 * w32term.c (w32_make_rdb): New function.
9742 (w32_term_init): Use it to initialize xrdb member of w32_display_info
9743 struct. Delete leftover code.
9744
9745 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
9746 for resources passed on the command line.
9747
9748 * w32reg.c (w32_get_rdb_resource): New function.
9749 (x_get_string_resource): Use it, so resources passed with -xrm
9750 supercede the ones in the registry.
9751
9d00001f
JD
97522003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9753
9754 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
9755 instead of x_top_window_to_frame.
9756
ca2417b9
JD
97572003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9758
9759 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
9760 when restarting Emacs.
9761
5b20caf0
RS
97622003-03-03 Richard M. Stallman <rms@gnu.org>
9763
9764 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
9765 to run kill-buffer-query-functions.
9766 (Qkill_buffer_query_functions): New var.
9767 (syms_of_buffer): Init and staticpro it.
9768
58e91b77
JD
97692003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9770
9771 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
9772
932357b4
KS
97732003-02-25 Kim F. Storm <storm@cua.dk>
9774
9775 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
9776 If centering point failed to make whole line visible and vscroll
9777 is non-zero, disable vscroll and try centering point again.
9778
9779 * lread.c (read1): Accept `single space' syntax like (? x).
9780
bb8db7e1
JD
97812003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9782
9783 * keyboard.c (cancel_hourglass_unwind): Surround with
9784 #ifdef HAVE_X_WINDOWS
9785
47d77aab
KH
97862003-02-25 Kenichi Handa <handa@m17n.org>
9787
9788 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
9789 process only when "subprocesses" is defined.
9790
6a097c0c
SM
97912003-02-24 Stefan Monnier <monnier@cs.yale.edu>
9792
9793 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
9794
0b063c27
JB
97952003-02-24 Juanma Barranquero <lektu@terra.es>
9796
d1135afc
JB
9797 * callint.c (fix_command): Declare as static void and move before
9798 Fcall_interactively.
9799
0b063c27
JB
9800 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
9801 (syms_of_xdisp): Don't initialize Qwhen.
9802
0af912f0
JD
98032003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9804
9805 * keyboard.c (cancel_hourglass_unwind): New function.
9806 (command_loop_1): Cancel hourglass with unwind-protect.
9807
120d0a23
RS
98082003-02-23 Richard M. Stallman <rms@gnu.org>
9809
9810 * callint.c (fix_command): New subroutine, from Fcall_interactively.
9811 Detect (when ... (region-beginning)) etc.
9812 (Fcall_interactively): Call fix_command.
9813 (Qif, Qwhen): New variables.
9814 (syms_of_callint): Init and staticpro them.
0b063c27 9815
120d0a23
RS
9816 * regex.c (print_partial_compiled_pattern): Output to stderr.
9817
4ece81a6
KG
98182003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
9819
9820 * dired.c (directory_files_internal): Don't expand directory.
9821 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
9822 instead. From Lars Hansen <larsh@math.ku.dk>.
9823
e52bd6b7
SM
98242003-02-22 Stefan Monnier <monnier@cs.yale.edu>
9825
9826 * fns.c (string_to_multibyte): Remove unused var i.
9827 (Flanginfo): Fix int/Lisp_Object mixup.
9828 (void_call2): New fun.
9829 (Fmap_char_table): Use it in place of call2.
9830
9831 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
9832
9833 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
9834
9835 * keymap.c (copy_keymap_1): Make it static.
9836
9837 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
9838
c33ef7c4
JB
98392003-02-22 David Ponce <david@dponce.com>
9840
9841 * lread.c (Fload): Don't check STRING_MULTIBYTE.
9842
16782258
JD
98432003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9844
9845 * process.h: Removed subtty field from struct Lisp_Process.
9846
9847 * process.c (create_process): Remove setting of subtty.
9848 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
9849 (Fprocess_running_child_p, process_send_signal):
9850 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
9851 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
9852
3abeca61
KG
98532003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
9854
9855 * keymap.c (Fdefine_key): Doc fix.
9856
92a8ce63
JB
98572003-02-21 Juanma Barranquero <lektu@terra.es>
9858
9859 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
9860
9861 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
9862 POLLING_PROBLEM_IN_SELECT.
9863
9864 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
9865 Delete #undef of POLLING_PROBLEM_IN_SELECT.
9866
9867 * s/hpux10-20.h: New file.
9868
e52bd6b7
SM
9869 * process.c (wait_reading_process_input):
9870 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 9871
20f1ef2e
KH
98722003-02-20 Kenichi Handa <handa@m17n.org>
9873
32d0a9dc
KH
9874 * fontset.c (check_fontset_name): If NAME is nil, return the
9875 default fontset.
9876 (override_font_info): New function.
e52bd6b7 9877 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
9878 (Ffontset_info): If FONTSET is not the default fontset, merge
9879 FONTSET onto the copy of the default fontset, and work on that
9880 copy. Document that NAME nil means the default fontset.
9881 (Ffontset_font): Document that NAME nil means the default fontset.
9882
20f1ef2e
KH
9883 * process.c (setup_process_coding_systems): If the process's
9884 in/out descriptor is -1, do nothing.
9885
77d1daf2
AS
98862003-02-19 Andreas Schwab <schwab@suse.de>
9887
e52bd6b7
SM
9888 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
9889 Add prototypes.
77d1daf2 9890
f9a45bb3
KH
98912003-02-19 Kenichi Handa <handa@m17n.org>
9892
9893 * xfaces.c (try_alternative_families): Try all scalable fonts if
9894 Vscalable_fonts_allowed is not Qt.
9895
72ecb43c
JD
98962003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9897
9898 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
9899
ee5be7c3
JD
99002003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9901
9902 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
9903 names.
9904
9905 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 9906 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
9907 x_face_list_fonts.
9908 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
9909 (Fx_list_fonts): Set maxnames to -1 to get all font names.
9910
4cd519a7
KS
99112003-02-18 Kim F. Storm <storm@cua.dk>
9912
068f9882
KS
9913 * lread.c (read1): Fix last change.
9914 "`" is not always special. Allow "?" after a character constant.
4cd519a7 9915
7290a344
AC
99162003-02-18 Andrew Choi <akochoi@shaw.ca>
9917
9918 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
9919
1f7fa69b
AS
99202003-02-18 Andreas Schwab <schwab@suse.de>
9921
9922 * window.c (window_scroll_pixel_based): Move outside a
9923 multi-glyph character before setting new window start.
9924
9925 * xdisp.c (in_display_vector_p): New function.
9926 * dispextern.h (in_display_vector_p): Declare.
9927
23e21195
KS
99282003-02-18 Kim F. Storm <storm@cua.dk>
9929
9930 * lread.c (read1): Fix and relax read syntax.
9931 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
9932 Only recognize "," after dotted-pair dot if inside backquote.
9933 Never include "`" or "," (inside backquote) in a symbol.
9934 Allow dotted-pair dot after a character constant.
9935 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 9936
f098b121
JD
99372003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9938
9939 * gtkutil.c (xg_tool_bar_expose_callback): New function.
9940 (xg_create_tool_bar): Force style of tool bar to be horizontal with
9941 icons. Set name of tool bar to emacs-toolbar.
9942 (update_frame_tool_bar): Connect expose event to
9943 xg_tool_bar_expose_callback.
9944
63020c46
RS
99452003-02-17 Richard M. Stallman <rms@gnu.org>
9946
9947 * keyboard.c (this_command_key_count_reset): New variable.
9948 Initiatize to 0 where this_command_key_count is set.
9949 (read_char): Save and restore this_command_key_count_reset
9950 around input method code.
9951 (read_char): If this_command_key_count_reset, echo reread commands.
9952 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
9953
fb4452cc
KH
99542003-02-17 Kenichi Handa <handa@m17n.org>
9955
9956 * fns.c (string_to_multibyte): Always return a multibyte string.
9957
bd11cc09
JR
99582003-02-16 Jason Rumney <jasonr@gnu.org>
9959
e52bd6b7
SM
9960 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
9961 Negative max_fonts parameter means list all.
bd11cc09 9962
4cdf4bde
DL
99632003-02-14 Dave Love <fx@gnu.org>
9964
9965 * fns.c (Flanginfo): Doc fix.
9966
023b93f6
KS
99672003-02-13 Kim F. Storm <storm@cua.dk>
9968
37cd4238
KS
9969 * lread.c (read_escape): Interpret \s as a SPACE character, except
9970 for \s-X in a character constant which still is the super modifier.
9971 (read1): Signal an `invalid read syntax' error if a character
9972 constant is immediately followed by a digit or symbol character.
9973
140a6b7e
KS
9974 * search.c (Fmatch_data): Doc fix. Explicitly state that
9975 match-data is undefined if last search failed.
9976
3419757d 9977 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
023b93f6
KS
9978 All uses changed.
9979
7d5c86e5
JB
99802003-02-12 Juanma Barranquero <lektu@terra.es>
9981
9982 * eval.c (Fdefmacro): Fix typo.
9983
295fff2c
KS
99842003-02-12 Kim F. Storm <storm@cua.dk>
9985
9986 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
9987 macro is a string, convert meta modifiers in string when copying
9988 the string into a vector.
9989
60f3202d
KS
99902003-02-11 Kim F. Storm <storm@cua.dk>
9991
9992 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
9993
61cb0b53
KH
99942003-02-11 Kenichi Handa <handa@m17n.org>
9995
9996 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
9997
7392e23c
KS
99982003-02-10 Kim F. Storm <storm@cua.dk>
9999
10000 * process.c: Doc fixes.
10001 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
10002
ce4254bd
KH
100032003-02-10 Kenichi Handa <handa@m17n.org>
10004
9c7a329a
KH
10005 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
10006
ce4254bd
KH
10007 * process.c (QCfilter_multibyte): New variable.
10008 (setup_process_coding_systems): New function.
e52bd6b7
SM
10009 (Fset_process_buffer, Fset_process_filter):
10010 Call setup_process_coding_systems.
ce4254bd
KH
10011 (Fstart_process): Initialize the member `filter_multibyte' of
10012 struct Lisp_Process.
10013 (create_process): Call setup_process_coding_systems.
10014 (Fmake_network_process): New keyward `:filter-multibyte'.
10015 Initialize the member `filter_multibyte' of struct Lisp_Process.
10016 Call setup_process_coding_systems.
10017 (server_accept_connection): Call setup_process_coding_systems.
10018 (read_process_output): If the process has a filter, decide the
10019 multibyteness of a string to given to the filter by
10020 `filter_multibyte' member of the process. If the process doesn't
10021 have a filter and the result of conversion is unibyte, use
10022 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
10023 multibyte form.
10024 (Fset_process_coding_system): Call setup_process_coding_systems.
10025 (Fset_process_filter_multibyte): New function.
10026 (Fprocess_filter_multibyte_p): New function.
10027 (syms_of_process): Intern and staticpro QCfilter_multibyte.
10028 Defsubr Sset_process_filter_multibyte and
10029 Sprocess_filter_multibyte_p.
10030
10031 * process.h (struct Lisp_Process): New member filter_multibyte.
10032
10033 * lisp.h (setup_process_coding_systems): Add prototype.
10034
10035 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
10036 process, update coding systems for the process.
10037
b08d5f59
KH
100382003-02-09 Kenichi Handa <handa@m17n.org>
10039
10040 * fns.c (string_to_multibyte): New function.
10041 (Fstring_to_multibyte): New function.
10042 (syms_of_fns): Defsubr it.
10043
0dfd93c0
AS
100442003-02-08 Andreas Schwab <schwab@suse.de>
10045
10046 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
10047 instead of the substitution.
10048
7b76ca1c
JD
100492003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10050
10051 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
10052
10053 * xmenu.c (menu_position_func): Adjust menu popup position so that
10054 the menu is fully visible.
7b76ca1c 10055
2436a4e4
JD
100562003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10057
10058 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
10059 (x_make_frame_invisible, x_wm_set_icon_position):
10060 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
10061
10062 * xfns.c (x_set_name, x_set_title): Ditto.
10063
37d1e680
RS
100642003-02-04 Richard M. Stallman <rms@gnu.org>
10065
10066 * keyboard.c (echo_now): Update before_command_echo_length.
10067 (Freset_this_command_lengths): Reset this_command_key_count etc.
10068 immediately rather than arranging to do it later.
10069 (before_command_key_count_1, before_command_echo_length_1)
10070 (before_command_restore_flag): Vars deleted.
10071 (add_command_key): Don't handle before_command_restore_flag.
10072 (read_char, record_menu_key): Don't update before_command_key_count or
10073 before_command_echo_length.
10074 (read_char): Don't handle before_command_restore_flag.
10075
10076 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
10077 in direct-output clauses if it wouldn't be called in the ordinary case.
10078
578846a3
KS
100792003-02-04 Kim F. Storm <storm@cua.dk>
10080
10081 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
10082
49853a4d
JD
100832003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10084
10085 * gtkutil.c (remove_from_container): Copying list is not needed.
10086 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
10087 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
10088 on list returned from gtk_container_get_children to avoid memory leak.
10089
8b53dc06
JR
100902003-02-01 Jason Rumney <jasonr@gnu.org>
10091
5d54d177
JR
10092 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
10093 local malloc.
10094 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
10095 definitions in xpm.h.
10096 (init_xpm_functions): New function.
f63fd14e 10097 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
10098 (init_external_image_libraries): Try to load libXpm.dll.
10099
8b53dc06
JR
10100 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
10101 timestamp.
10102
b222e415
DL
101032003-01-31 Dave Love <fx@gnu.org>
10104
10105 * syntax.c (Fskip_chars_forward)
10106 (open-paren-in-column-0-is-defun-start): Doc fix.
10107
c60ee5e7
JB
101082003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
10109
10110 * fileio.c: Support // at start of name for Cygwin (just added proper
10111 preprocessor tests).
10112
10113 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
10114
10115 * Makefile.in: Use @EXEEXT@ for Cygwin.
10116
10117 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
10118
10119 * s/cygwin.h: Added for Cygwin port.
10120
53b37591
JB
101212003-01-31 Juanma Barranquero <lektu@terra.es>
10122
10123 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
10124 when including gif_lib.h.
fe929957 10125 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
10126 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
10127 Windows. Disable color table lookups. Call library functions
53b37591 10128 through pointers determined at runtime.
fe929957
JB
10129 (init_external_image_libraries): Try to load libungif.dll and
10130 libtiff.dll.
53b37591 10131
45415a8f
KH
101322003-01-31 Kenichi Handa <handa@m17n.org>
10133
10134 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 10135 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 10136
a97e4138
JD
101372003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10138
e52bd6b7 10139 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 10140
6eed9bed
DL
101412003-01-30 Dave Love <fx@gnu.org>
10142
10143 * alloc.c (Vgc_elapsed, gcs_done): New variables.
10144 (Fgarbage_collect): Use them.
10145 (init_alloc, syms_of_alloc): Set them up.
10146
100dcd40
JB
101472003-01-30 Juanma Barranquero <lektu@terra.es>
10148
10149 * w32fns.c (init_external_image_libraries): Add missing operator.
10150
fbd852af
JR
101512003-01-29 Jason Rumney <jasonr@gnu.org>
10152
10153 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
10154 an alternative name for jpeg.dll.
10155
8a2d8020
KH
101562003-01-29 Kenichi Handa <handa@m17n.org>
10157
10158 * xdisp.c (set_cursor_from_row): Pay attention to string display
10159 properties.
10160
058c18c7
AC
101612003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
10162
10163 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
10164 <escape>.
10165 (keycode_to_xkeysym_table): Reformat and add more comments.
10166 (XTread_socket): Drop special case for backspace.
10167
385f11cf
AC
101682003-01-28 Andrew Choi <akochoi@shaw.ca>
10169
10170 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
10171 values in old-style RGB specs.
10172
c922a224
JB
101732003-01-27 Juanma Barranquero <lektu@terra.es>
10174
10175 * w32fns.c (init_external_image_libraries): Try alternate names for the
10176 jpeg dll.
10177
0a1d6de0
JD
101782003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10179
10180 * gtkutil.c (create_dialog, xg_separator_p)
10181 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
10182 before calling strcmp or strlen.
10183
a97e4138 101842003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
10185
10186 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
10187 and handle image load failure.
10188
28908312
JR
101892003-01-26 Jason Rumney <jasonr@gnu.org>
10190
10191 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
10192 New functions.
f63fd14e
JB
10193 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
10194 Disable color table lookups. Call jpeg library functions
28908312
JR
10195 through pointers determined at runtime.
10196 (init_external_image_libraries): Try to load jpeg.dll.
10197
84e47416
RS
101982003-01-25 Richard M. Stallman <rms@gnu.org>
10199
10200 * lisp.h: Declare format2 instead of format1.
10201
10202 * fileio.c (barf_or_query_if_file_exists):
10203 Call format2 instead of format1.
10204
10205 * editfns.c (format2): New function, replaces format1
10206 but takes exactly two Lisp Objects as format args.
10207
10208 * buffer.c (Fkill_buffer): Call format2 instead of format1.
10209
a97e4138 102102003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
10211
10212 * xterm.h: Change to return value of x_dispatch_event to int.
10213
10214 * xterm.c (x_filter_event): New function.
10215 (event_handler_gdk, XTread_socket): Call x_filter_event.
10216 (x_dispatch_event): Change to return value of finish.
10217 (event_handler_gdk): Use return value from x_dispatch_event.
10218
10219 * xfns.c (x_window): Call create_frame_xic for GTK version to
10220 initialize input methods.
10221
10222 * gtkutil.h: Add (void) prototypes.
10223
10224 * gtkutil.c (create_menus): Remove code that puts the help menu to
10225 the right.
10226
54eefef1
JR
102272003-01-25 Jason Rumney <jasonr@gnu.org>
10228
10229 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
10230 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
10231 (png_load): Adjust colors for Windows. Use Windows
10232 bitmaps. Disable color table lookups.
c262430d
JR
10233 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
10234 (init_png_functions): New function.
10235 (png_read_from_memory, png_load): Call png library functions
10236 through pointers determined at runtime.
10237 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
10238 (init_external_image_libraries): New function.
10239 (init_xfns): Call it.
54eefef1 10240
1a9e275b
AS
102412003-01-24 Andreas Schwab <schwab@suse.de>
10242
10243 * minibuf.c (Fminibuffer_message): Verify type of parameter.
10244
a97e4138 102452003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
10246
10247 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
10248 of static initializer.
10249
422eec7e
DL
102502003-01-24 Dave Love <fx@gnu.org>
10251
10252 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
10253 architectures.
10254
10255 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
10256 Use __alignof__.
10257
2a026b04
KH
102582003-01-24 Kenichi Handa <handa@m17n.org>
10259
10260 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 10261 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
10262 (command_loop_1): Call adjust_point_for_property with proper
10263 second arg.
10264
a18bb28d
JR
102652003-01-22 Jason Rumney <jasonr@gnu.org>
10266
10267 Sync changes with xterm.c and xfns.c.
10268
10269 * w32term.c (x_draw_glyph_string_foreground)
10270 (x_draw_composite_glyph_string_foreground): Implement overstriking.
10271
10272 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
10273 phys_cursor's hpos is overwritten. This is still not completely
10274 correct, as it doesn't really make sense to use hpos at all to
10275 get the cursor glyph (as that is relative to the width of the
10276 characters on the line, which may have changed during the update).
10277
10278 * w32term.c (notice_overwritten_cursor): Handle the special case
10279 of the cursor being in the first blank non-text line at the
10280 end of a window.
10281
10282 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10283 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10284 Compute from the x position returned by x_draw_glyphs.
10285
10286 (x_display_and_set_cursor): Don't set phys_cursor_width here,
10287 except for NO_CURSOR and system caret, to make phys_cursor_width
10288 contain what its name suggests.
10289 (notice_overwritten_cursor): Consider the cursor image erased if
10290 the output area intersects the cursor image in y-direction.
10291
6a097c0c
SM
10292 * w32term.c (note_mode_line_or_margin_highlight): Rename from
10293 note_mode_line_highlight and extend.
a18bb28d
JR
10294
10295 * w32term.c (last_window): New variable.
10296 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
10297 (note_mouse_movement): Remove reimplemented code in #if 0.
10298
10299 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
10300 not update_mode_lines, and always set it to 1.
10301
ac6e47ef
JR
103022003-01-21 Jason Rumney <jasonr@gnu.org>
10303
10304 * w32fns.c (IDC_HAND): Define it if system headers don't.
10305
103062003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
10307
10308 * w32term.h (struct w32_output): New member hand_cursor.
10309 (WM_EMACS_SETCURSOR): New message definition.
10310
10311 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
10312 function w32_define_cursor.
10313 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
10314 position, change member name output_data.x to output_data.w32 and
10315 add function w32_define_cursor.
10316 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
10317 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
10318 (w32_initialize_display_info):
10319 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
10320
10321 * w32fns.c (Vx_hand_shape): New variable.
10322 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
10323 WM_EMACS_SETCURSOR.
10324 (x-create-frame): Setup Cursor types.
10325
ceb39a17
JB
103262003-01-21 David Ponce <david@dponce.com>
10327
ac6e47ef 10328 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 10329 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 10330 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 10331 2002-09-30.)
ac6e47ef
JR
10332 (w32_draw_relief_rect): Declare all args.
10333 (w32_define_cursor): New.
10334
10335 * w32fns.c (w32_load_cursor): New function.
10336 (w32_init_class): Use it.
10337 (x_put_x_image): Declare all args.
10338
b6189c3b 103392003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
10340
10341 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
10342
a97e4138 103432003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
10344
10345 * gtkutil.c: Must include stdio.h before termhooks.h
10346
83fc9c63
DL
103472003-01-21 Dave Love <fx@gnu.org>
10348
10349 * alloc.c (Fgc_status): Print zombie list.
10350 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
10351 Fix assignment of zombies.
10352 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
10353 Don't take car of non-cons.
10354
10355 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
10356
10357 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
10358
fe04b8c8
JR
103592003-01-20 David Ponce <david@dponce.com>
10360
10361 * w32menu.c (digest_single_submenu): Declare all args.
10362
10363 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
10364 changes in xmenu.c:
10365
10366 (parse_single_submenu): Use individual keymap's prompt
10367 string as pane name, if there is one.
10368 (set_frame_menubar): Save menu_items_n_panes from each call to
10369 parse_single_submenu and use it when calling digest_single_submenu.
10370
539e69a9
ST
103712003-01-20 Steven Tamm <steventamm@mac.com>
10372
10373 * macterm.c (XTread_socket): Checks for valid, visible window
10374 before sending a scroll-wheel event.
10375
675d000f
RS
103762003-01-20 Richard M. Stallman <rms@gnu.org>
10377
10378 * xdisp.c (redisplay_window): If mini window's buffer is not
10379 a minibuffer, then redisplay it like other windows.
10380
a97e4138 103812003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
10382
10383 * gtkutil.c (xg_create_frame_widgets): Check if there is an
10384 external tool bar before setting tool bar height.
10385
048addec
JD
103862003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10387
10388 * xterm.c (handle_one_xevent): Surround popup_activated
10389 with #ifdef:s for non-toolkit version.
10390
10391 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
10392 (gtkutil.o): New file.
10393 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
10394 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
10395
10396 * gtkutil.c: New file for GTK version.
10397
10398 * gtkutil.h: New file for GTK version.
10399
10400 * xterm.h: Add xt_or_gtk_widget.
10401 Include gtk files for USE_GTK.
10402 (struct x_output): Add toolbar_height.
10403 (struct x_output): Add GTK widgets and Gdk size_hints.
10404 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
10405 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
10406 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
10407
10408 * xterm.c: Include gtkutil.h for USE_GTK.
78819ebb 10409 (free_frame_menubar): Declare extern void for USE_GTK.
048addec
JD
10410 (note_mouse_highlight): Check popup_activated for USE_GTK.
10411 (xt_action_hook): Don't compile if USE_GTK.
10412 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
10413 (xg_scroll_callback): New function.
10414 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
10415 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
10416 for USE_GTK.
10417 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
10418 xg_show_scroll_bar for USE_GTK.
10419 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
10420 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
10421 (event_handler_gdk): New function for USE_GTK.
10422 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
10423 (handle_one_xevent): Make sure widget is mapped before
10424 calling x_real_positions for USE_GTK.
10425 (XTread_socket): Add GTK event loop for USE_GTK.
10426 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
10427 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
10428 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
10429 (x_iconify_frame): Add code for USE_GTK.
10430 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
10431 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
10432 is in gtkutil.c.
10433 (x_term_init): Add initialization for GTK.
10434 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
10435
10436 * xmenu.c: Include gtkutil.h for USE_GTK.
10437 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
10438 (single_menu_item, single_menu_item, Fx_popup_dialog):
10439 Check for USE_GTK.
048addec
JD
10440 (popup_widget_loop): New function for USE_GTK.
10441 (x_activate_menubar): Add code for USE_GTK.
10442 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
10443 (menu_highlight_callback, menubar_selection_callback):
10444 Add USE_GTK versions.
048addec
JD
10445 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
10446 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
10447 (free_frame_menubar): Only compile if not USE_GTK. GTK version
10448 is in gtkutil.c.
10449 (popup_selection_callback): New version for USE_GTK.
10450 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 10451 one USE_X_TOOLKIT version.
048addec
JD
10452 (xmenu_show): Call create_and_show_popup_menu.
10453 (dialog_selection_callback): New version for USE_GTK.
10454 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 10455 one USE_X_TOOLKIT version.
048addec
JD
10456 (xdialog_show): Call create_and_show_dialog.
10457
10458 * xfns.c: Include gtkutil for USE_GTK.
10459 (x_window_to_frame, x_any_window_to_frame)
10460 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
10461 (x_top_window_to_frame): Add code for USE_GTK.
10462 (x_set_background_color): Call xg_set_background_color for GTK.
10463 (x_set_menu_bar_lines): Check for USE_GTK.
10464 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
10465 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
10466 (x_window): Call xg_create_frame_widgets for USE_GTK.
10467 (Fx_create_frame): Check for USE_GTK
10468 (Fx_file_dialog): New implementation for USE_GTK.
10469
10470 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
10471 (update_menu_bar): Add check for USE_GTK.
10472 (update_tool_bar): Add check for USE_GTK and external tool bar.
10473 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
10474 (redisplay_internal): Add check for USE_GTK and popup_activated.
10475 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
10476 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
10477 (display_menu_bar): Add check for USE_GTK
10478
78819ebb 10479 * lisp.h (Vx_resource_name): Declare extern.
048addec 10480
a64387ee 10481 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
10482 for USE_GTK.
10483 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
10484
10485 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
10486 (FRAME_EXTERNAL_TOOL_BAR): New macro.
10487 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
10488
10489 * fileio.c (Fread_file_name): Add check for USE_GTK.
10490
6bdb309a
SM
10491 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
10492 Add check for USE_GTK.
048addec
JD
10493
10494 * config.in: Added HAVE_GTK
10495
10496 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
10497
104982003-01-18 Stefan Monnier <monnier@cs.yale.edu>
10499
10500 * charset.h (Funibyte_char_to_multibyte): Export.
10501
105022003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10503
10504 * xmenu.c (mouse_position_for_popup): New function.
10505 (Fx_popup_menu): Call mouse_position_for_popup for X and
10506 mouse_position_hook for others.
10507
105082003-01-17 Kim F. Storm <storm@cua.dk>
10509
10510 * editfns.c (Finsert): Mention `string-make-multibyte' and
10511 `string-as-multibyte' in doc string.
10512
105132003-01-17 Kenichi Handa <handa@m17n.org>
10514
10515 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 10516
048addec
JD
10517 * editfns.c (Fformat): Convert an unibyte char argument that is
10518 formatted by "%c" to multibyte if the total result must be a
10519 multibyte string.
cd7df9c0 10520
048addec 105212003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 10522
048addec
JD
10523 * process.c (set-process-filter): Document unibyte/multibyte-ness
10524 of string argument.
56210ecd 10525
048addec 105262003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 10527
048addec 10528 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 10529
048addec
JD
10530 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
10531 (re_search_2): Likewise.
6df8b9fe 10532
048addec 105332003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 10534
048addec
JD
10535 * xdisp.c (message_dolog): Fix bug of the case that *Message*
10536 buffer is unibyte.
292ddc31 10537
048addec 105382003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 10539
048addec 10540 * fns.c (Fsubstring): Clarify doc string.
292ddc31 10541
048addec
JD
10542 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
10543 (Fprevious_char_property_change)
10544 (Fnext_single_char_property_change)
10545 (Fprevious_single_char_property_change, Fnext_property_change)
10546 (Fnext_single_property_change, Fprevious_property_change)
10547 (Fprevious_single_property_change, Fadd_text_properties)
10548 (Fput_text_property, Fset_text_properties)
10549 (Fremove_text_properties, Fremove_list_of_text_properties)
10550 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 10551
048addec 105522003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 10553
048addec
JD
10554 * process.h (struct Lisp_Process): New member plist replaces old
10555 member private_vars. All uses changed.
63e4e4c6 10556
048addec 10557 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 10558 (QCplist): Rename from QCvars. Change all uses.
048addec 10559 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 10560 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 10561 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 10562 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 10563
048addec 105642003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 10565
6bdb309a 10566 * m/delta.h: Remove (obsolete).
e833850f 10567
048addec 105682003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 10569
048addec
JD
10570 * fileio.c (Fdelete_directory, Fdelete_file): Document the
10571 behaviour in front of symlinks.
10572 (Fdelete_file): Raise an error on directories.
817cb127 10573
048addec 105742003-01-13 Dave Love <fx@gnu.org>
817cb127 10575
048addec 10576 * fns.c (Freverse): Use QUIT.
3e8cf2ea 10577
048addec 105782003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 10579
048addec
JD
10580 * minibuf.c (minibuffer_completion_contents):
10581 Error if point is inside prompt.
3e8cf2ea 10582
048addec
JD
10583 * keyboard.c (command_loop_1): Don't redisplay directly
10584 if there's a post-command-hook.
3e8cf2ea 10585
048addec
JD
10586 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
10587 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 10588
048addec 105892003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 10590
048addec 10591 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 10592
048addec
JD
10593 * process.c (QCvars): New variable.
10594 (syms_of_process): Intern and staticpro it.
10595 (Fset_process_contact): Removed function.
10596 (Fprocess_variable, Fset_process_variable): New functions.
10597 (syms_of_process): Defsubr them.
10598 (Fstart_process): Initialize private_vars plist to nil.
10599 (Fmake_network_process): New arg :vars to setup the private
10600 variables for new network process.
10601 (server_accept_connection): Copy server's private variables to
10602 client process.
2c10f029 10603
048addec
JD
10604 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
10605 crashes). Code rewritten and simplified. Now directly aligns the
10606 pointer and recalculates pure_bytes_used, rather than aligning the
10607 size and adjusting the pointer.
b8a76c6c 10608
048addec 106092003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 10610
048addec
JD
10611 * process.c (Fset_process_contact): New function.
10612 (syms_of_process): defsubr it.
10613 (make-network-process): Update doc.
3a8d0899 10614
048addec 106152003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 10616
048addec
JD
10617 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
10618 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 10619
048addec 106202003-01-10 Dave Love <fx@gnu.org>
4abc7470 10621
048addec 10622 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 10623
048addec 106242003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 10625
048addec
JD
10626 * process.c (Fmake_network_process): Convert new port number
10627 to host byte order for `:service t' case. From Mario Lang.
bf338245 10628
048addec 106292003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 10630
048addec
JD
10631 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
10632 instead of XtAppProcessEvent.
bf338245 10633
048addec
JD
10634 * xterm.c (handle_one_xevent): New function.
10635 (x_dispatch_event): New function.
10636 (XTread_socket): Call handle_one_xevent.
bf338245 10637
048addec 10638 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 10639
048addec
JD
10640 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
10641 call XQueryPointer to get coordinates.
10642 (popup_get_selection): Do not set popup_activated_flag to zero,
10643 let popup_deactivate_callback do that. Needed for Motif.
10644 Call x_dispatch_event instead of XtDispatchEvent.
10645 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 10646
048addec 106472003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 10648
6bdb309a 10649 * process.c (server_accept_connection): Fix recording of new
048addec
JD
10650 connection's local address in :local property of contact info.
10651 (Fmake_network_process): Record local network address for new
10652 client processes in :local property of contact info.
6bdb309a 10653 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 10654
048addec 106552003-01-07 Dave Love <fx@gnu.org>
00e3ab56 10656
048addec 10657 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 10658
048addec 106592003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 10660
048addec 10661 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 10662
048addec
JD
10663 * eval.c (Fuser_variable_p): Doc change. For custom variables,
10664 use the same test as for custom-variable-p.
8c6d74c6 10665
048addec 106662003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 10667
048addec
JD
10668 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
10669 Count LAST_LINE_MISFIT in scroll margin for end of window.
10670 Move label too_near_end before setting SCROLL_MARGIN_POS.
10671 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 10672
048addec
JD
10673 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
10674 scroll_conservatively case. If scrolling that much doesn't change
10675 STARTP, move it down one line.
e833850f 10676
048addec
JD
10677 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
10678 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 10679
048addec
JD
10680 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
10681 selected frame.
8c6d74c6 10682
048addec 10683 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
3419757d 10684 (syms_of_keymap): Staticpro them.
048addec
JD
10685 (Fapropos_internal): Initialize them and clear them out.
10686 Don't GCPRO them.
8c6d74c6 10687
048addec
JD
10688 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
10689 Doc fixes.
8c6d74c6 10690
048addec
JD
10691 * lisp.h: New misc type Lisp_Save_Value.
10692 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
10693 (XSAVE_VALUE): New macro.
10694 (struct Lisp_Save_Value): New data type.
10695 (union Lisp_Misc): Add u_save_value alternative.
78819ebb 10696 (make_save_value): Declare.
8c6d74c6 10697
048addec 10698 * alloc.c (make_save_value): New function.
8c6d74c6 10699
048addec
JD
10700 * xterm.c (x_catch_errors): Save dpy using make_save_value.
10701 (x_catch_errors_unwind): Call XSync.
8c6d74c6 10702
048addec 107032003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 10704
048addec 10705 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 10706
048addec
JD
10707 * keyboard.c (command_loop_1): Call adjust_point_for_property
10708 in direct action cases for Qforward_char and Qbackward_char.
10709 Set already_adjusted so it won't be done twice.
8c6d74c6 10710
b6189c3b 107112002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 10712
048addec
JD
10713 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
10714 type definition of size_t.
8c609cff 10715
048addec 107162003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 10717
048addec
JD
10718 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
10719 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 10720
048addec 107212002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 10722
048addec
JD
10723 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
10724 to default to t.
fa634a5e 10725
048addec 107262002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 10727
048addec 10728 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 10729
048addec 107302002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 10731
048addec
JD
10732 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
10733 allow building in a different directory than source. Uses some
10734 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 10735
048addec 107362002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 10737
048addec
JD
10738 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
10739 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
10740 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
10741 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 10742
048addec 107432002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 10744
048addec
JD
10745 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
10746 <scroll-down-aggressively>: Doc fix.
2155ecf3 10747
048addec
JD
10748 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
10749 string as pane name, if there is one.
10750 (set_frame_menubar): Save menu_items_n_panes from each call to
10751 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 10752
048addec
JD
10753 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
10754 Don't try to make last line fully visible if it is past end of window.
61f1d295 10755
048addec 107562002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 10757
048addec
JD
10758 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
10759 (mac_menu_show): Add support for hierarchical popup menus.
10760 (add_menu_item): Remove indentation support.
10761 (fill_submenu, fill_menu): Create hierarchical menus
10762 instead of using indentation.
0b17a217 10763
048addec 107642002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 10765
048addec
JD
10766 * xdisp.c (try_cursor_movement): Don't call try_window here.
10767 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 10768
048addec 10769 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 10770
048addec 107712002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 10772
048addec
JD
10773 * macterm.c (XTread_socket): Call KeyTranslate for control and
10774 meta to deal correctly shifted non-alpha characters, like C-S-5
10775 being treated like C-%. Does not look for shift key to deal
10776 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 10777
048addec 107782002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 10779
048addec
JD
10780 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
10781 If it is non-nil, run timers. Use an unwind-protect to requeue
10782 the events that were read ahead.
10783 (popup_get_selection_unwind): New subroutine.
10784 (popup_get_selection_queue): File-scope variable now holds that queue.
10785 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
10786 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
10787 Use an unwind-protect to pop down the dialog box.
10788 (xdialog_show_unwind): New subroutine implements that.
f02cac82 10789
048addec
JD
10790 * xdisp.c (row_containing_pos): Change exit test using last_y.
10791 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 10792
048addec
JD
10793 * lread.c (load_error_handler): New function.
10794 (Fload): Handle errors in Fsubstitute_in_file_name.
10795 Don't expect Fsignal to return.
f02cac82 10796
048addec
JD
10797 * eval.c: Errors and throws work right with interrupt blocking.
10798 (struct catchtag): New elt interrupt_input_blocked.
10799 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
10800 (internal_catch, Fcondition_case, internal_condition_case)
10801 (internal_condition_case_1, internal_condition_case_2): Save it.
10802 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 10803
048addec 10804 * editfns.c (Fformat): Add parens.
f02cac82 10805
048addec
JD
10806 * dired.c (file_name_completion): Fix that change.
10807 Delete special quit-handling code; just use QUIT.
f02cac82 10808
b6189c3b 108092002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 10810
048addec
JD
10811 * dired.c (file_name_completion): Close directory on error
10812 just as in directory_files_internal.
1a590729 10813
048addec 108142002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 10815
048addec
JD
10816 * window.c (Fset_window_configuration): Set old_point to correct
10817 value when new_current_buffer == current_buffer.
f02cac82 10818
048addec 108192002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 10820
048addec
JD
10821 Revisited my earlier fix for the following entry in etc/PROBLEMS:
10822 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
10823 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 10824
048addec
JD
10825 These changes were in part based upon suggestions made by Peter
10826 'Luna' Runestig [peter@runestig.com].
9785d95b 10827
048addec
JD
10828 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
10829 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 10830 g_b_init_get_sid_identifier_authority ): Add several static
048addec 10831 global variables.
9785d95b 10832
048addec
JD
10833 * w32.c (globals_of_w32): New function. Used to initialize those
10834 global variables that must always be initialized on startup even
10835 when the global variable initialized is non zero. Its primary
10836 purpose at this time is to set the global variables
10837 g_b_init_is_windows_9x, g_b_init_open_process_token,
10838 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
10839 g_b_init_get_sid_identifier_authority to 0 on startup.
10840 Called from main.
9785d95b 10841
048addec
JD
10842 * w32.c (is_windows_9x): Perform initialization only if
10843 g_b_init_is_windows_9x is equal to 0. On initialization set
10844 g_b_init_is_windows_9x equal to 1.
2308af15 10845
048addec
JD
10846 * w32.c (open_process_token): Perform initialization only if
10847 g_b_init_open_process_token is equal to 0. On initialization set
10848 g_b_init_open_process_token equal to 1.
2308af15 10849
048addec
JD
10850 * w32.c (get_token_information): Perform initialization only if
10851 g_b_init_get_token_information is equal to 0. On initialization
10852 set g_b_init_get_token_information equal to 1.
9785d95b 10853
048addec
JD
10854 * w32.c (lookup_account_sid): Perform initialization only if
10855 g_b_init_lookup_account_sid is equal to 0. On initialization
10856 set g_b_init_lookup_account_sid equal to 1.
9785d95b 10857
048addec
JD
10858 * w32.c (get_sid_identifier_authority): Perform initialization
10859 only if g_b_init_get_sid_identifier_authority is equal to 0.
10860 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 10861
f63fd14e 10862 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
10863 those global variables that must always be initialized on startup
10864 even when the global variable initialized is non zero.
10865 Its primary purpose at this time is to initialize the global variable
10866 track_mouse_event_fn.
9785d95b 10867
a64387ee 10868 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 10869 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 10870
048addec 10871 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 10872
f63fd14e 10873 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
10874 initialize those global variables that must always be initialized
10875 on startup even when the global variable initialized is non zero.
10876 Its primary purpose at this time is to initialize the global
10877 variables get_menu_item_info and set_menu_item_info.
9785d95b 10878
048addec
JD
10879 * w32menu.c (initialize_frame_menubar): Remove initialization of
10880 get_menu_item_info and set_menu_item_info.
9785d95b 10881
048addec 10882 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 10883
048addec
JD
10884 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
10885 Declare them.
9785d95b 10886
048addec
JD
10887 * emacs.c (main): Call globals_of_w32 prior to calling
10888 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
10889 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
10890 is defined.
9785d95b 10891
048addec
JD
10892 * w32term.c (x_update_window_begin): Fix Windows API error
10893 detected by BoundsChecker. Test to determine if
10894 w32_system_caret_hwnd is NULL prior to attempting to use
10895 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 10896
048addec
JD
10897 * w32term.c (x_update_window_end): Fix Windows API error
10898 detected by BoundsChecker. Test to determine if
10899 w32_system_caret_hwnd is NULL prior to attempting to use
10900 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 10901
048addec 109022002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 10903
048addec
JD
10904 * coding.c (coding_system_require_warning): New variable.
10905 (syms_of_coding): DEFVAR it.
b6da19ef 10906
048addec 10907 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 10908
048addec
JD
10909 * fileio.c (choose_write_coding_system): Even if
10910 Vcoding_system_for_write is non-nil, if
10911 coding_system_require_warning is nonzero, call
10912 Vselect_safe_coding_system_function.
bfcf6dbe 10913
048addec 109142002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 10915
048addec
JD
10916 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
10917 (lisp): Add font-core.
2c568af5 10918
048addec 109192002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 10920
048addec
JD
10921 * textprop.c (text_read_only): New arg `propval'.
10922 (get_char_property_and_overlay): Remove unused var `next_overlay'.
10923 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 10924
048addec 109252002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 10926
048addec 10927 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 10928
048addec 109292002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 10930
048addec
JD
10931 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
10932 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
10933 Be more careful about when help_events are generated.
96720f09 10934
048addec 109352002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 10936
048addec
JD
10937 * macterm.c (mac_check_for_quit_char): Correctly set the
10938 modifiers of the event to 0.
10939 * mac.c (sys_select): Duplicate rfds before calling select to
10940 ensure that rfds survive the while loop.
e5ae1c49 10941
048addec 109422002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 10943
048addec
JD
10944 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
10945 row_containing_pos returned NULL.
2eb46b2d 10946
048addec 109472002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 10948
6bdb309a 10949 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 10950 non-blocking.
6bdb309a 10951 (sys_select): Fix sys_select to not use a timeout larger than
048addec 10952 the one given.
b11f1d8a 10953
048addec 109542002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 10955
048addec 10956 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 10957
048addec 109582002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 10959
048addec
JD
10960 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
10961 as the last thing.
a4ac5b17 10962
048addec 109632002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 10964
048addec 10965 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 10966
048addec 109672002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 10968
048addec
JD
10969 * editfns.c (Fformat): Handle precision in string conversion
10970 specifiers like libc functions do (ie, print at most that many
10971 characters).
85cce843 10972
048addec 109732002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 10974
048addec
JD
10975 * xdisp.c (row_containing_pos): Check more carefully
10976 whether charpos is really in the row before returning it.
0d4d26a7 10977
048addec 109782002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 10979
048addec 10980 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 10981
048addec
JD
10982 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
10983 each stack frame. This may change as it could be time consuming.
0d4d26a7 10984
048addec
JD
10985 * macterm.c (mac_check_for_quit_char, quit_char_comp)
10986 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 10987 (mac_initialize): Add code to check for pressing of quit_char
048addec 10988 in the OS event queue.
b11f1d8a 10989
048addec
JD
10990 * mac.c (sys_select): Call mac_check_for_quit_char every second
10991 while blocking on select.
0d4d26a7 10992
048addec
JD
10993 * mac.c (sys_read): Use sys_select to test for input first
10994 before calling read, to allow C-g to break.
9252f7bc 10995
048addec 109962002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 10997
048addec 10998 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 10999
048addec 11000 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 11001
048addec 11002 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 11003
048addec
JD
11004 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
11005 autoload.
9252f7bc 11006
048addec 11007 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 11008
048addec 11009 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 11010
048addec 110112002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 11012
048addec 11013 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 11014
048addec 110152002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 11016
048addec 11017 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 11018
048addec 11019 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 11020
048addec 11021 * alloca.c: Don't use #error.
02d588e2 11022
048addec 110232002-12-03 Dave Love <fx@gnu.org>
02d588e2 11024
048addec
JD
11025 * buffer.c (Qucs_set_table_for_input): New.
11026 (Fget_buffer_create): Use it.
11027 (Qset_buffer_major_mode_hook): Deleted.
11028 (Fset_buffer_major_mode): Revert previous change.
11029 (init_buffer_once): Intern ucs-set-table-for-input.
11030 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
11031 Add &Qucs_set_table_for_input.
451e2697 11032
048addec 110332002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 11034
048addec
JD
11035 * callint.c (Fcall_interactively): Use next_event only if less
11036 than key_count.
72742a99 11037
048addec 110382002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 11039
048addec
JD
11040 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
11041 names to 255 characters.
72742a99 11042
048addec
JD
11043 * macterm.c (XTread_socket): If all frames have been collapsed,
11044 expand the first one before handling drag-and-drop events.
72742a99 11045
048addec
JD
11046 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
11047 which is detected by autoconf.
40e6ff95 11048
048addec 110492002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 11050
048addec
JD
11051 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
11052 offset in two hints table to allow prebinding to be redone and
11053 allow the executable to be stripped.
c02138c6 11054
048addec 110552002-11-29 Dave Love <fx@gnu.org>
c02138c6 11056
048addec
JD
11057 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
11058 already provided.
0e47bbf7 11059
048addec 110602002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 11061
048addec
JD
11062 * xdisp.c (start_display): Check more intelligently for
11063 whether the line is continued.
11064 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 11065
048addec 110662002-11-28 Dave Love <fx@gnu.org>
44129dcb 11067
048addec
JD
11068 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
11069 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 11070
048addec 110712002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 11072
048addec
JD
11073 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
11074 more descriptive error output from lread.c:Fload upon most require
11075 cycles during boostrapping.
1637fd2c 11076
048addec 110772002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 11078
048addec
JD
11079 * fileio.c (Finsert_file_contents): Give a more appropriate error
11080 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 11081
048addec
JD
11082 * dired.c (Ffile_attributes): Don't return negative file sizes for
11083 files bigger than 2Gb when off_t is 32 bit.
540c2788 11084
048addec 110852002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 11086
048addec 11087 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 11088
048addec
JD
11089 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
11090 Test GETPGRP_VOID instead.
11091 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 11092
048addec
JD
11093 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
11094 Don't define.
11095 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 11096
048addec 11097 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 11098
048addec 110992002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 11100
048addec
JD
11101 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
11102 supported.
4042a81a 11103
048addec 111042002-11-25 Dave Love <fx@gnu.org>
4042a81a 11105
048addec 11106 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 11107
048addec 11108 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 11109
048addec 111102002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 11111
048addec 11112 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 11113
048addec 111142002-11-24 Steven Tamm <steventamm@mac.com>
82122254 11115
048addec
JD
11116 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
11117 determine the size of pointers alloced in unexed space instead
11118 of using possibly invalid emacs_zone pointers. This fixes the
11119 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 11120
048addec 111212002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 11122
048addec 11123 * search.c (Fstring_match): Doc fix.
c1ee53bc 11124
048addec
JD
11125 * callint.c (Fcall_interactively): If a command fails because
11126 `*' detects a read-only buffer, but RECORD_FLAG is set,
11127 record it anyway if the args don't actually do tty input.
5598c32e 11128
048addec 111292002-11-22 Dave Love <fx@gnu.org>
5598c32e 11130
048addec 11131 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 11132
048addec
JD
11133 * keyboard.c (interrupt_signal): Provide forward declaration.
11134 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 11135
048addec 11136 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 11137
048addec 111382002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 11139
048addec
JD
11140 * eval.c (interactive_p): Skip any number of bytecode
11141 and special form frames, in any order.
516eea8e 11142
048addec 111432002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 11144
048addec
JD
11145 * w32fns.c (convert_mono_to_color_image): New function.
11146 (xbm_load, xbm_load_image): Use it when foreground or background
11147 is explicitly set.
04dbfa08 11148
048addec 111492002-11-19 Dave Love <fx@gnu.org>
04dbfa08 11150
048addec 11151 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 11152
048addec 111532002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 11154
048addec
JD
11155 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
11156 (XPutPixel): Swap blue and red.
11157 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
11158 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
11159 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
11160 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 11161
048addec 111622002-11-18 Dave Love <fx@gnu.org>
d824beee 11163
048addec 11164 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 11165
048addec 11166 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 11167
048addec 11168 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 11169
048addec
JD
11170 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
11171 malloc, realloc, calloc.
d824beee 11172
048addec
JD
11173 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
11174 (bcmp): Don't define.
d824beee 11175
048addec 11176 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 11177
048addec 11178 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 11179
048addec 11180 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 11181
048addec 11182 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 11183
048addec
JD
11184 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
11185 Don't include alloca.h.
d824beee 11186
048addec 11187 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 11188
048addec 11189 * regex.c (_GNU_SOURCE): Don't define.
1998560a 11190
048addec 11191 * process.c (_GNU_SOURCE): Don't define.
1998560a 11192
048addec 11193 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 11194
048addec 111952002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 11196
048addec 11197 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 11198
048addec 111992002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 11200
048addec
JD
11201 * dispextern.h (struct face): Add `overstrike' field.
11202 * xterm.c (x_draw_glyph_string_foreground)
11203 (x_draw_composite_glyph_string_foreground): Implement overstriking.
11204 * xfaces.c (load_face_font): Set `face->overstrike' based on
11205 result from choose_face_font.
11206 (best_matching_font, choose_face_font): Add `needs_overstrike'
11207 argument, and use it to return whether overstriking is desirable
11208 for this face/font combo.
11209 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 11210
048addec 112112002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 11212
048addec
JD
11213 This change is my fix for the following entry in etc/PROBLEMS:
11214 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
11215 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 11216
048addec
JD
11217 * w32.c: Added wrapper functions around the win32 API functions
11218 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
11219 GetSidIdentifierAuthority. These wrapper functions serve two
11220 purposes:
11221 1. They ensure that the wrapped function can never be called
11222 when Emacs is running on an operating system on which they are
11223 not supported (Microsoft Windows 95 / 98 / ME).
11224 2. They call the wrapped functions via function pointers rather
11225 than calling them directly. This avoids taking advantage of the
11226 undocumented fact that although these functions are not supported
11227 in the 9x branch of Microsoft Windows, the functions do exist in
11228 the version of advapi32.dll that is found in the 9x branch of
11229 Microsoft Windows.
f60ae425 11230
6bdb309a 11231 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
11232 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
11233 and GetSidIdentifierAuthority with calls to the newly added
11234 wrapper functions.
f60ae425 11235
048addec
JD
11236 * w32.h: Added extern declarations for the following functions:
11237 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
11238 syms_of_w32menu, and void syms_of_fontset.
f60ae425 11239
6bdb309a 11240 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
11241 function pointer track_mouse_event_fn in the handler for the
11242 WM_SETFOCUS message.
3582b6a3 11243
6bdb309a 11244 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
11245 reinitialize the function pointers set_menu_item_info and
11246 get_menu_item_info.
f60ae425 11247
048addec 112482002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 11249
048addec
JD
11250 * sound.c: Added a partial implementation of play-sound-internal
11251 for Microsoft Windows. Added various #ifdef / #else / #endif
11252 code blocks to separate the code that will compile under
11253 Microsoft Windows from the code that is specific to Gnu/Linux.
11254 Moved several blocks of code around to make this separation of code
11255 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 11256
048addec 11257 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 11258
048addec
JD
11259 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
11260 added support for play-sound-internal under Windows would be
11261 included in the build of Emacs.
517f42a0 11262
048addec 112632002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 11264
048addec 11265 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 11266
048addec 11267 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 11268
048addec 112692002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 11270
048addec
JD
11271 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
11272 (adjust_point_for_property): Move out of display and invisible even if
11273 we were already inside before (in case a property was added while
11274 we weren't looking). Be more careful when handling invisible props.
11275 Skip invisible text as if it really wasn't there at all.
aab83f91 11276
048addec 112772002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 11278
048addec
JD
11279 * w32term.c (x_draw_image_foreground)
11280 (w32_draw_image_foreground_1): Use standard copy and invert
11281 operations to draw images.
aab83f91 11282
048addec
JD
11283 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
11284 depth of 1.
11285 (xbm_read_bitmap_data): Invert bits as xbm is read in.
11286 (XPutPixel): Don't invert bits here.
a4478a76 11287
048addec 112882002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 11289
048addec
JD
11290 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
11291 (w32_draw_image_foreground_1): Handle image masks.
11292 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 11293
048addec
JD
11294 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
11295 (x_from_xcolors): Adjust RGB values for W32.
11296 (image_background, image_background_transparent)
11297 (postprocess_image, x_to_xcolors, x_disable_image)
11298 (x_build_heuristic_mask): Adapt for W32 and enable.
11299 (x_create_x_image_and_pixmap): Mark images with palettes as such.
11300 (xbm_load): Remove unused variable.
03670a65 11301
048addec 113022002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 11303
048addec 11304 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 11305
048addec 113062002-11-14 Dave Love <fx@gnu.org>
59daa29a 11307
048addec 11308 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 11309
048addec
JD
11310 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
11311 * xmenu.c (unuse_menu_items, digest_single_submenu):
11312 * xfns.c (x_put_x_image):
11313 * xdisp.c (message2_nolog, set_message):
11314 * undo.c (record_point):
11315 * terminfo.c (tparam):
11316 * syntax.c (scan_sexps_forward):
11317 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
11318 * composite.c (update_compositions):
11319 * cm.c (calccost, cmgoto):
11320 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 11321
048addec 11322 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 11323
048addec
JD
11324 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
11325 Don't declare.
59daa29a 11326
048addec 11327 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 11328
048addec
JD
11329 * fns.c (Fcopy_sequence): Doc fix.
11330 (Fmap_char_table): Cast `call2'.
3947677c 11331
048addec
JD
113322002-11-14 Francesco Potorti` <pot@gnu.org>
11333
11334 * s/sol2-8.h: New file.
11335
113362002-11-14 Kim F. Storm <storm@cua.dk>
11337
11338 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
11339 dependency on `risky-local-variable' and the :propertize form.
11340
113412002-11-12 Stefan Monnier <monnier@cs.yale.edu>
11342
11343 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
11344
11345 * syntax.c (scan_sexps_forward): Undo last patch.
11346 Use a more obvious fix: check eob before updating the syntax table.
11347
113482002-11-09 Stefan Monnier <monnier@cs.yale.edu>
11349
11350 * syntax.c (scan_sexps_forward): Update syntax table before reading
11351 a char rather than after so we don't update the table past eob.
11352
113532002-11-09 Dave Love <fx@gnu.org>
11354
11355 * buffer.c (Fset_buffer_major_mode): Fix last change.
11356
11357 * regex.c (regexec): Fix pmatch declaration.
11358
11359 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
11360
11361 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
11362 to self-inserting characters.
11363 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
11364
11365 * coding.c (Vtranslation_table_for_input): New.
11366 (syms_of_coding): DEFVAR it.
11367
113682002-11-08 Juanma Barranquero <lektu@terra.es>
11369
11370 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
11371 window.
11372
113732002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11374
6bdb309a 11375 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
11376 cp, and i.
11377
113782002-11-06 Dave Love <fx@gnu.org>
11379
11380 * buffer.c (Qset_buffer_major_mode_hook): New.
11381 (Fset_buffer_major_mode): Use it.
11382
113832002-11-06 Richard M. Stallman <rms@gnu.org>
11384
11385 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
11386 and stop_polling.
11387
11388 * process.c (wait_reading_process_input):
11389 Test POLLING_PROBLEM_IN_SELECT, not hpux.
11390 Avoid initialization for auto Lisp_Object var.
11391
11392 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
11393
11394 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
11395
113962002-11-05 Richard M. Stallman <rms@gnu.org>
11397
11398 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
11399
11400 * callint.c (Fcall_interactively): New local filter_specs.
11401 (Fcall_interactively): Check for progn as well as let.
11402 Add a gcpro.
11403 (Qprogn): New variable.
11404 (syms_of_callint): Staticpro and init Qprogn.
11405
114062002-11-04 John Paul Wallington <jpw@shootybangbang.com>
11407
11408 * lread.c (Feval_buffer): Doc fix.
11409
114102002-11-04 Dave Love <fx@gnu.org>
11411
11412 * keyboard.c (read_char): Always translate iff
11413 Vkeyboard_translate_table is a char table and c is valid.
11414
11415 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
11416 and fix C types.
11417
114182002-11-03 Stefan Monnier <monnier@cs.yale.edu>
11419
11420 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
11421
11422 * editfns.c (get_pos_property): Don't hardcode Qfield.
11423
11424 * keyboard.c (adjust_point_for_property): Handle `display' prop on
11425 overlays. Also handle `invisible' prop.
11426
114272002-11-02 Stefan Monnier <monnier@cs.yale.edu>
11428
11429 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
11430 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
11431
114322002-11-01 Andreas Schwab <schwab@suse.de>
11433
11434 * editfns.c (Fmessage): Revert last change to properly handle %%.
11435
114362002-11-01 Stefan Monnier <monnier@cs.yale.edu>
11437
11438 * xmenu.c (unuse_menu_items): New fun.
11439 (menu_items_inuse): New var.
11440 (syms_of_xmenu): Initialize it.
11441 (init_menu_items): Use it to detect re-entrance.
11442 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
11443 (Fx_popup_menu): Remove spurious XSETFRAME.
11444
11445 * editfns.c (find_field): Make an exception for nil fields.
11446
114472002-11-01 Dave Love <fx@gnu.org>
11448
11449 * m/gec63.h: Deleted.
11450
114512002-10-31 Dave Love <fx@gnu.org>
11452
11453 * xterm.c (XTread_socket): Fix last change.
11454 (xaw_scroll_callback): Cast call_data to long to avoid warning.
11455
114562002-10-31 Stefan Monnier <monnier@cs.yale.edu>
11457
11458 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
11459
114602002-10-30 Stefan Monnier <monnier@cs.yale.edu>
11461
11462 * editfns.c (overlays_around, get_pos_property): New funs.
11463 (find_field): Use them.
11464 Also be careful not to modify POS before its last use.
11465 (Fmessage): Don't Fformat if there's nothing to format.
11466
114672002-10-30 Dave Love <fx@gnu.org>
11468
11469 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
11470 [HAVE_PTY_H]; Include pty.h.
11471
11472 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
11473
11474 * xterm.c (Qeql): Declare.
11475 (Vx_keysym_table): New.
11476 (syms_of_xterm): Initialize it.
11477 (XTread_socket): Use it. Deal with ASCII keysyms.
11478 (XSetIMValues) [HAVE_X11R6]: Prototype.
11479
11480 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
11481 (lispy_kana_keys): Comment out.
11482 (make_lispy_event) [XK_kana_A]: Comment out.
11483 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
11484 Fix sprintf call.
11485
11486 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
11487 regexp.h change).
11488 (TERMINFO, LIBS_TERMCAP): Define.
11489
11490 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
11491 (bcmp): Define conditional on HAVE_BCMP.
11492 (NO_SIOCTL_H): Don't define.
11493 (TIOCSIGSEND): Don't make conditional on IRIX6.
11494
11495 * s/sol2-5.h: Don't include strings.h.
11496 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
11497
11498 * s/irix6-0.h (IRIX6): Don't define.
11499 (bcopy, bcmp, bzero): Don't undef.
11500
11501 * s/irix6-5.h: Don't include strings.h.
11502 (IRIX6): Don't define.
11503 (bcopy, bcmp, bzero): Don't undef.
11504
11505 * syntax.c (Fforward_comment): Doc fix.
11506
115072002-10-29 Kim F. Storm <storm@cua.dk>
11508
11509 * process.c (Fsignal_process): Allow PROCESS to be specified by
11510 name in addition to pid (as integer or string).
11511
115122002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
11513
11514 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
11515 environments.
11516
115172002-10-27 Kim F. Storm <storm@cua.dk>
11518
11519 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
11520
11521 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
11522
11523 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
11524
11525 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
11526
115272002-10-26 Richard M. Stallman <rms@gnu.org>
11528
11529 * editfns.c (Fformat): Detect invalid format letters for floats.
11530
115312002-10-25 Kenichi Handa <handa@m17n.org>
11532
11533 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
11534 (x_set_title): Likewise.
11535
115362002-10-25 Juanma Barranquero <lektu@terra.es>
11537
11538 * macgui.h:
11539 * w32gui.h: Remove definition of XColor.
11540
11541 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
11542
115432002-10-24 Kim F. Storm <storm@cua.dk>
11544
11545 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
11546 Callers changed (supply dummy arg).
11547
11548 * lisp.h (get_window_cursor_type): Update prototype.
11549
11550 * w32term.c (x_display_and_set_cursor): Get active_cursor from
11551 get_window_cursor_type to track system caret.
11552
115532002-10-24 Kim F. Storm <storm@cua.dk>
11554
11555 * process.c (Fformat_network_address): New function.
11556 (syms_of_process): Defsubr it.
11557 (list_processes_1): Use it to format :local/:remote address if
f9711de4 11558 service/host is not set; before Emacs would crash in that case.
048addec
JD
11559 (Fmake_network_process): Don't use Ffind_operation_coding_system
11560 to setup coding system if host or service is not set.
11561
115622002-10-23 Juanma Barranquero <lektu@terra.es>
11563
11564 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
11565
11566 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
11567 COLORREF.
11568
11569 * macgui.h:
11570 * w32gui.h: Add definition of XColor.
11571
11572 * macfns.c:
11573 * w32fns.c:
11574 * xfaces.c: Remove definition of XColor.
11575
115762002-10-22 Stefan Monnier <monnier@cs.yale.edu>
11577
11578 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
11579
11580 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
11581 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
11582 window if it is dedicated.
11583 (Fshrink_window): Add preserve_before as was done for enlarge_window.
11584 (Vspecial_display_function): Update docstring.
11585
11586 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
11587 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
11588 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
11589
115902002-10-21 Stefan Monnier <monnier@cs.yale.edu>
11591
11592 * casefiddle.c (casify_region): Don't treat a prefix char as part
11593 of a word when at the beginning.
11594
115952002-10-17 Juanma Barranquero <lektu@terra.es>
11596
11597 * lread.c (syms_of_lread): Fix typos.
11598
115992002-10-17 Dave Love <fx@gnu.org>
11600
11601 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
11602
116032002-10-16 Richard M. Stallman <rms@gnu.org>
11604
11605 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
11606
116072002-10-14 Juanma Barranquero <lektu@terra.es>
11608
11609 * w16select.c (syms_of_win16select): Fix docstring for
11610 `selection-coding-system'.
11611
11612 * w32select.c (syms_of_w32select): Likewise.
11613
116142002-10-14 Stefan Monnier <monnier@cs.yale.edu>
11615
11616 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
11617 a backslash-quoted char.
11618 (scan_lists, scan_sexps_forward): Pacify the compiler.
11619
116202002-10-13 Richard M. Stallman <rms@gnu.org>
11621
11622 * window.c (window_scroll): Set immediate_quit.
11623
11624 * print.c (print): When backquote form is the car of a list,
11625 output in old style. Use old_backquote_output to output all
11626 comma forms inside it in old style too.
11627
11628 * buffer.h (struct buffer): Move `undo_list' down below `name'.
11629
116302002-10-11 Markus Rost <rost@math.ohio-state.edu>
11631
11632 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
11633 batch mode).
11634
11635 * lread.c (Fload): Doc fix (load-suffixes).
11636
116372002-10-10 Steven Tamm <steventamm@mac.com>
11638
11639 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
11640 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
11641 Also switch the default to Qnil from Qt.
11642
116432002-10-08 Kenichi Handa <handa@m17n.org>
11644
11645 * coding.c (code_convert_region): When we need more GAP for
11646 conversion, pay attention to the case that coding->produced is not
11647 greater than coding->consumed.
11648
116492002-10-07 Richard M. Stallman <rms@gnu.org>
11650
11651 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
11652
116532002-10-06 Andrew Choi <akochoi@shaw.ca>
11654
11655 * macmenu.c (mac_menu_show): Add j to count menu items; match
11656 menu_item_selection to it to find selected item.
11657
116582002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11659
11660 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
11661 cases. The correct fix is to pass ReparentNotify to Xt.
11662 The shell widget interprets ConfigureNotify differently depending
11663 on if it has been reparented or not.
11664
116652002-10-05 Markus Rost <rost@math.ohio-state.edu>
11666
11667 * editfns.c (Fformat_time_string): Doc fix.
11668
116692002-10-05 John Paul Wallington <jpw@shootybangbang.com>
11670
11671 * fns.c (Flength): Doc fix.
11672
116732002-10-04 Stefan Monnier <monnier@cs.yale.edu>
11674
11675 * keyboard.c (keyremap): New struct.
11676 (read_key_sequence): Use it: globally replace keytran_foo with
11677 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
11678 keytran_next and fkey_next to just `next'.
11679
116802002-10-04 Steven Tamm <steventamm@mac.com>
11681
11682 * macterm.c (keycode_to_xkeysym_table): Change return to be
11683 treated like an X keysym.
11684
116852002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11686
11687 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
11688 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
11689 This is to also handle x/y changes that occur because of a resize.
11690
116912002-10-02 John Paul Wallington <jpw@shootybangbang.com>
11692
11693 * frame.c (Vdelete_frame_functions): New variable.
11694 (syms_of_frame): Initialize and defvar it.
11695 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
11696 it when frame's `tooltip' parameter is non-nil.
11697
11698 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
11699
11700 * w32fns.c (x_create_tip_frame): Likewise.
11701
11702 * macfns.c (x_create_tip_frame): Likewise.
11703
117042002-09-30 Kenichi Handa <handa@m17n.org>
11705
11706 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
11707 -1 before calling ccl_driver.
11708
11709 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
11710 Only when it is non-nil, handle composition sequence.
11711 (setup_coding_system) <0>: Don't force composition handling.
11712
11713 * Makefile.in (lisp, shortlisp): Add utf-16.elc
11714
117152002-09-29 Richard M. Stallman <rms@gnu.org>
11716
11717 * search.c (Freplace_match): Adjust match data for the substitution
11718 just made in the buffer.
11719
11720 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
11721 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
11722
117232002-09-27 Richard M. Stallman <rms@gnu.org>
11724
11725 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
11726 (read_char): Use them. Do all exits thru the end of the function.
11727
117282002-09-27 Kenichi Handa <handa@etl.go.jp>
11729
11730 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
11731 is nil.
11732
117332002-09-26 Richard M. Stallman <rms@gnu.org>
11734
11735 * regex.h (__restrict_arr): Don't define if already defined.
11736
11737 * coding.c (run_pre_post_conversion_on_str):
11738 Save and restore Vdeactivate_mark.
11739
117402002-09-26 John Paul Wallington <jpw@shootybangbang.com>
11741
11742 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
11743
117442002-09-26 Kenichi Handa <handa@etl.go.jp>
11745
11746 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
11747 nonzero, try face's family at first. Otherwise try FAMILY at first.
11748 (choose_face_font): If C is a single byte char or latin-1, call
11749 try_font_list with PREFER_FACE_FAMILY 1.
11750
117512002-09-21 Richard M. Stallman <rms@gnu.org>
11752
11753 * window.c (select_window_1): Don't select frame.
11754 Set frame's selected window only when frame itself is selected.
11755 (Fselect_window): Doc fix.
11756
117572002-09-18 Kim F. Storm <storm@cua.dk>
11758
11759 * process.c (make-network-process): Doc fix (there is no
11760 network-server-log-function hook).
11761
117622002-09-18 Richard M. Stallman <rms@gnu.org>
11763
11764 * print.c (print): Clear out the unused parts of Vprint_number_table.
11765 (syms_of_print): Doc fix for `print-number-table'.
11766
11767 * unexelf.c (unexec): Undo previous change.
11768
117692002-09-17 Andreas Schwab <schwab@suse.de>
11770
11771 * m/alpha.h [LINUX]: Don't define DATA_START.
11772
117732002-09-16 Dave Love <fx@gnu.org>
11774
11775 * unexelf.c (unexec): Deal with .got, reinstating change from
11776 25-08-1999.
11777
117782002-09-13 Richard M. Stallman <rms@gnu.org>
11779
11780 * s/sol2-6.h (UNEXEC): Comment out definition.
11781
11782 * unexsol.c (unexec): Don't downcase first letter of error msg.
11783
11784 * xfaces.c (Fcolor_supported_p): Just one arg is required.
11785
117862002-09-12 Markus Rost <rost@math.ohio-state.edu>
11787
11788 * unexsol.c: Include buffer.h, charset.h, coding.h.
11789
117902002-09-11 Richard M. Stallman <rms@gnu.org>
11791
11792 * unexsol.c: Don't use report_file_error; do it by hand
11793 using dlerror.
11794
11795 * process.c (wait_reading_process_input, both versions):
11796 Before calling turn_on_atimers, call stop_polling.
11797
11798 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
11799
11800 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
11801 we go to too_near_end, call clear_glyph_matrix.
11802 (redisplay_window): After make_cursor_line_fully_visible,
11803 call clear_glyph_matrix and bypass `goto done'.
11804
11805 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
11806 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
11807
118082002-09-10 Richard M. Stallman <rms@gnu.org>
11809
11810 * fileio.c (Fdo_auto_save): Catch error making directory.
11811 Only call push_message if we need to.
11812 At the same time, make an unwind-protect to pop it.
11813 Rename local message_p to old_message_p.
11814 (do_auto_save_make_dir, do_auto_save_eh): New functions.
11815 (do_auto_save_unwind): Don't call pop_message.
11816
11817 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
11818
11819 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
11820
11821 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
11822
11823 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
11824
118252002-09-10 Stefan Monnier <monnier@cs.yale.edu>
11826
11827 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
11828 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
11829 (re_match_2_internal): Be more careful with infinite loops.
11830
118312002-09-10 Kim F. Storm <storm@cua.dk>
11832
11833 * macros.c (end_kbd_macro): New function.
11834 (Fend_kbd_macro): Use it.
11835
11836 * macros.h (end_kbd_macro): Declare extern.
11837
11838 * keyboard.c (Fdiscard_input): If defining keyboard macro,
11839 end and save it instead of discarding it.
11840
118412002-09-09 Markus Rost <rost@math.ohio-state.edu>
11842
11843 * s/sol2-6.h: Fix typo. Add comment.
11844
118452002-09-09 Richard M. Stallman <rms@gnu.org>
11846
11847 * regex.c (regnum_t): Use signed int, not unsigned int.
11848
11849 * s/sol2-6.h: New file.
11850
11851 * s/sol2-5.h (UNEXEC): Definition deleted.
11852
118532002-09-08 Kim F. Storm <storm@cua.dk>
11854
11855 * macros.c (executing_macro_index): Change type to EMACS_INT.
11856 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
11857
11858 * macros.h (executing_macro_index): Change type to EMACS_INT.
11859
118602002-09-06 Richard M. Stallman <rms@gnu.org>
11861
11862 * casetab.c (set_case_table): Make canon table point to eqv table.
11863
118642002-09-06 Juanma Barranquero <lektu@terra.es>
11865
11866 * coding.c (syms_of_coding): Fix spacing.
11867
11868 * composite.c (Fcompose_region_internal)
11869 (Fcompose_string_internal): Likewise.
11870
11871 * data.c (Flsh): Likewise.
11872
11873 * fontset.c (Fset_fontset_font): Likewise.
11874
11875 * macfns.c (Fx_server_max_request_size): Likewise.
11876
11877 * w16select.c (syms_of_win16select): Likewise.
11878
11879 * w32select.c (syms_of_w32select): Likewise.
11880
11881 * xselect.c (syms_of_xselect): Likewise.
11882
118832002-09-05 Richard M. Stallman <rms@gnu.org>
11884
11885 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
11886 call EXTEND_RANGE_TABLE and return a proper value.
11887 (set_image_of_range): Don't call set_image_of_range_1
11888 if no TRANSLATE or if range includes all of Latin-1.
11889 Only call it for the Latin-1 part of the range.
11890 For other cases, make two separate ranges,
11891 one for the original specified characters and one for
11892 their case-conversions.
11893
118942002-09-04 Richard M. Stallman <rms@gnu.org>
11895
11896 * s/sol2-5.h (UNEXEC): Use unexsol.o.
11897
11898 * window.c (displayed_window_lines): Correct for one-off bug
11899 in HEIGHT on non-window displays.
11900
11901 * regex.c (set_image_of_range_1): New function.
11902 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
11903 Return a value to indicate running out of memory.
11904 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
11905 (extend_range_table_work_area): New subroutine.
11906 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
11907 Different calling conventions, and used from set_image_of_range{,_1}.
11908 (IMMEDIATE_QUIT_CHECK): Definitions moved.
11909
119102002-09-04 Juanma Barranquero <lektu@terra.es>
11911
11912 * makefile.w32-in: All dependencies updated.
11913
119142002-09-01 Richard M. Stallman <rms@gnu.org>
11915
11916 * unexsol.c: New file.
11917
11918 * xfns.c (Qbox): Declare external, don't define.
11919
11920 * xdisp.c (redisplay_window) <force-start case>:
11921 If point is on semi-visible last line, reposition
11922 it at previous line.
11923
11924 * alloc.c (display_malloc_warning): Use display-warning.
11925 (malloc_warning_1): Function deleted.
11926
11927 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
11928
11929 * lread.c (read1): Handle #! by skipping the line.
11930
119312002-08-31 Richard M. Stallman <rms@gnu.org>
11932
11933 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
11934 Don't include LDFLAGS.
11935 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
11936
119372002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
11938
11939 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
11940 member of x_display_info unless we compile for some window system.
11941
119422002-08-31 Kim F. Storm <storm@cua.dk>
11943
11944 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
11945 (get_window_cursor_type): Don't use them.
11946 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
11947
119482002-08-30 Kenichi Handa <handa@etl.go.jp>
11949
11950 * xdisp.c (get_next_display_element): Fix previous change.
11951
119522002-08-30 Andrew Choi <akochoi@shaw.ca>
11953
11954 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
11955 (expose_window): Use it to fix the display of overlapping
11956 rows (merge code from xterm.c).
11957
11958 * macfns.c (Qbox): Add extern declaration.
11959
119602002-08-30 Juanma Barranquero <lektu@terra.es>
11961
11962 * w32fns.c (Qbox): Make extern.
11963 (syms_of_w32fns): Remove initialization of Qbox.
11964
119652002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
11966
11967 * xfns.c (Fx_open_connection): Fix error message.
11968
119692002-08-30 Kim F. Storm <storm@cua.dk>
11970
11971 The following changes consolidates the handling of the cursor
11972 type in xdisp.c, moving duplicate code and functionality from
11973 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
11974
11975 * frame.h (enum text_cursor_kinds): Consolidated here.
11976 Added DEFAULT_CURSOR value.
11977 (struct frame) <desired_cursor, cursor_width>
11978 <blink_off_cursor, blink_off_cursor_width>: New fields.
11979 Consolidated from output_x, output_w32 and output_mac structs.
11980 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
11981 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
11982
11983 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
11984 Variables consolidated here.
11985 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
11986 (Vcursor_in_non_selected_windows): Renamed from
11987 cursor_in_non_selected_windows and changed to Lisp_Object.
11988 (syms_of_xdisp): Define and staticpro new and moved variables.
11989 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
11990 consolidated here. Recognize Qhollow setting.
11991 (set_frame_cursor_types): New function to set frame cursor types
11992 based on the frame parameters.
11993 (get_window_cursor_type): New function to calculate new cursor
11994 type and width for the specified window. Based on duplicated
11995 code consolidated here.
11996 Enhancements: cursor-in-non-selected-windows may be a cursor type,
11997 check buffer-local alternate-cursor-type and blink-cursor-alist
11998 before using built-in blink off methods.
11999
12000 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
12001
12002 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
12003 (get_specified_cursor_type, get_window_cursor_type)
12004 (set_frame_cursor_types): Added prototypes.
12005
12006 * macfns.c (x_specified_cursor_type): Removed.
12007 (x_set_cursor_type): Use set_frame_cursor_types.
12008 (Qbar, Qbox): Removed.
12009 (syms_of_macfns): Don't intern or staticpro them.
12010
12011 * macterm.c (x_specified_cursor_type): Remove prototype.
12012 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12013 (x_display_and_set_cursor): Use get_window_cursor_type.
12014 Remove unused local variables cursor_non_selected, active_cursor.
12015 Redraw cursor if hbar cursor width changes.
12016 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
12017
12018 * macterm.h (enum text_cursor_kinds): Removed.
12019 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
12020 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12021 (FRAME_DESIRED_CURSOR): Macro removed.
12022
12023 * w32fns.c (Vblink_cursor_alist): Removed.
12024 (Qbar, Qhbar, Qbox, Qhollow): Removed.
12025 (syms_of_w32fns): Don't intern, staticpro, or define them.
12026 (x_specified_cursor_type): Removed.
12027 (x_set_cursor_type): Use set_frame_cursor_types.
12028
12029 * w32term.c (x_specified_cursor_type): Remove prototype.
12030 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12031 (x_display_and_set_cursor): Use get_window_cursor_type.
12032 Remove unused local variables cursor_off_state.
12033 Redraw cursor if hbar cursor width changes.
12034 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
12035
12036 * w32term.h (enum text_cursor_kinds): Removed.
12037 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
12038 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12039 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12040 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
12041 (struct w32_display_info) <x_highlight_frame>: Renamed member from
12042 w32_highlight_frame.
12043
12044 * xfns.c (Vblink_cursor_alist): Removed.
12045 (Qbar, Qhbar, Qbox, Qhollow): Removed.
12046 (syms_of_xfns): Don't intern, staticpro, or define them.
12047 (x_specified_cursor_type): Removed.
12048 (x_set_cursor_type): Use set_frame_cursor_types.
12049
12050 * xterm.c (x_specified_cursor_type): Remove prototype.
12051 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12052 (x_display_and_set_cursor): Use get_window_cursor_type.
12053 Remove unused local variables cursor_off_state.
12054 Redraw cursor if hbar cursor width changes.
12055
12056 * xterm.h (enum text_cursor_kinds): Removed.
12057 (struct output_x) <current_cursor, desired_cursor, cursor_width>
12058 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12059 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12060 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
12061 (x_specified_cursor_type): Remove prototype.
12062
120632002-08-28 Richard M. Stallman <rms@gnu.org>
12064
12065 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
12066 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
12067 (Vblink_cursor_alist): New variable.
12068 (syms_of_w32fns): Initialize and defvar it.
12069 (x_specified_cursor_type): Recognize Qbox for filled box.
12070 Exceptions are hollow boxes.
12071 (Qbox, Qhollow): New variables.
12072 (syms_of_w32fns): Initialize and staticpro them.
12073
12074 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
12075 New macros.
12076 (struct w32_output): New fields blink_off_cursor,
12077 blink_off_cursor_width.
12078 (FRAME_CURSOR_WIDTH): New macro.
12079
12080 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
12081 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
12082
12083 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
12084 for bar cursor.
12085
12086 * w32term.c (expose_overlaps): New function.
12087 (expose_window): Use it to fix the display of overlapping rows.
12088
120892002-08-28 Simon Josefsson <jas@extundo.com>
12090
12091 * xfns.c (Fx_open_connection): Improve help when X connection
12092 fails, xhost is insecure and xauth is better.
12093
120942002-08-28 Juanma Barranquero <lektu@terra.es>
12095
12096 * makefile.w32-in: Add missing dependencies on w32term.h and
12097 composite.h.
12098
12099 * emacs.c (USAGE1): Add missing newline.
12100
121012002-08-27 Andrew Choi <akochoi@shaw.ca>
12102
12103 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
12104
121052002-08-27 Richard M. Stallman <rms@gnu.org>
12106
12107 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
12108 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
12109 (Vblink_cursor_alist): New variable.
12110 (syms_of_xfns): Initialize and defvar it.
12111 (x_specified_cursor_type): Recognize Qbox for filled box.
12112 Exceptions are hollow boxes.
12113 (Qbox, Qhollow): New variables.
12114 (syms_of_xfns): Initialize and staticpro them.
12115
12116 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
12117 New macros.
12118 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
12119
12120 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
12121 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
12122
12123 * emacs.c (main): Handle --script.
12124 (USAGE1): Mention --script.
12125 (standard_args): Define sort order for --script.
12126
121272002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
12128
12129 * xdisp.c (redisplay_updating_p): Variable removed.
12130 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
12131 New variables.
12132 (init_iterator): Don't free realized faces if
12133 inhibit_free_realized_faces is set.
12134 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
12135 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
12136 initialize Qinhibit_free_realized_faces.
12137
12138 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
12139 when iterator is adding glyphs to a glyph matrix.
12140
121412002-08-27 Kenichi Handa <handa@etl.go.jp>
12142
12143 * xdisp.c (get_next_display_element): In unibyte case, don't use
12144 octal form for such eight-bit characters that can be converted to
12145 multibyte char.
12146
121472002-08-26 Kim F. Storm <storm@cua.dk>
12148
b6189c3b
KS
12149 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
12150 foreground and background colors. From Joe Buehler.
048addec
JD
12151
121522002-08-26 Miles Bader <miles@gnu.org>
12153
12154 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
12155
121562002-08-25 Andrew Choi <akochoi@shaw.ca>
12157
12158 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
12159 defined instead of MAC_OSX.
12160
12161 * s/darwin.h (select): Define select to sys_select only if
12162 HAVE_CARBON is defined.
12163 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
12164 (DONT_REOPEN_PTY): #def it.
12165
12166 * macterm.c (XTread_socket): Remove code to call
12167 SendEventToEventTarget for keys with command modifiers when
12168 mac_command_key_is_meta is nil.
12169
121702002-08-24 Andreas Schwab <schwab@suse.de>
12171
12172 * eval.c (Fdefvar): Fix last change.
12173
121742002-08-23 Richard M. Stallman <rms@gnu.org>
12175
12176 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
12177 Record variables in load history as (defvar . VAR).
12178 (Fdefvar): Don't record in load history if no initial value.
12179 (Qdefvar): New variable.
12180 (syms_of_eval): Init and staticpro it.
12181
12182 * lread.c (syms_of_lread): Doc fix.
12183 (build_load_history): Use Fmember to see if a definition
12184 is already in the Vload_history element.
12185
12186 * process.c (Fstart_process): Remove /: from program name.
12187
12188 * emacs.c (decode_env_path): Don't add /: if file name handler
12189 has a `safe-magic' property.
12190
12191 * callproc.c (Fcall_process): Remove /: from program name.
12192
121932002-08-23 Stefan Monnier <monnier@cs.yale.edu>
12194
12195 * regex.c (PATFETCH): Remove the translating fetch.
12196 (PATFETCH_RAW): Rename to PATFETCH.
12197 (set_image_of_range): New fun.
12198 (SET_RANGE_TABLE_WORK_AREA): Use it.
12199 (regex_compile): Don't translate the pattern chars so eagerly.
12200 Only do it when inserting an `exactn' bytecode or when handling
12201 a char-range.
12202 (mutually_exclusive_p): Avoid empty statement.
12203
122042002-08-22 Kim F. Storm <storm@cua.dk>
12205
12206 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
12207 end up on a partially visible line; this reverts a specific part
12208 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
12209 display error which has been reported several times now.
12210 However it introduces the problem that changes was supposed to fix.
12211 See my comments in the source if you want to debug this further.
12212
122132002-08-20 Kenichi Handa <handa@etl.go.jp>
12214
12215 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
12216
122172002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
12218
12219 * msdos.c (croak): Add `void' to definition.
12220
c1380aa6 12221 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
12222 Don't define them, they are defined in msdos.c.
12223
12224 * mem-limits.h [MSDOS]: Declare etext.
12225
12226 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
12227 `const' since CORRECT_DIR_SEPS modifies its target.
12228
122292002-08-19 Kim F. Storm <storm@cua.dk>
12230
2fb0ce67 12231 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
12232 KEEP-RECORD to avoid clearing lossage when we just want to clear
12233 the current key sequence (kmacro needs this).
12234
122352002-08-19 Kenichi Handa <handa@localhost>
12236
12237 * composite.c (run_composition_function): Call FUNC if it is fboundp.
12238
12239 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
12240 cons, return Qnil.
12241
122422002-08-17 Richard M. Stallman <rms@gnu.org>
12243
12244 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
12245
12246 * sysdep.c [!VMS]: Include sys/files.h.
12247
12248 * editfns.c (save_restriction_restore): Defend from unchained marker.
12249
12250 * buffer.c (overlays_at): Handle extending vec uniformly.
12251 (overlays_in): Handle extending vec from length 0 as in overlays_at.
12252
122532002-08-15 Andrew Choi <akochoi@shaw.ca>
12254
12255 * mac.c (init_mac_osx_environment): New function.
12256
12257 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
12258
122592002-08-14 Kim F. Storm <storm@cua.dk>
12260
12261 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
12262 executing macro before appending to it (when used from Lisp).
12263 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
12264 which is called prior to each iteration of macro (for kmacro.el).
12265 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
12266
12267 * lisp.h (Fexecute_kbd_macro): Update prototype.
12268
12269 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
12270
122712002-08-14 Kenichi Handa <handa@etl.go.jp>
12272
12273 * xselect.c (QUTF8_STRING): New variable.
12274 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
12275 (x_atom_to_symbol): Likewise.
12276 (x_get_local_selection): New argument local_request. If it is
12277 nonzero, call handler_fn with the second arg nil.
12278 (x_handle_selection_request): Call x_get_local_selection with
12279 local_request 0.
12280 (lisp_data_to_selection_data): Don't encode the string here.
12281 (Fx_get_selection_internal): Call x_get_local_selection with
12282 local_request 1.
12283 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
12284
12285 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
12286
12287 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
12288
122892002-08-13 Richard M. Stallman <rms@gnu.org>
12290
12291 * minibuf.c (Fminibufferp): New function.
12292 (syms_of_minibuf): Defsubr it.
12293 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
12294
122952002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
12296
12297 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
12298
122992002-08-12 Richard M. Stallman <rms@gnu.org>
12300
12301 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
12302 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
12303 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
12304 already.
12305
12306 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
12307
123082002-08-11 Andrew Choi <akochoi@shaw.ca>
12309
12310 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
12311 (Vmac_pass_command_to_system): New variable.
12312 (Vmac_pass_control_to_system): New variable.
12313 (do_mouse_moved): Check wp with is_emacs_window.
12314 (XTread_socket): Check window_ptr with is_emacs_window.
12315 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
12316 events back to Mac Toolbox for processing, depending on values of
12317 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
12318 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
12319 Vmac_pass_control_to_system.
12320
123212002-08-10 Kenichi Handa <handa@etl.go.jp>
12322
12323 * coding.c (unencodable_char_position): New function.
12324 (Funencodable_char_position): New function.
12325 (syms_of_coding): Defsubr Funencodable_char_position.
12326
123272002-08-10 Andrew Choi <akochoi@shaw.ca>
12328
12329 * mac.c (sys_select) [MAC_OSX]: New function.
12330
12331 * macterm.c (MakeMeTheFrontProcess): New function.
12332 (mac_initialize): Call MakeMeTheFrontProcess.
12333
12334 * s/darwin.h: Define select to sys_select.
12335
123362002-08-09 Richard M. Stallman <rms@gnu.org>
12337
12338 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
12339
123402002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
12341
12342 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
12343 end of the buffer.
12344
123452002-08-08 Ken Raeburn <raeburn@mit.edu>
12346
12347 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
12348
12349 * puresize.h (BASE_PURESIZE): Increase to 910000.
12350
123512002-08-08 Kenichi Handa <handa@etl.go.jp>
12352
12353 * coding.c (Ffind_operation_coding_system): For write-region, if
12354 VISIT is a filename, make it the target.
12355
123562002-08-07 Richard M. Stallman <rms@gnu.org>
12357
12358 * alloc.c (mark_object): Detect long lists for debugging.
12359 (mark_object_loop_halt): New variable.
12360
12361 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
12362
12363 * data.c (Fmake_variable_frame_local): Doc fix.
12364
123652002-08-01 David Ponce <david@dponce.com>
12366
12367 * w32menu.c (local_heap, local_alloc, local_free): New macros.
12368 (malloc_widget_value, free_widget_value)
12369 (w32_free_submenu_strings): Use them.
12370
12371 (push_submenu_start, push_submenu_end, push_left_right_boundary)
12372 (push_menu_pane, push_menu_item, single_keymap_panes)
12373 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
12374 (single_submenu, set_frame_menubar)
12375 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
12376
12377 (Fx_popup_menu): Don't show pop up menu until preceding one is
12378 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
12379
12380 * w32menu.c: Changes adapted from xmenu.c
12381 (set_frame_menubar): First parse all submenus,
12382 then make widget_value trees from them.
12383 Don't allocate any widget_value objects
12384 until we are done with the parsing.
12385 (parse_single_submenu): New function.
12386 (digest_single_submenu): New function.
12387 (single_submenu): Function deleted, replaced by those two.
12388
123892002-08-04 Andrew Choi <akochoi@shaw.ca>
12390
12391 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
12392 returns a valid window pointer before proceeding for keyDown and
12393 autoKey events.
12394
123952002-08-03 Andrew Choi <akochoi@shaw.ca>
12396
12397 * macterm.c (USE_CARBON_EVENTS): New macro.
12398 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
12399 (x_iconify_frame): Call CollapseWindow.
12400 (Vmac_reverse_ctrl_meta): New variable.
12401 (Vmac_wheel_button_is_mouse_2): New variable.
12402 (init_mac_drag_n_drop): New function.
12403 (mac_do_receive_drag): New function.
12404 (mac_handle_service_event): New function.
12405 (init_service_handler): New function.
12406 (mac_to_emacs_modifiers): New function.
12407 (mac_event_to_emacs_modifiers): New function.
12408 (mac_get_mouse_btn): New function.
12409 (mac_convert_event_ref): New function.
12410 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
12411 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
12412 mac_get_mouse_btn.
12413 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
12414
12415 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
12416 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
12417 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
12418 TOOL_BAR_EVENT for MAC_OS as well.
12419 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
12420 as for WINDOWS_NT.
12421 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
12422
12423 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
12424
124252002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
12426
12427 * xdisp.c (forward_to_next_line_start): Fix a condition that
12428 lead to a newline being skipped.
12429
124302002-08-02 Andrew Choi <akochoi@shaw.ca>
12431
12432 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
12433
124342002-08-01 Richard M. Stallman <rms@gnu.org>
12435
12436 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
12437
124382002-07-31 Andrew Choi <akochoi@shaw.ca>
12439
12440 * macfns.c: #undef init_process before #define-ing it.
12441
12442 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
12443 HAVE_CARBON is defined.
12444
124452002-07-31 Richard M. Stallman <rms@gnu.org>
12446
12447 * xmenu.c (set_frame_menubar): First parse all submenus,
12448 then make widget_value trees from them.
12449 Don't allocate any widget_value objects
12450 until we are done with the parsing.
12451 (parse_single_submenu): New function.
12452 (digest_single_submenu): New function.
12453 (single_submenu): Function deleted, replaced by those two.
12454
124552002-07-30 Juanma Barranquero <lektu@terra.es>
12456
12457 * w32proc.c (syms_of_ntproc): Fix docstring of
12458 `w32-get-true-file-attributes'.
12459
124602002-07-28 Richard M. Stallman <rms@gnu.org>
12461
12462 * s/hpux8.h (HPUX8): Define this before including hpux.h.
12463 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
12464
12465 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
12466
12467 * keyboard.c (make_lispy_event):
12468 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
12469 Explicitly clear up_modifier in event->modifiers.
12470
124712002-07-27 Richard M. Stallman <rms@gnu.org>
12472
12473 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
12474
12475 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
12476 for bar cursor.
12477
124782002-07-26 Kenichi Handa <handa@etl.go.jp>
12479
12480 * coding.c (detect_coding_iso2022): While checking a byte sequence
12481 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
12482 it in the normal loop.
12483
124842002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
12485
12486 * xterm.c (expose_overlaps): New function.
12487 (expose_window): Use it to fix the display of overlapping rows.
12488
12489 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
12490
124912002-07-23 Ken Raeburn <raeburn@gnu.org>
12492
12493 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
12494 since it only depends on XUINT.
12495
12496 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
12497 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
12498 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
12499 Macros deleted.
3947677c 12500
77d1daf2
AS
12501 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
12502 its value over other approaches.
12503 * sysdep.c (start_of_data): Don't define the function if a macro
12504 form has been defined.
8a8e19a3 12505
048addec
JD
125062002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
12507
12508 * xdisp.c (redisplay_updating_p): New variable.
12509 (init_iterator): Don't free realized faces when
12510 redisplay_updating_p is set.
12511 (redisplay_internal): Set redisplay_updating_p while updating
12512 the display.
12513
125142002-07-23 Richard M. Stallman <rms@gnu.org>
12515
12516 * editfns.c (Fmessage): Treat "" like nil.
12517
125182002-07-23 Kenichi Handa <handa@etl.go.jp>
12519
12520 * xdisp.c (face_before_or_after_it_pos):
12521 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
12522
125232002-07-22 Juanma Barranquero <lektu@terra.es>
12524
12525 * callproc.c (init_callproc) [DOS_NT]:
12526 Initialize Vshared_game_score_directory to nil.
12527 (syms_of_callproc) [DOS_NT]: Likewise.
12528
125292002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
12530
12531 * xdisp.c (display_line): Replace an abort with xassert.
12532
125332002-07-21 Richard M. Stallman <rms@gnu.org>
12534
12535 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
12536 and END_UNCHANGED when setting buffer_unchanged_p.
12537 Use current_matrix_up_to_date_p to decide whether to use
12538 try_cursor_movement.
12539
12540 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
12541
12542 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
12543
12544 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
12545 Set to nil if dir does not exist.
12546 (syms_of_callproc): Init unconditionally and simply.
12547
12548 * buffer.c (Fbuffer_list): Doc fix.
12549
125502002-07-21 Ken Raeburn <raeburn@gnu.org>
12551
12552 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
12553
12554 * buffer.c (mmap_realloc): When shrinking, make sure number of
12555 pages to unmap is rounded towards zero.
12556
12557 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
12558 (XSETINT): Deleted.
12559
12560 * m/att3b.h (XINT): Don't define.
12561 (VALBITS, VALMASK, XTYPE): Deleted.
12562 (DATA_SEG_BITS): Define.
12563 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
12564 ARRAY_MARK_FLAG): Deleted.
12565 (DATA_SEG_BITS): Define.
12566 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
12567 (DATA_SEG_BITS): Define.
12568
125692002-07-20 Richard M. Stallman <rms@gnu.org>
12570
12571 * print.c (print_error_message): New args CONTEXT and CALLER.
12572 Calls changed.
12573
12574 * lisp.h (print_error_message): Declare new args.
12575
12576 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
12577 and CONTEXT to print_error_message, don't print them here.
12578 For a Quit, don't use Vsignaling_function.
12579 Call message_log_maybe_newline.
12580
12581 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
12582
125832002-07-20 Kim F. Storm <storm@cua.dk>
12584
12585 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
12586
125872002-07-19 Ken Raeburn <raeburn@gnu.org>
12588
12589 * bytecode.c (struct byte_stack): Pointers into byte string now
12590 point to const.
12591 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
12592 const.
12593 * charset.h (BCOPY_SHORT): Source pointer now points to const.
12594 * coding.c (encode_eol, detect_coding, detect_eol):
12595 (decode_coding, encode_coding, detect_coding_system):
12596 Source strings now treated as const.
12597 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
12598 modify Lisp string contents.
12599 * coding.h (decode_coding, encode_coding, detect_coding,
12600 detect_eol): Declarations updated.
12601 * composite.c (compose_chars_in_text): Treat Lisp string contents
12602 as const.
12603 * dispnew.c (safe_bcopy): Source pointer now points to const.
12604 * lisp.h (STRING_COPYIN): New macro.
12605 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
12606 (internal_with_output_to_temp_buffer): Declarations updated.
12607 * print.c (temp_output_buffer_setup):
12608 (internal_with_output_to_temp_buffer): Buffer name argument is now
12609 pointer to const.
12610 * sound.c (struct sound_device): Function pointer field "write"
12611 buffer argument now points to const.
12612 (vox_write): Buffer argument points to const.
12613 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
12614 contents as const.
12615 * sysdep.c (emacs_write): Buffer pointer now const.
12616 * term.c (encode_terminal_code): Buffer pointer now const.
12617 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
12618 (x_face_list_fonts, x_update_menu_appearance):
12619 (hash_string_case_insensitive): Treat Lisp string contents as const.
12620
126212002-07-19 Juanma Barranquero <lektu@terra.es>
12622
048addec
JD
12623 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
12624
12625 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
12626 (Ffile_name_as_directory): Fix argument name in docstring.
12627 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
12628
126292002-07-18 Richard M. Stallman <rms@gnu.org>
12630
12631 * data.c (Fdefalias): Doc fix.
12632
126332002-07-17 Dave Love <fx@gnu.org>
12634
12635 * intervals.h (text_property_stickiness): Use P_.
12636
12637 * ccl.c: Remove `emacs' conditionals.
12638 (ccl_backtrace_table): Fix size spec.
12639 (ccl_driver): Fix type errors.
12640
126412002-07-16 Ken Raeburn <raeburn@gnu.org>
12642
12643 * alloc.c (xstrdup, make_string, make_unibyte_string)
12644 (make_multibyte_string, build_string): String pointer args now
12645 point to const.
12646 * charset.c (find_charset_in_text, c_string_width):
12647 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
12648 * fileio.c (report_file_error):
12649 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
12650 (count_combining_before, count_combining_after, insert_1_both):
12651 (insert, insert_and_inherit, insert_string):
12652 (insert_before_markers, insert_before_markers_and_inherit):
12653 * lread.c (intern, oblookup, hash_string):
12654 * minibuf.c (temp_echo_area_glyphs):
12655 * search.c (fast_c_string_match_ignore_case):
12656 * sysdep.c (emacs_open, set_file_times):
12657 * xfaces.c (xstricmp):
12658 * xdisp.c (store_frame_title, string_char_and_length):
12659 (message_dolog, message2, message2_nolog, set_message): Likewise.
12660 (set_message_1): Cast message string argument to const pointer.
12661 * editfns.c (general_insert_function): Insertion function now
12662 takes pointer to const for input data.
12663 * charset.h (find_charset_in_text, c_string_width):
12664 (parse_str_as_multibyte): Declarations updated.
12665 * dispextern.h (xstricmp): Declaration updated.
12666 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
12667 (count_size_as_multibyte, count_combining_before):
12668 (count_combining_after, insert_1, insert_1_both, message_dolog):
12669 (insert, insert_and_inherit, insert_before_markers)
12670 (insert_before_markers_and_inherit, set_message, message2):
12671 (message2_dolog, build_string, make_string, make_unibyte_string):
12672 (make_multibyte_string, intern, oblookup, report_file_error):
12673 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
12674 (emacs_open, xstrdup): Declarations updated.
12675 * systime.h (set_file_times): Declaration updated.
12676
12677 * charset.c (find_charset_in_text, lisp_string_width): Use const
12678 for pointer to lisp string data.
12679 * charset.h (FETCH_STRING_CHAR_ADVANCE):
12680 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
12681 * coding.c (Ffind_coding_systems_region_interval):
12682 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
12683 (Fmake_directory_internal, Fdelete_directory):
12684 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
12685 * fontset.c (font_family_registry, fs_query_fontset):
12686 (list_fontsets):
12687 * frame.c (Fframe_parameter):
12688 * keyboard.c (cmd_error_internal):
12689 * keymap.c (Fdescribe_buffer_bindings):
12690 * lread.c (complete_filename_p, openp):
12691 * minibuf.c (Fminibuffer_complete_word):
12692 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
12693 (face_before_or_after_it_pos, next_element_from_string):
12694 (get_overlay_arrow_glyph_row, display_mode_element):
12695 (decode_mode_spec_coding):
12696 * xterm.c (same_x_server): Likewise.
12697
12698 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
12699 settings of non-existent fields.
12700
12701 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
12702 copy a lisp value.
12703
12704 * lread.c (Fintern_soft): Use string macros instead of
12705 Lisp_String fields.
12706 * keyboard.c (echo_char, parse_modifiers_uncached):
12707 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
12708 * textprop.c (validate_interval_range, interval_of): Likewise.
12709
12710 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
12711
12712 * charset.h (FETCH_STRING_CHAR_ADVANCE)
12713 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
12714 XSTRING()->size_byte.
12715
12716 * lisp.h (SDATA, SREF): Produce rvalue.
12717 (SSET): New macro.
12718 * alloc.c (make_event_array): Use SSET for storing into a string.
12719 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
12720 a string.
12721 * casefiddle.c (casify_object): Use SSET.
12722 * charset.h (FETCH_STRING_CHAR_ADVANCE)
12723 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
12724 address of string contents.
12725 * data.c (Faref): Use SDATA.
12726 (Faset): Use SDATA, SSET.
12727 * dired.c (directory_files_internal): Use SSET.
12728 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
12729 (Fread_file_name): Use SREF, SSET.
12730 * fns.c (concat): Use SSET.
12731 (concat, Fdelete): Use SDATA.
12732 * insdel.c (insert_from_string_1): Use SDATA.
12733 * keyboard.c (Fevent_convert_list): Use SREF.
12734 * lread.c (Fload): Use SDATA, SSET.
12735 * macfns.c (validate_x_resource_name): Use SSET.
12736 * process.c (status_message): Use SSET.
12737 * search.c (wordify): Use SDATA.
12738 (Freplace_match): Use SREF.
12739 * w32fns.c (validate_x_resource_name): Use SSET.
12740 * xfns.c (validate_x_resource_name): Use SSET.
12741 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
12742
127432002-07-16 Richard M. Stallman <rms@gnu.org>
12744
12745 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
12746
12747 * xdisp.c (reconsider_clip_changes):
12748 Don't test prevent_redisplay_optimizations_p.
12749 (redisplay_internal): Test prevent_redisplay_optimizations_p
12750 along with clip_changed in some cases.
12751 (try_window_id): Likewise.
12752 (redisplay_window): New local var buffer_unchanged_p.
12753
12754 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
12755
12756 * process.c (create_process): Test USG_SUBTTY_WORKS.
12757 (process_send_signal): Clean up handling of GID.
12758 Detect errors in ioctls meant to set GID.
12759
12760 * window.c (temp_output_buffer_show):
12761 Don't set prevent_redisplay_optimizations_p.
12762
127632002-07-15 Juanma Barranquero <lektu@terra.es>
12764
12765 * eval.c (Fdefvaralias): Add docstring argument.
12766
127672002-07-15 Ken Raeburn <raeburn@gnu.org>
12768
12769 * lisp.h (STRING_INTERVALS): Produce rvalue.
12770 (STRING_SET_INTERVALS): New macro.
12771 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
12772 * fns.c (Fstring_as_multibyte): Likewise.
12773 * intervals.c (balance_possible_root_interval, delete_interval)
12774 (create_root_interval, copy_intervals_to_string): Likewise.
12775 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
12776 instead of 0.
12777
127782002-07-14 Ken Raeburn <raeburn@gnu.org>
12779
12780 * lisp.h (STRING_SET_CHARS): New macro.
12781 (SCHARS, SBYTES): Produce rvalues.
12782 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
12783 * fns.c (concat): Likewise.
12784 * lread.c (read_vector): Likewise.
12785
3419757d 12786 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
048addec 12787 (STRING_SET_UNIBYTE): New macro.
3419757d 12788 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
048addec
JD
12789 length of -1) changed to use STRING_SET_UNIBYTE.
12790 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12791 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
12792 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
12793 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
12794 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
12795 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
12796 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
12797 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
12798 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12799 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
12800 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
12801 STRING_BYTES or indirection changed to SCHARS, SBYTES,
12802 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
12803 unchanged for now.
12804
128052002-07-13 Kim F. Storm <storm@cua.dk>
12806
12807 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
12808
128092002-07-12 Richard M. Stallman <rms@gnu.org>
12810
12811 * fileio.c (Fwrite_region): Doc fix.
12812
12813 * print.c (print_error_message): Don't handle Vsignaling_function here.
12814
12815 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
12816 (command_loop_1): Avoid certain actions after memory-full error.
12817
12818 * eval.c (Fsignal): Don't call cancel_hourglass.
12819 For a memory-full error, don't call Vsignal_hook_function
12820 and don't set Vsignaling_function.
12821
12822 * process.c (process_send_signal): Add abort call.
12823
128242002-07-11 Markus Rost <rost@math.ohio-state.edu>
12825
12826 * keymap.c (Fkey_binding): Fix typo.
12827
128282002-07-11 Richard M. Stallman <rms@gnu.org>
12829
12830 * alloc.c (Vmemory_full): New variable.
3419757d 12831 (Vmemory_signal_data): Rename from memory_signal_data.
048addec
JD
12832 Uses changed.
12833 (syms_of_alloc): Defvar them.
12834 (memory_full, buffer_memory_full): Set Vmemory_full.
12835
12836 * lisp.h (Vmemory_full): Add declaration.
12837 (current_column, indented_beyond_p): Change declaration.
12838
12839 * indent.c (last_known_column): Declare as double, not float.
12840 (current_column, current_column_1, string_display_width)
12841 (position_indentation): Return `double'.
12842 (indented_beyond_p): Arg `column' is `double'. Callers changed.
12843
12844 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
12845 (back_to_previous_visible_line_start)
12846 (reseat_at_next_visible_line_start, next_element_from_buffer):
12847 Use `double', not `float', when calling indented_beyond_p.
12848
3419757d 12849 * s/hpux11.h (BROKEN_SA_RESTART): Define.
048addec
JD
12850
12851 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
12852
128532002-07-11 Juanma Barranquero <lektu@terra.es>
12854
12855 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
12856 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
12857 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
12858 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
12859 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
12860 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
12861
128622002-07-10 Juanma Barranquero <lektu@terra.es>
12863
d814862a
JB
12864 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
12865 All callers changed.
048addec
JD
12866
128672002-07-09 Stefan Monnier <monnier@cs.yale.edu>
12868
12869 * data.c (Fdefalias): Add an optional `docstring' argument.
12870 (set_internal, Fsetq_default): Use XCAR/XCDR.
12871
12872 * composite.c (HASH_VALUE, HASH_KEY):
12873 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
12874
128752002-07-09 Kenichi Handa <handa@etl.go.jp>
12876
12877 * callproc.c (Fcall_process): Fix previous change.
12878
128792002-07-07 Stefan Monnier <monnier@cs.yale.edu>
12880
12881 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
12882 Add support for hash-tables.
12883 (Ftry_completion): Return t even if the string appears multiple times.
12884
12885 * fns.c (Fnconc): Use XCDR.
12886 (Fprovide): Use CONSP and XCDR.
12887 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
12888 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
12889 (Fmake_hash_table): Accept `:size nil'.
12890 (Fmakehash): Delete: moved to subr.el.
12891 (syms_of_fns): Don't defsubr makehash.
12892
12893 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
12894 (HASH_TABLE_SIZE): Move from fns.c.
12895
128962002-07-07 Richard M. Stallman <rms@gnu.org>
12897
12898 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
12899 Instead just return 0 when there is something to be done.
12900 (try_scrolling): If make_cursor_line_fully_visible returns 0,
12901 retry scrolling as if cursor were off the bottom.
12902 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
12903 return CURSOR_MOVEMENT_MUST_SCROLL.
12904 (redisplay_window): If make_cursor_line_fully_visible returns 0,
12905 go to try_to_scroll.
12906
12907 * buffer.c (Fbuffer_local_value): Store current value into its binding
12908 so we get the up-to-date value for the binding that is loaded.
12909
12910 * eval.c (Fdefmacro): Doc fix.
12911
129122002-07-05 Dave Love <fx@gnu.org>
12913
12914 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
12915 correctly.
12916
12917 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
12918 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
12919 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
12920 CCL_LookupCharConstTbl.
12921 (syms_of_ccl): Defvar translation-hash-table-vector.
12922
129232002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12924
12925 * xdisp.c: Remove unused variable `face'.
12926
129272002-07-04 Juanma Barranquero <lektu@terra.es>
12928
12929 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
12930 obsolescence information.
12931
129322002-07-03 Andrew Choi <akochoi@shaw.ca>
12933
12934 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
12935 pattern. Search cache first.
12936 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
12937 for Japanese font.
12938 (XLoadQueryFont): Use it.
12939
129402002-07-02 Richard M. Stallman <rms@gnu.org>
12941
12942 * keymap.c (Fdefine_key): Doc fix.
12943
12944 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
12945
129462002-07-02 Juanma Barranquero <lektu@terra.es>
12947
12948 * keymap.c (syms_of_keymap): Fix typo.
12949
129502002-07-01 Andrew Choi <akochoi@shaw.ca>
12951
12952 * s/darwin.h: Define POSIX_SIGNALS.
12953
12954 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
12955 and FSRefMakePath to convert FSSpec returned with Apple Event to
12956 Posix pathname.
12957 (mac_initialize) [TARGET_API_MAC_CARBON]:
12958 Call init_required_apple_events and disable the `Quit' menu item
12959 provided automatically by the Carbon Toolbox.
12960
129612002-07-01 Dave Love <fx@gnu.org>
12962
12963 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
12964 for K&R.
12965
12966 * xterm.c: Fix prototype for K&R.
12967
12968 * term.c (costs_set): Declare static, non-initialized for pcc.
12969
129702002-07-01 Richard M. Stallman <rms@gnu.org>
12971
12972 * keyboard.c (timer_last_idleness_start_time): New variable.
12973 (timer_start_idle): Set that.
12974 (read_key_sequence): Use that to reset timer_idleness_start_time
12975 to previous value.
12976
12977 * window.c (Frecenter): With arg, set optional_new_start.
12978
12979 * xdisp.c (redisplay_internal): Make optional_new_start really work.
12980
12981 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
12982 buffer for completion.
12983
129842002-06-29 Ken Raeburn <raeburn@gnu.org>
12985
12986 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
12987
129882002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12989
12990 * keyboard.c (readable_filtered_events): New function that filters
12991 FOCUS_IN_EVENT depending on parameter.
12992 (readable_events): Calls readable_filtered_events, not filtering
12993 FOCUS_IN_EVENT.
12994 (get_filtered_input_pending): New function, filtering parameter passed
12995 to readable_filtered_events.
12996 (get_input_pending): Calls get_filtered_input_pending, not filtering
12997 FOCUS_IN_EVENT.
12998 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
12999 FOCUS_IN_EVENT.
13000
13001 * xterm.h (struct x_output): Add focus_state.
13002
13003 * xterm.c (x_focus_changed): New function.
13004 (x_detect_focus_change): New function.
13005 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
13006 EnterNotify and LeaveNotify to track X focus changes.
13007
130082002-06-28 Andreas Schwab <schwab@suse.de>
13009
13010 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
13011
130122002-06-27 Kim F. Storm <storm@cua.dk>
13013
13014 * xdisp.c: (mode_line_string_list, mode_line_string_face)
13015 (mode_line_string_face_prop): New variables.
13016 (store_mode_line_string): New function.
13017 (display_mode_element): Use store_mode_line_string to
13018 add mode-line string elements to mode_line_string_list
13019 when mode_line_string_list is non-nil.
13020 (Fformat_mode_line): Now returns propertized string by
13021 default. New arg NO-PROPS to ignore properties.
13022 (decode_mode_spec): Only add two dashes for %- in propertized
13023 mode-line string.
13024 (syms_of_xdisp): Init and staticpro mode_line_string_list.
13025
130262002-06-27 Stefan Monnier <monnier@cs.yale.edu>
13027
13028 * minibuf.c (minibuffer_completion_contents): Add return type.
13029
130302002-06-27 Juanma Barranquero <lektu@terra.es>
13031
13032 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
13033
130342002-06-26 Juanma Barranquero <lektu@terra.es>
13035
13036 * fileio.c (read_file_name_cleanup): Add missing return.
13037
130382002-06-26 Richard M. Stallman <rms@gnu.org>
13039
13040 * window.c (Frecenter): Don't set force_start flag.
13041
13042 * minibuf.c (do_completion, Fminibuffer_complete_word)
13043 (Fminibuffer_completion_help): Complete just the text before point.
13044 (minibuffer_completion_contents): New function.
13045
13046 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
13047
13048 * frame.c (frames_bury_buffer): Function deleted.
13049
130502002-06-25 Miles Bader <miles@gnu.org>
13051
13052 * callint.c (Fcall_interactively): When checking to see if doprnt hit
13053 the end of callint_message, allow for a terminating '\0'.
13054
130552002-06-24 Juanma Barranquero <lektu@terra.es>
13056
13057 * w32select.c: Include composite.h
13058
13059 * w16select.c: Likewise.
13060
130612002-06-24 Kenichi Handa <handa@etl.go.jp>
13062
13063 * callproc.c (Fcall_process): If code detection is necessary,
13064 call detect_coding directly here.
13065
13066 * coding.c (detect_eol): Preserve coding->cmp_data.
13067
13068 * w16select.c (Fw16_get_clipboard_data):
13069 * w32fns.c (w32_to_x_font):
13070 * w32select.c (Fw32_get_clipboard_data):
13071 * xselect.c (selection_data_to_lisp_data):
13072 * xterm.c (XTread_socket): Disable composition handling.
13073
130742002-06-24 Stefan Monnier <monnier@cs.yale.edu>
13075
13076 * print.c (temp_output_buffer_setup): Kill all local variables.
13077
130782002-06-22 Stefan Monnier <monnier@cs.yale.edu>
13079
13080 * lread.c (Fread): Remove redundant and imprecise declaration.
13081
13082 * xfns.c (check_x_display_info): Use check_x_frame.
13083
13084 * .gdbinit (xprintsym): Use the new `xname' field.
13085 (xsymbol): Use it.
13086
130872002-06-22 Jason Rumney <jasonr@gnu.org>
13088
13089 * w32fns.c (file_dialog_callback): New function.
13090 (Fx_file_dialog): Allow selecting directories as well as files.
13091
130922002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13093
13094 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 13095 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
13096
130972002-06-17 Andrew Choi <akochoi@shaw.ca>
13098
13099 * macterm.c (mac_scroll_area): Set foreground and backcolor to
13100 black and white before scrolling. Restore frame background and
13101 foreground color after scrolling.
13102 (do_window_update): Call XClearWindow before calling expose_frame.
13103 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
13104 FRAME_FOREGROUND_PIXEL of frame.
13105
13106 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
13107 test Mac command key as <ALT> key.
13108
131092002-06-17 Stefan Monnier <monnier@cs.yale.edu>
13110
13111 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
13112
13113 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
13114 Lookup keys in function-key-map immediately so that key-translation-map
13115 can be applied earlier.
13116 Remove function_key_possible and key_translation_possible, replaced
13117 by checking `keytran_start < t'.
13118
13119 * .gdbinit (xsymbol): Use the new `xname' field.
13120
131212002-06-17 Andrew Choi <akochoi@shaw.ca>
13122
13123 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
13124 test Mac command key as <ALT> key.
13125
13126 * mac.c (do_applescript): Call initialize_applescript if necessary
13127 when first called. Dispose of result_desc only when there is no error.
13128 (Fdo_applescript): Use %d format specifier instead of %ld.
13129
131302002-06-16 Andrew Choi <akochoi@shaw.ca>
13131
13132 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
13133 of FrontWindow for cases keyDown and autoKey.
13134
13135 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
13136 Vdefault_fontset to Monaco with mac-roman coding.
13137
13138 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
13139 init_process before and after inclusion of Carbon/Carbon.h, resp.
13140
13141 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
13142 cursor_gc.
13143 (add_font_name_table_entry): New function.
13144 (init_font_name_table): Use add_font_name_table_entry; add italic,
13145 bold, and bold-italic entries for truetype fonts.
13146
13147 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
13148 for Mac too.
13149 (try_font_list) [MAC_OS]: If no font matches given registry, try
13150 fonts with any registry matching face_family.
13151 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
13152
13153 * s/darwin.h: If autoconf detects the Ncurses library, define
13154 LIBS_TERMCAP to -lncurses to use it.
13155
131562002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
13157
13158 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
13159
131602002-06-15 Richard M. Stallman <rms@gnu.org>
13161
13162 * window.c (Fset_window_configuration): Explicitly preserve
13163 the point value that new_current_buffer had at the start.
13164
131652002-06-14 Juanma Barranquero <lektu@terra.es>
13166
13167 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
13168 Fix typos.
13169
131702002-06-14 Kim F. Storm <storm@cua.dk>
13171
13172 * insdel.c (insert_1_both, insert_from_string_1)
13173 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
13174 insert happened in the end_unchanged region. Otherwise, the
13175 redisplay may be confused and duplicate the last line in the
13176 buffer [seen after save-buffer when require-final-newline==t].
13177
131782002-06-13 Jason Rumney <jasonr@gnu.org>
13179
13180 * w32.c (init_environment): Remove EMACSLOCKDIR.
13181 (stat): Swap _S_IFDIR and _S_IFREG.
13182
131832002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13184
13185 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
13186 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
13187 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
13188 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
13189 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
13190 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
13191 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
13192 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
13193 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
13194 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
13195 SELECTION_REQUEST_EVENT, selection_clear_event to
13196 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
13197 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
13198 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
13199 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
13200 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
13201 no_event to NO_EVENT.
13202
132032002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13204
13205 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
13206
132072002-06-12 Stefan Monnier <monnier@cs.yale.edu>
13208
13209 * intervals.c (textget): Don't forget to `return'.
13210 (lookup_char_property): Use XCAR/XCDR.
13211
132122002-06-12 Juanma Barranquero <lektu@terra.es>
13213
13214 * xdisp.c (Fformat_mode_line): Fix typo.
13215
132162002-06-12 Kim F. Storm <storm@cua.dk>
13217
13218 * xdisp.c (Fformat_mode_line): New function.
13219 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
13220 (store_frame_title_char, store_frame_title): Use unconditionally.
13221 (init_xdisp): Defsubr Fformat_mode_line.
13222 Initialize frame_title_buf etc. unconditionally.
13223
132242002-06-11 Stefan Monnier <monnier@cs.yale.edu>
13225
13226 * keyboard.c (read_key_sequence):
13227 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
13228 things through those maps after downcasing events.
13229 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
13230 applies after function-key-map.
13231 Make sure that keytran can be done in the middle in the sequence.
13232 Be careful not to throw away events past the one we downcase.
13233
13234 * lread.c (read_integer): Remove unused var `tem'.
13235 (read1): Fix int/Lisp_Object mixup.
13236
13237 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
13238
132392002-06-11 Richard M. Stallman <rms@gnu.org>
13240
13241 * keyboard.c (readable_events): Ignore any number of
13242 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
13243
132442002-06-09 Miles Bader <miles@gnu.org>
13245
13246 * xfaces.c (Ftty_supports_face_attributes_p): New function.
13247 (parse_rgb_list, tty_lookup_color): New functions.
13248 (tty_defined_color): Use `tty_lookup_color' to do all the work.
13249 (color_distance, Fcolor_distance): New functions.
13250 (TTY_SAME_COLOR_THRESHOLD): New macro.
13251 (Qtty_color_standard_values): New variable.
13252 (syms_of_xfaces): Initialize new vars & functions.
13253
132542002-06-08 Colin Walters <walters@verbum.org>
13255
13256 * textprop.c (Vchar_property_alias_alist): New variable.
13257 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
13258
13259 * intervals.c (lookup_char_property): New function for looking up
13260 overlay and text properties, created from textget.
13261 (textget): Use it.
13262
13263 * intervals.h (lookup_char_property): Declare.
13264 (Vchar_property_alias_alist): Declare.
13265
13266 * buffer.c (Foverlay_get): Use lookup_char_property.
13267
132682002-06-07 Sam Steingold <sds@gnu.org>
13269
13270 * xselect.c (lisp_data_to_selection_data): Fix last change:
13271 *data_ret is not a Lisp string, while unibyte_string is.
13272
132732002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
13274
13275 * xselect.c (lisp_data_to_selection_data): Fix last change:
13276 set size_ret.
13277
132782002-06-07 Andreas Schwab <schwab@suse.de>
13279
13280 * m/amdx86-64.h: New file.
13281
132822002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
13283
13284 * fns.c (Fstring_make_unibyte): Doc fix.
13285
13286 * xselect.c (lisp_data_to_selection_data): If the requested type
13287 is STRING, call string_make_unibyte to encode the selected text
13288 as a string.
13289
13290 * window.c (Fset_window_hscroll): Doc fix.
13291
132922002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13293
13294 * fileio.c (choose_write_coding_system):
13295 Call select-safe-coding-system properly.
13296
132972002-06-03 Richard M. Stallman <rms@gnu.org>
13298
13299 * xdisp.c (message_with_string): Error if STRING is not a string.
13300
13301 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
13302
13303 * fileio.c (choose_write_coding_system): Pass FILE arg to
13304 Vselect_safe_coding_system_function.
13305
133062002-06-03 Ken Raeburn <raeburn@gnu.org>
13307
13308 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
13309
133102002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
13311
13312 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
13313 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
13314 * keymap.c (describe_command): Likewise.
13315 * minibuf.c (read_minibuf): Likewise.
13316
13317 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
13318 Cast `current_column' return value to int.
13319 (back_to_previous_visible_line_start)
13320 (reseat_at_next_visible_line_start, next_element_from_buffer):
13321 Cast `indented_beyond_p' 3rd arg to float.
13322
13323 * indent.c (last_known_column): Now a float.
13324 (current_column_1, position_indentation, current_column)
13325 (string_display_width): Return float.
13326 (Fcurrent_column): Cast `current_column' return value to int.
13327 (Fcurrent_indentation): Cast `position_indentation' retval to int.
13328 (indented_beyond_p): Third arg now a float.
13329 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
13330
13331 * lisp.h (current_column): Now returns float.
13332 (indented_beyond_p): 3rd arg now a float.
13333
133342002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
13335
13336 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
13337 is Qcompound_text_with_extensions.
13338
13339 * xselect.c (lisp_data_to_selection_data): Always set selection
13340 type as string if x_encode_text returns streingp non-NULL.
13341
13342 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
13343
133442002-05-30 Richard M. Stallman <rms@gnu.org>
13345
13346 * window.c (Fset_window_configuration): Correct the handling
13347 of point in current buffer, to work with multiple windows.
13348
133492002-05-29 Colin Walters <walters@verbum.org>
13350
13351 * lread.c (Fread_from_string): Don't depend on order of evaluation
13352 for C function parameters.
13353
133542002-05-28 Richard M. Stallman <rms@gnu.org>
13355
13356 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
13357 way for blinked-off state and for a nonselected window.
13358
13359 * window.c (window_scroll_pixel_based): Don't call Fbolp;
13360 instead, see if the new start pos is at beginning of line.
13361
13362 * fileio.c (Fwrite_region): If START is a string, don't
13363 make any annotations.
13364
13365 * eval.c (syms_of_eval): Doc fix.
13366
133672002-05-28 Colin Walters <walters@debian.org>
13368
13369 * emacs.c (USAGE1): Add --no-splash.
13370 (standard_args): Ditto.
13371
133722002-05-28 Colin Walters <walters@gnu.org>
13373
13374 * lread.c (readchar_count): New variable.
13375 (readchar): Increment it.
13376 (unreadchar): Decrement it.
13377 (read_multibyte): Decrement it.
13378 (Vread_with_symbol_positions): New variable.
13379 (Vread_symbol_positions_list): New variable.
13380 (read_internal_start): New function, created from Fread and
13381 Fread_from_string. Handle Vread_symbol_positions_list and
13382 Vread_with_symbol_positions.
13383 (readevalloop, Fread, Fread_from_string): Use it.
13384 (read1): Use readchar_count to add symbol positions to
13385 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
13386 (syms_of_lread): DEFVAR_LISP and initialize them.
13387
13388 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
13389 (substitute_object_recurse, substitute_object_in_subtree)
13390 (substitute_in_interval): Prototype.
13391 (read_multibyte): Return c if it's less than zero.
13392
133932002-05-28 Kim F. Storm <storm@cua.dk>
13394
13395 * fileio.c (Fread_file_name_internal): Added brute-force
13396 speed up for using predicate file-directory-p.
13397
133982002-05-28 Kim F. Storm <storm@cua.dk>
13399
13400 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
13401 New variables.
13402 (syms_of_fileio): DEFVAR_LISP them.
13403 (read_file_name_cleanup): New unwind function.
13404 (Fread_file_name_internal): Only return completions satifying
13405 Vread_file_name_predicate. Temporarily unwind protect and rebind
13406 default-directory while checking completions against the predicate.
13407 (Fread_file_name): Added PREDICATE argument. Specbind it to
13408 Vread_file_name_predicate during completion.
13409 Call Vread_file_name_function to read the file name if non-nil.
13410
13411 * lisp.h (Fread_file_name): Now has 6 args.
13412
13413 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
13414 predicate for Fread_file_name when reading directory name.
13415 Supply Qnil for predicate in other calls to Fread_file_name.
13416
134172002-05-26 Miles Bader <miles@gnu.org>
13418
13419 * term.c (tty_capable_p): New function.
13420 * dispextern.h (tty_capable_p): New function declaration.
13421 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
13422 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
13423
134242002-05-23 Stefan Monnier <monnier@cs.yale.edu>
13425
13426 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
13427 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
13428 (Vwrite_region_annotate_functions): Docstring fix.
13429
134302002-05-23 Kim F. Storm <storm@cua.dk>
13431
13432 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
13433 phys_cursor's hpos is overwritten. This is still not completely
13434 correct, as it doesn't really make sense to use hpos at all to
13435 get the cursor glyph (as that is relative to the width of the
13436 characters on the line, which may have changed during the update).
13437
134382002-05-22 Jason Rumney <jasonr@gnu.org>
13439
13440 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
13441 Lisp_Object.
13442 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
13443 Use modified enumfont_t struct.
13444
13445 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
13446
13447 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
13448 Handle the `hbar' cursor type.
13449 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
13450
13451 * w32fns.c (Qhbar): New variable.
13452 (x_specified_cursor_type): Use it.
13453
134542002-05-21 Ken Raeburn <raeburn@gnu.org>
13455
13456 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
13457 now, when the address is needed.
13458
134592002-05-21 Colin Walters <walters@gnu.org>
13460
13461 * Makefile.in (shortlisp): Add font-core.el.
13462
134632002-05-20 Richard M. Stallman <rms@gnu.org>
13464
13465 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
13466
13467 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
13468 equivalent key bindings here.
13469
134702002-05-20 Ken Raeburn <raeburn@gnu.org>
13471
13472 Change symbol structure to contain a lisp object for the symbol
13473 name:
13474 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
13475 object field named "xname".
13476 (SYMBOL_NAME): New macro.
13477 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
13478 name field.
13479 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
13480 (mark_object, gc_sweep): Use symbol xname field and XSTRING
13481 instead of name field.
13482 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
13483 SYMBOL_NAME instead of XSYMBOL and name field.
13484 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
13485 instead of XSYMBOL and name field.
13486 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
13487 and SYMBOL_NAME instead of XSYMBOL and name field.
13488 * coding.c (Fread_coding_system, code_convert_region1)
13489 (code_convert_string1, code_convert_string_norecord)
13490 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
13491 XSYMBOL and name field.
13492 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
13493 (Fmake_variable_buffer_local, Fmake_local_variable)
13494 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
13495 of XSYMBOL and name field.
13496 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
13497 XSYMBOL and name field.
13498 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
13499 instead of XSYMBOL and name field.
13500 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
13501 XSYMBOL and name field.
13502 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
13503 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
13504 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
13505 instead of XSYMBOL and name field.
13506 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
13507 (parse_modifiers, apply_modifiers, Fevent_convert_list)
13508 (parse_solitary_modifier, Fexecute_extended_command):
13509 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
13510 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
13511 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
13512 of XSYMBOL and name field.
13513 (describe_command, describe_translation): Use SYMBOL_NAME and
13514 assignment instead of XSYMBOL and name field and XSETSTRING.
13515 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
13516 instead of XSYMBOL and name field.
13517 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
13518 name field and XSETSTRING.
13519 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
13520 of XSYMBOL and name field.
13521 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
13522 assignment instead of XSYMBOL and name field and XSETSTRING.
13523 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
13524 XSTRING instead of XSYMBOL and name field.
13525 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
13526 and XSTRING instead of XSYMBOL and name field.
13527 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
13528 and XSTRING instead of XSYMBOL and name field.
13529 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
13530 XSTRING instead of XSYMBOL and name field.
13531 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
13532 of XSYMBOL and name field.
13533 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
13534 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
13535
135362002-05-19 Ken Raeburn <raeburn@gnu.org>
13537
13538 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
13539 and XCDR real rvalues in most configurations.
13540
13541 * buffer.c (fix_overlays_in_range, fix_overlays_before):
13542 Don't take the address of the cdr part of a cons cell; instead, track
13543 the parent cell and call XSETCDR, or set the variable for the head
13544 of the list if we haven't started down the list yet.
13545
135462002-05-19 Richard M. Stallman <rms@gnu.org>
13547
13548 * doc.c (reread_doc_file): Don't ask for confirmation.
13549
135502002-05-18 Jason Rumney <jasonr@gnu.org>
13551
13552 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
13553 (xbm_load_image): Use it.
13554 (xbm_load): Ditto.
13555 (xbm_read_bitmap_data): Reverted to xfns.c version.
13556 From David Ponce <david@dponce.com>.
13557
135582002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
13559
13560 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
13561 2.02 and later.
13562
135632002-05-16 Juanma Barranquero <lektu@terra.es>
13564
13565 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
13566
135672002-05-15 Stefan Monnier <monnier@cs.yale.edu>
13568
13569 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
13570 meaningful test.
13571 (read_char_minibuf_menu_prompt): Fix typo.
13572
135732002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
13574
13575 * eval.c (Fcommandp): Doc fix.
13576
135772002-05-13 Stefan Monnier <monnier@cs.yale.edu>
13578
13579 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
13580 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
13581 (Fset_keymap_parent): Gcpro a bit more.
13582 (access_keymap): Gcpro around meta_map call and around the main loop.
13583 (get_keyelt): Gcpro when following indirect references.
13584 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
13585 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
13586 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
13587 Remove useless ad-hoc remap code.
13588
135892002-05-13 Richard M. Stallman <rms@gnu.org>
13590
13591 * search.c (search_buffer): Give up boyer moore search if inverse
13592 translation change charset_base.
13593
135942002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
13595
13596 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
13597 characters is carried over from the previous block of text, adjust
13598 coding->produced to account for the extra character.
13599
136002002-05-11 Andreas Schwab <schwab@suse.de>
13601
13602 * coding.c (intersection): Keep the elements of the returned list
13603 in the same order as in the first list.
13604
136052002-05-11 Kim F. Storm <storm@cua.dk>
13606
3419757d 13607 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
048addec
JD
13608 only update cmm_size if realloc actually succeeds.
13609 Testing with initial size of 2 elements revealed that using
13610 realloc on GNU/Linux would cause a random trap in xmalloc
13611 later on, so I rewrote the code to use malloc/bcopy/free instead
13612 of realloc.
13613
136142002-05-10 Jason Rumney <jasonr@gnu.org>
13615
13616 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
13617
136182002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
13619
13620 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
13621 parens, to ensure correct evaluation order.
13622
136232002-05-10 Kim F. Storm <storm@cua.dk>
13624
13625 * keymap.c (Vemulation_mode_map_alists): New variable.
13626 (syms_of_keymap): DEFVAR_LISP it.
13627 (current_minor_maps): Process keymap alists in that list before
13628 minor-mode-overriding-map-alist and minor-mode-map-alist.
13629
136302002-05-09 Richard M. Stallman <rms@gnu.org>
13631
13632 * search.c (Freplace_match): Doc fix.
13633
136342002-05-09 Kim F. Storm <storm@cua.dk>
13635
13636 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
13637 Enlarge cursor rectangle drawn around image with non-zero relief.
13638
13639 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
13640 Enlarge cursor rectangle drawn around image with non-zero relief.
13641
13642 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
13643 Enlarge cursor rectangle drawn around image with non-zero relief.
13644
136452002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
13646
13647 * xselect.c (lisp_data_to_selection_data): Don't set selection
13648 type if comes from the Lisp object's car. If the selection
13649 contains a pure ASCII text, always return QSTRING as its type.
13650
136512002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13652
13653 * mac.c (mac-cut-function): Doc fix.
13654
136552002-05-05 Richard M. Stallman <rms@gnu.org>
13656
13657 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
13658
136592002-05-04 Jason Rumney <jasonr@gnu.org>
13660
13661 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
13662 for event-click-count.
13663
13664 * process.c (init_process): Only add server subfeature if we can
13665 use non-blocking I/O.
13666
136672002-05-04 Andrew Choi <akochoi@shaw.ca>
13668
13669 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
13670 repeatedly.
13671
136722002-05-03 Jason Rumney <jasonr@gnu.org>
13673
13674 * process.c (Fmake_network_process): Only support server sockets
13675 when we can make them non-blocking.
13676
13677 * s/ms-w32.h (HAVE_SELECT): Define.
13678
13679 * w32.h (FILE_NDELAY): New flag.
13680
13681 * w32.c (sys_getpeername, fcntl): New functions.
13682 (_sys_read_ahead): Temporarily block on non-blocking sockets.
13683
13684 * w32proc.c: include sys/file.h.
13685
136862002-05-03 Colin Walters <walters@verbum.org>
13687
13688 * callproc.c (Vgame_score_directory): Renamed to
13689 Vshared_game_score_directory.
13690
136912002-04-30 Richard M. Stallman <rms@gnu.org>
13692
13693 * s/gnu.h [emacs]: Include stdio.h.
13694 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
13695
13696 * eval.c (do_autoload): Error if called while preparing to dump.
13697
13698 * fns.c (Frequire): Error if need to load while preparing to dump.
13699
137002002-04-28 Colin Walters <walters@verbum.org>
13701
13702 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
13703 Default to "~/.emacs.d/games".
13704
137052002-04-29 Stefan Monnier <monnier@cs.yale.edu>
13706
13707 * lread.c (openp): Change arg exec_only to predicate.
13708 (build_load_history): Use XCAR/XCDR.
13709 (Flocate_file_internal): New fun.
13710 (syms_of_lread): Defsubr it.
13711 (Fload): Update call to openp.
13712
13713 * lisp.h (openp): Update prototype.
13714
13715 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
13716 * w32proc.c (sys_spawnve):
13717 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
13718 * w32.c (check_windows_init_file):
13719 * sound.c (Fplay_sound_internal):
13720 * process.c (Fstart_process):
13721 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
13722 * mac.c (run_mac_command):
13723 * emacs.c (init_cmdargs):
13724 * callproc.c (Fcall_process): Update call to openp.
13725
13726 * textprop.c (remove_properties): Don't use XCAR without CONSP.
13727
13728 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
13729
137302002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13731
13732 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
13733 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
13734
137352002-04-28 Richard M. Stallman <rms@gnu.org>
13736
13737 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
13738
13739 * eval.c (Fcommandp): New arg for_call_interactively.
13740 * lisp.h (Fcommandp): Declare new arg.
13741
137422002-04-28 Jason Rumney <jasonr@gnu.org>
13743
13744 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
13745
13746 * w32.c (stat, fstat): Use file index information to generate
13747 inodes for directories where available.
13748
137492002-04-26 Andrew Choi <akochoi@shaw.ca>
13750
13751 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
13752 [HAVE_CARBON]: Include Mac object files.
13753
13754 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
13755 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
13756 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
13757 MAC_OSX, and MAC_OS instead of macintosh.
13758
13759 * editfns.c [MAC_OS8]: Include stdio.h.
13760
13761 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
13762
13763 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
13764 Apple Monaco.
13765
78819ebb 13766 * process.c (QCfamily, QCfilte): Declare extern.
048addec
JD
13767 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
13768 calling select.
13769
13770 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
13771
13772 * tparam.c [MAC_OSX]: Don't define BC and UP.
13773
13774 * config.in [HAVE_CARBON]: Add.
13775
13776 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
13777 Move here from mac/src and mac/inc.
13778
13779 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
13780
137812002-04-26 Gerd Moellmann <gerd@gnu.org>
13782
13783 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
13784 Compute phys_cursor_width from the x position returned
13785 by x_draw_glyhs, which is cheaper.
13786 (x_display_and_set_cursor): Compute the buffer-local value
13787 of `cursor-in-non-selected-windows' only when needed.
13788
137892002-04-25 Gerd Moellmann <gerd@gnu.org>
13790
13791 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
13792 cursor on a stretch glyph has a width that depends on
13793 x_stretch_cursor_p.
13794
137952002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13796
13797 * abbrev.c (abbrev-start-location): Doc fix.
13798
13799 * indent.c (Fvertical_motion): Fix last change.
13800
138012002-04-25 Gerd Moellmann <gerd@gnu.org>
13802
13803 * indent.c (Fvertical_motion): Move to the start of the line
13804 containing PT before moving up or down.
13805
138062002-04-24 Gerd Moellmann <gerd@gnu.org>
13807
13808 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
13809 case of writing a whole row, more or less analogous to the case of
13810 writing only parts of a row.
13811
13812 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
13813 0 for NO_CURSOR.
13814
13815 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
13816
138172002-04-23 Colin Walters <walters@verbum.org>
13818
13819 * buffer.c (syms_of_buffer): Doc fix.
13820
138212002-04-23 Gerd Moellmann <gerd@gnu.org>
13822
13823 * xterm.c (notice_overwritten_cursor): Handle the special case
13824 of the cursor being in the first blank non-text line at the
13825 end of a window.
13826
13827 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
13828 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
13829 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
13830 bar cursors only, to make phys_cursor_width contain what its name
13831 suggests.
13832 (notice_overwritten_cursor): Consider the cursor image erased if
13833 the output area intersects the cursor image in y-direction.
13834
138352002-04-23 Simon Marshall <simon@gnu.org>
13836
13837 * xfns.c (x_set_mouse_color): Change default for cross_cursor
13838 to XC_hand2.
13839
138402002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13841
13842 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
13843
138442002-04-22 Kim F. Storm <storm@cua.dk>
13845
13846 * textprop.c (remove_properties): Fixed trap for malformed plist.
13847
138482002-04-22 Richard M. Stallman <rms@gnu.org>
13849
13850 * cmds.c (Fend_of_line): Handle intangible text in mid line.
13851
13852 * window.c (make_window): Initialize height_fixed_p,
13853 last_cursor_off_p, and p->cursor_off_p slots.
13854
138552002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13856
13857 * fns.c (use-dialog-box): Doc fix.
13858
138592002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13860
13861 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
13862 variables `row', `i' and `area'.
13863 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
13864 toolkit library.
13865
138662002-04-19 Stefan Monnier <monnier@cs.yale.edu>
13867
13868 * xfaces.c (clear_font_table): Don't free the default font of
13869 a frame even if it's on another display.
13870 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
13871 that could be Qt.
13872
138732002-04-19 Juanma Barranquero <lektu@terra.es>
13874
13875 * indent.c (Fmove_to_column): Remove unused local variable
13876 `next_boundary_byte'.
13877 (current_column_1): Likewise.
13878
138792002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
13880
13881 * msdos.c (Qhbar): New variable.
13882 (syms_of_msdos): Intern and staticpro it.
13883 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
13884 cursor type.
13885
138862002-04-19 Dave Lambert <dlambert@acm.org>
13887
13888 Theses change implement an underscore-like (`hbar') cursor.
13889
13890 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
13891
13892 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
13893 Handle the `hbar' cursor type.
13894 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
13895
13896 * xfns.c (Qhbar): New variable.
13897 (syms_of_xfns): Intern and staticpro it.
13898 (x_specified_cursor_type): Handle `hbar' cursor.
13899
13900 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
13901 not defined.
13902
139032002-04-18 Richard M. Stallman <rms@gnu.org>
13904
13905 * textprop.c (remove_properties): New arg LIST allows scanning
13906 either a list or a plist.
13907 (interval_has_some_properties_list): New function, like
13908 interval_has_some_properties using list instead of plist.
13909 All callers changed.
13910 (Fremove_list_of_text_properties): New function.
13911 (syms_of_textprop): Defsubr it.
13912
139132002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
13914
13915 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
13916
139172002-04-17 Juanma Barranquero <lektu@terra.es>
13918
13919 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
13920
139212002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
13922
13923 * window.c (coordinates_in_window): Don't report on margin area
13924 if its width is zero.
13925
139262002-04-16 Jason Rumney <jasonr@gnu.org>
13927
13928 * w32fns.c (Fx_file_dialog): Decode file name before using.
13929
13930 * w32term.c (construct_drag_n_drop): Likewise.
13931
139322002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
13933
13934 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
13935 store load-history in pure space.
13936
13937 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
13938
139392002-04-16 Stefan Monnier <monnier@cs.yale.edu>
13940
13941 * xterm.c (Qlatin_1, Qutf_8): New vars.
13942 (syms_of_xterm): Initialize them.
13943 (XTread_socket): Eliminate incorrect optimization that tried to avoid
13944 decoding the output of X*LookupString.
13945 Always use latin-1 to decode the output of XLookupString.
13946 Try Xutf8LookupString if XmbLookupString failed.
13947
13948 * region-cache.c (new_region_cache): Use BEG.
13949
139502002-04-16 Gerd Moellmann <gerd@gnu.org>
13951
13952 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
13953 configuration files.
13954 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
13955 returns 0.
13956
139572002-04-15 Andreas Schwab <schwab@suse.de>
13958
13959 * config.in: Regenerated using autoheader.
13960
13961 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
13962 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
13963 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
13964 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
13965 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
13966 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
13967 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
13968 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
13969 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
13970 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
13971 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
13972 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
13973 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
13974 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
13975 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
13976 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
13977 STACK_DIRECTION, now set by autoconf.
13978
139792002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13980
13981 * dispnew.c (marginal_area_string): Sort arguments.
13982
13983 * dispextern.h (marginal_area_string): Add prototype.
13984
139852002-04-13 Richard M. Stallman <rms@gnu.org>
13986
13987 * fileio.c (Finsert_file_contents):
13988 Don't call temp_output_buffer_setup--do just part, by hand.
13989
13990 * coding.c (run_pre_post_conversion_on_str):
13991 Don't call temp_output_buffer_setup--do just part, by hand.
13992
13993 * keyboard.c (command_loop_1): Don't call start_hourglass
13994 or cancel_hourglass when executing a macro.
13995
13996 * marker.c (count_markers): New function.
13997
13998 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
13999 grow without limit. Move recently used elements to the front.
14000
140012002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
14002
14003 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
14004
140052002-04-12 Gerd Moellmann <gerd@gnu.org>
14006
14007 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
14008 rows marginal areas.
14009 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
14010 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
14011
14012 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
14013
140142002-04-12 Dave Love <fx@gnu.org>
14015
14016 * dispnew.c (marginal_area_string): New.
14017
14018 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
14019 (Qleft_margin, Qright_margin): Declare.
14020 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
14021
14022 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
14023 note_mode_line_highlight and extended.
14024
14025 * keyboard.c (Qleft_margin, Qright_margin): Declare.
14026 (make_lispy_event): Deal with mouse events in margins.
14027
140282002-04-12 Stefan Monnier <monnier@cs.yale.edu>
14029
14030 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
14031
14032 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
14033 than deactivating the mark if tmm is set to `lambda'.
14034 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
14035 Use a single event for HELP_EVENT.
14036 (Fexecute_extended_command): Save last_point_position.
14037
140382002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14039
14040 * lisp.h (Fpropertize): Add prototype.
14041
14042 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
14043
140442002-04-10 Colin Walters <walters@verbum.org>
14045
14046 * config.in: Add HAVE_SHARED_GAME_DIR.
14047
14048 * callproc.c: (Vgame_score_directory): New variable.
14049 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
14050
140512002-04-10 Richard M. Stallman <rms@gnu.org>
14052
14053 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
14054
140552002-04-09 Stefan Monnier <monnier@cs.yale.edu>
14056
14057 * minibuf.c (read_minibuf): Use empty_string.
14058 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
14059 Short-circuit the search as soon as it "failed".
14060 (Fall_completions): Allow lambda forms and lists of strings for alist.
14061 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
14062 when require_match is nil.
14063 (Ftest_completion): Rename from `test_completion' and export to elisp.
14064 Call the predicate also when alist is a list.
14065 Obey Vcompletion_regexp_list.
14066 (do_completion, Fminibuffer_complete_and_exit): Use it.
14067 (Fassoc_string): Rename from `assoc_for_completion'.
14068 Allow list of strings as well and export to elisp.
14069
140702002-04-08 Stefan Monnier <monnier@cs.yale.edu>
14071
14072 * puresize.h (BASE_PURESIZE): Increase to 900KB.
14073
140742002-04-08 Juanma Barranquero <lektu@terra.es>
14075
14076 * w32.c (sys_accept): Don't hide variable `s'.
14077
140782002-04-05 Gerd Moellmann <gerd@gnu.org>
14079
14080 * callint.c (Fcall_interactively): Use INTEGERP instead of
14081 NUMBERP for checking Vhistory_length.
14082
140832002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14084
14085 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
14086 Doc fix to reflect it.
14087
140882002-04-04 Richard M. Stallman <rms@gnu.org>
14089
14090 * xdisp.c (display_mode_element): New arg RISKY.
14091 Disregard text props found or specified within a variable
14092 that isn't marked risky-local-variable.
14093 (Qrisky_local_variable): New variable.
14094 (syms_of_xdisp): Init and staticpro it.
14095
140962002-04-04 Stefan Monnier <monnier@cs.yale.edu>
14097
14098 * undo.c (record_point): New fun.
14099 (record_delete, record_insert): Use it.
14100
141012002-04-03 Juanma Barranquero <lektu@terra.es>
14102
14103 * doc.c (Fdocumentation): Add missing parentheses.
14104 (Fdocumentation_property): Likewise.
14105
141062002-04-03 Stefan Monnier <monnier@cs.yale.edu>
14107
14108 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
14109 data is 0, just return nil.
14110
141112002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
14112
14113 * msdos.c (syms_of_msdos): Fix last change with
14114 mouse_autoselect_window.
14115
141162002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14117
14118 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
14119 mouse_autoselect_window.
14120
141212002-04-02 Stefan Monnier <monnier@cs.yale.edu>
14122
14123 * keyboard.c (make_lispy_event): Handle unknown keysyms together
14124 with system-specific keysyms. Use it also for unknown function keys.
14125
14126 * doc.c (reread_doc_file): Return whether reload was attempted.
14127 (Fdocumentation, Fdocumentation_property): Don't try to reload
14128 if the doc is 0 and only ask once.
14129
14130 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
14131
141322002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
14133
14134 * keyboard.c (read_char): If the event was Qselect_window,
14135 restore timer_idleness_start_time to its previous value.
14136
14137 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
14138
141392002-04-01 Stefan Monnier <monnier@cs.yale.edu>
14140
14141 * region-cache.c (new_region_cache): Use BEG.
14142
14143 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
14144 Use BEG and BEG_BYTE.
14145
14146 * doc.c (get_doc_string): Return nil if the location is wrong.
14147 (reread_doc_file): New fun.
14148 (Fdocumentation, Fdocumentation_property):
14149 Call it if get_doc_string fails.
14150 (Fsnarf_documentation): Make it work for a dumped Emacs.
14151
14152 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
14153 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
14154
14155 * charset.c (Fstring): Allow 0 arguments.
14156
14157 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
14158
14159 * process.c (DATAGRAM_CONN_P, list_processes_1)
14160 (Fprocess_datagram_address, Fset_process_datagram_address)
14161 (Fset_network_process_options, server_accept_connection):
14162 Fix some int/Lisp_Object confusions (thank you union types).
14163
141642002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14165
14166 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
14167
14168 * w32term.c: Likewise.
14169 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
14170
14171 * keyboard.c (Qselect_window): New symbol.
14172 (head_table): Use it.
14173 (keys_of_keyboard): Bound select-window event to handle-select-window.
14174 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
14175
14176 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
14177 (last_window): New variable.
14178 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
14179 (note_mouse_movement): Remove reimplemented code in #if 0.
14180 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
14181 Emacs windows.
14182
14183 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
14184
141852002-03-31 Gerd Moellmann <gerd@gnu.org>
14186
14187 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
14188 Callers changed.
14189
141902002-03-30 Richard M. Stallman <rms@gnu.org>
14191
14192 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
14193 loop whenever it stops making progress.
14194
14195 * widget.c (set_frame_size): Don't call change_frame_size.
14196
141972002-03-30 Gerd Moellmann <gerd@gnu.org>
14198
14199 * dispnew.c (direct_output_for_insert):
14200 Call mark_window_display_accurate.
14201
142022002-03-29 Jason Rumney <jasonr@gnu.org>
14203
14204 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
14205
142062002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
14207
14208 * Makefile.in (lread.o): Depend on coding.h.
14209
14210 * lread.c (openp, Fload): Encode the file name before passing it
14211 to `stat', `access', and `emacs_open'.
14212 (openp): GCPRO the encoded file name. Don't recompute Lisp
14213 strings unnecessarily.
14214
142152002-03-29 Kim F. Storm <storm@cua.dk>
14216
14217 * fns.c (Flax_plist_put): Doc fix.
14218
142192002-03-28 Miles Bader <miles@gnu.org>
14220
14221 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
14222
142232002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14224
14225 * process.c (set-network-process-options): Add usage.
14226 (make-network-process): Doc fix.
14227
142282002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
14229
14230 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
14231
142322002-03-26 Richard M. Stallman <rms@gnu.org>
14233
14234 * fns.c (Fsubstring_no_properties): New function.
14235 (Flax_plist_get, Flax_plist_put): New functions.
14236 (syms_of_fns): defsubr them.
14237
14238 * xdisp.c (update_menu_bar): Test only update_mode_lines;
14239 don't test or alter w->update_mode_line.
14240
14241 * window.c (Fdisplay_buffer): Doc fix.
14242
142432002-03-24 Richard M. Stallman <rms@gnu.org>
14244
14245 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
14246
142472002-03-24 Gerd Moellmann <gerd@gnu.org>
14248
14249 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
14250 (Fdefmacro): Handle `(declare ...)'.
14251 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
14252 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
14253
142542002-03-24 Jason Rumney <jasonr@gnu.org>
14255
14256 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
14257 (xbm_file_p): Add prototypes.
14258 (xbm_format, xbm_image_p): Sync with xfns.c.
14259 (reflect_byte): New function.
14260 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
14261 (xbm_load_image): Create bitmaps with a depth of 1.
14262 (init_xfns): Enable XBM images.
14263
142642002-03-23 Jason Rumney <jasonr@gnu.org>
14265
14266 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
14267 correctly. Do not pass up_modifier to keyboard buffer.
14268
14269 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
14270
142712002-03-22 Stefan Monnier <monnier@cs.yale.edu>
14272
14273 * Makefile.in (bootstrapclean): New target.
14274 (bootstrap-temacs, bootstrap-doc): Remove.
14275 (bootstrap-emacs): Use a bog-standard `temacs'.
14276 Don't bother to build a DOC file.
14277
14278 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
14279
14280 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
14281 in temacs even if !CANNOT_DUMP.
14282 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
14283
14284 * alloc.c (check_pure_size): Only output a warning.
14285
142862002-03-22 Jason Rumney <jasonr@gnu.org>
14287
14288 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
14289 supported.
14290
14291 * w32term.c (zv_bits): Declare as short, for word alignment.
14292 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
14293 (syms_of_w32term): Define x-use-underline-position-properties.
14294
14295 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
14296 (clear_image_cache): Block input, fix logic, clear matrices in
14297 all frames that share this cache.
14298
142992002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
14300
14301 * emacs.c (main): Update the Copyright year in the blurb printed
14302 by "emacs --version".
14303
14304 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
14305
14306 * xterm.c (XTread_socket): If XK_ISO_Lock and
14307 XK_ISO_Last_Group_Lock are defined, handle keysyms between
14308 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
14309
143102002-03-21 Kim F. Storm <storm@cua.dk>
14311
14312 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
14313 menu-bar bindings in keymap and local-map properties _are_ used.
14314 But try keymap property first in accordance with 2002-01-03 patch.
14315 Added comment describing why this is not always reliable.
14316 (tool_bar_items): Ditto for tool-bar.
14317
143182002-03-21 Jason Rumney <jasonr@gnu.org>
14319
14320 * w32fns.c (x_clear_image_1): Disable color table code.
14321
143222002-03-21 Kim F. Storm <storm@cua.dk>
14323
14324 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
14325 removed the wrong version of the DEFUN macro; fixed it.
14326
14327 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
14328 Fmember rather than Fmemq).
14329 (Fprovide): Check that subfeatures is a list.
14330
14331 * process.c (QCfeature, QCdatagram): Removed variables.
14332 (QCtype, Qdatagram): New variables.
14333 (network_process_featurep): Removed function.
14334 (Fmake_network_process): Removed :feature check.
14335 Use :type 'datagram instead of :datagram t to create a datagram
14336 socket. This allows us to add other connection types (e.g. raw
14337 sockets) later in a consistent manner.
14338 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
14339 supported subfeatures for feature make-network-process.
14340 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
14341 Intern and staticpro QCtype and Qdatagram.
14342 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
14343
14344 * xfns.c: (QCtype): Remove duplicate declaration and
14345 initialization (is now declared in process.c).
14346
14347 * w32fns.c: (QCtype): Remove duplicate declaration and
14348 initialization (is now declared in process.c).
14349
143502002-03-21 Richard M. Stallman <rms@gnu.org>
14351
14352 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
14353 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
14354 when jumping to `fail' to avoid undoing reg changes in the
14355 last iteration of the loop.
14356 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
14357
14358 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
14359 Depend on process.h.
14360
143612002-03-20 Jason Rumney <jasonr@gnu.org>
14362
14363 Most of the following changes are still conditional on HAVE_IMAGES
14364 which is not set by default on Windows.
14365
14366 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
14367
14368 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
14369 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
14370 (four_corners_best, x_clear_image_1, x_clear_image)
14371 (x_alloc_image_color, postprocess_image)
14372 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
14373 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
14374 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
14375
14376 * w32gui.h (struct XImage): Define.
14377
14378 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
14379 extract mouse co-ordinates.
14380
143812002-03-20 Jason Rumney <jasonr@gnu.org>
14382
14383 * w32.c (init_winsock): Dynamically load new server and UDP
14384 socket functions.
14385 (socket_to_fd): New function.
14386 (sys_socket): Use it.
14387 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
14388 (sys_recvfrom, sys_sendto): New wrapper functions.
14389
14390 * process.c (QCfamily, QCfilter): Remove duplicate declaration
14391 and initialization.
14392
14393 * makefile.w32-in (LIBS): Remove $(WSOCK32).
14394
143952002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
14396
14397 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
14398 Don't use "sun" as a variable, it's a predefined constant on Sun
14399 machines.
14400
144012002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14402
14403 * bytecode.c (Fbyte_code): Revert last change.
14404
144052002-03-19 Kim F. Storm <storm@cua.dk>
14406
14407 * makefile.w32-in (LIBS): Add $(WSOCK32).
14408 From David Ponce <dponce@voila.fr>.
14409
144102002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14411
14412 * process.c (wait_reading_process_input): Move variables `pname'
14413 and `pnamelen' down where they are used.
14414
14415 * bytecode.c (Fbyte_code): Discard unused computed value to
14416 prevent gcc warning.
14417
14418 * lisp.h (Fplist_member): Add prototype.
14419
144202002-03-18 Kim F. Storm <storm@cua.dk>
14421
14422 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
14423 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
14424
14425 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
14426 Remove explicit GNU_LINUX settings for datagram support.
14427
144282002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14429
14430 * process.c (Fmake_network_process): Remove unused variable `sa'.
14431 Doc fix. Add usage:.
14432 (set_socket_options): Remove unused variables `optnum' and `opttype'.
14433
144342002-03-17 Richard M. Stallman <rms@gnu.org>
14435
14436 * xdisp.c (cursor_type_changed): New variable.
14437 (redisplay_internal): Redisplay all windows if cursor_type_changed.
14438 Clear it when clearing windows_or_buffers_changed.
14439 (try_cursor_movement, redisplay_window, try_window_id)
14440 (try_window_reusing_current_matrix): Test cursor_type_changed
14441 along with windows_or_buffers_changed.
14442
14443 * window.h (cursor_type_changed): New variable.
14444
14445 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
14446 not update_mode_lines, and always set it to 1.
14447
14448 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
14449 if no frames needed redrawing.
14450
144512002-03-17 Kim F. Storm <storm@cua.dk>
14452
14453 The following changes add support for network server processes,
14454 datagram connections, and local (unix) sockets.
14455
14456 * process.h (struct Lisp_Process): New member log.
14457 Doc fix: Member command used to indicate stopped network process.
14458 Doc fix: Member childp contains plist for network process.
14459 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
14460
14461 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
14462 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
14463 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
14464 New variables.
14465 (NETCONN1_P): New macro.
14466 (DATAGRAM_SOCKETS): New conditional symbol.
14467 (datagram_address): New array.
14468 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
14469 (status_message): Use concat3.
14470 (Fprocess_status): Add `listen' status to doc string. Return `stop'
14471 for a stopped network process.
14472 (Fset_process_buffer): Update contact plist for network process.
14473 (Fset_process_filter): Ditto. Don't enable input for stopped
14474 network processes. Server must listen, even if filter is t.
14475 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
14476 New functions.
14477 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
14478 (Fprocess_contact): Added KEY argument. Handle datagrams.
14479 (list_processes_1): Optionally show only processes with the query
14480 on exit flag set. Dynamically adjust column widths. Omit tty
14481 column if not needed. Report stopped network processes.
14482 Identify server and datagram network processes.
14483 (Flist_processes): New optional arg `query-only'.
14484 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
14485 (conv_lisp_to_sockaddr, set_socket_options)
14486 (network_process_featurep, unwind_request_sigio): New helper functions.
14487 (Fprocess_datagram_address, Fset_process_datagram_address):
14488 (Fset_network_process_options): New lisp functions.
14489 (Fopen_network_stream): Removed. Now defined in simple.el.
14490 (Fmake_network_process): New lisp function. Code is based on previous
14491 Fopen_network_stream, but heavily reworked with new property list based
14492 argument list, support for datagrams, server processes, and local
14493 sockets in addition to old client-only functionality.
14494 (server_accept_connection): New function.
14495 (wait_reading_process_input): Use it to handle incoming connects.
14496 Do not enable input on a new connection if process is stopped.
f63fd14e 14497 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
14498 (send_process): Handle datagram sockets.
14499 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
14500 network process is indicated by setting command field to t .
14501 (Fprocess_send_eof): No-op if datagram connection.
14502 (Fstatus_notify): Don't read input for a stream server socket or a
14503 stopped network process.
14504 (init_process): Initialize datagram_address array.
14505 (syms_of_process): Intern and staticpro new variables, defsubr new
14506 functions.
14507
145082002-03-16 Jason Rumney <jasonr@gnu.org>
14509
14510 * w32fns.c (w32_to_all_x_charsets): Return correct type in
14511 startup case.
14512
145132002-03-16 Richard M. Stallman <rms@gnu.org>
14514
14515 * xdisp.c (redisplay_internal, redisplay_windows):
14516 Use list_of_error to call internal_condition_case_1.
14517 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
14518 so as to catch all errors with no possibility of debugger redisplay.
14519 (list_of_error): New variable.
14520 (syms_of_xdisp): Init and staticpro it.
14521
14522 * print.c (print_object): Delete `\ ' from printed rep of frame.
14523
145242002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
14525
14526 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
14527 until its implementation is fixed.
14528
145292002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14530
14531 * xfns.c (png_load): Remove unused variable `gamma_str'.
14532
145332002-03-14 Richard M. Stallman <rms@gnu.org>
14534
14535 * xfns.c (x_real_positions): Handle failure in XQueryTree.
14536
145372002-03-14 Miles Bader <miles@gnu.org>
14538
14539 * intervals.c (adjust_for_invis_intang): New function.
14540 (set_point_both): Use `adjust_for_invis_intang' to do most of the
14541 work for dealing with invisible+intangible regions. Do so before
14542 and after both forward and backward movements, to handle both
14543 front-sticky and rear-sticky cases.
14544 * textprop.c (text_property_stickiness): Function moved here from
14545 `editfns.c'.
14546 * intervals.h (text_property_stickiness): New declaration.
14547 * editfns.c (char_property_eq): Function removed.
14548 (text_property_stickiness): Function moved to `textprop.c'.
14549
145502002-03-13 Jason Rumney <jasonr@gnu.org>
14551
14552 * config.in: Add STRFTIME_NO_POSIX2.
14553
14554 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
14555 and %OX when underlying strftime does not.
14556
145572002-03-13 Stefan Monnier <monnier@cs.yale.edu>
14558
14559 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
14560 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
14561 line) to avoid annoying flicker.
14562 (xm_scroll_callback): Get rid of the now unnecessary kludge.
14563 (XTread_socket): Mark it static.
14564
14565 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
14566
145672002-03-13 Kim F. Storm <storm@cua.dk>
14568
14569 * puresize.h (BASE_PURESIZE): Increase to 775000.
14570
145712002-03-12 Juanma Barranquero <lektu@terra.es>
14572
14573 * editfns.c (syms_of_editfns): Fix typo.
14574
145752002-03-12 Gerd Moellmann <gerd@gnu.org>
14576
14577 * xsmfns.c: Include stdio.h because termhooks.h needs it.
14578 Include termopt.h for interrupt_input.
14579
145802002-03-11 Andreas Schwab <schwab@suse.de>
14581
14582 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
14583
145842002-03-11 Gerd Moellmann <gerd@gnu.org>
14585
14586 * xterm.c (note_mouse_movement): Put code for
14587 x_autoselect_window_p in #if 0.
14588
14589 * lread.c (Fload): Don't assume that message_with_string uses the
14590 string it is given like a C string.
14591
145922002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14593
78819ebb 14594 * xterm.h (x_session_check_input, x_session_initialize): Declare.
048addec
JD
14595
14596 * xterm.c: (XTread_socket): Add call to x_session_check_input and
14597 x_session_have_connection.
14598 (x_initialize): Add call to x_session_initialize.
14599
14600 * termhooks.h (enum event_kind): Add save_session_event.
14601
14602 * keyboard.c: Add Emacs event save_session_event.
14603
14604 * emacs.c (main): Add call to syms_of_xsmfns.
14605
78819ebb 14606 * lisp.h (syms_of_xsmfns): Declare extern.
048addec
JD
14607
14608 * config.in: Add HAVE_X_SM.
14609
14610 * Makefile.in (LIBXT): Add -lSM -lICE
14611 if HAVE_X_SM and not USE_X_TOOLKIT.
14612 (XOBJ): New file xsmfns.c added.
14613
14614 * xsmfns.c: New file for X session management.
14615
146162002-03-09 Jason Rumney <jasonr@gnu.org>
14617
14618 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
14619 read-only when setting modified time.
14620
146212002-03-08 Gerd Moellmann <gerd@gnu.org>
14622
14623 * xdisp.c (move_it_vertically_backward): At the end of the function,
14624 when moving forward by lines, treat terminal frames specially.
14625
14626 * keyboard.c (echo_char): Make sure to add a separator between
14627 keys even if echo_dash hasn't been called.
14628
14629 * xdisp.c: Use new string macros.
14630 (update_echo_area): Pass number of bytes to message3 instead of
14631 number of chars.
14632 (set_message_1): Don't access a string's size_byte directly.
14633 (decode_mode_spec_coding): Use number of bytes of eoltype string
14634 instead number of chars.
14635
14636 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
14637
146382002-03-08 Juanma Barranquero <lektu@terra.es>
14639
14640 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
14641 24-bit.
14642
146432002-03-06 Jason Rumney <jasonr@gnu.org>
14644
14645 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
14646
146472002-03-06 Gerd Moellmann <gerd@gnu.org>
14648
14649 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
14650 (cancel_echoing, echo_length, echo_truncate): Changed to
14651 work with new kboard definition.
14652 (echo_now): Use message3_nolog instead of message2_nolog.
14653
14654 * alloc.c (mark_kboards): Mark echo_string.
14655
14656 * keyboard.h (ECHOBUFSIZE): Removed.
14657 (struct kboard): Member echoptr removed, member echobuf renamed
14658 to echo_string.
14659
14660 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
14661 message3 instead of message2 to display the message using STRING's
14662 text properties.
14663
146642002-03-05 Andreas Schwab <schwab@suse.de>
14665
14666 * xdisp.c (hscroll_margin): Change to EMACS_INT.
14667
146682002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
14669
14670 * frame.c (default-frame-alist): Explain that setting it doesn't
14671 affect existing frames.
14672
146732002-03-05 Stefan Monnier <monnier@cs.yale.edu>
14674
14675 * indent.c (skip_invisible): Fix my brain fart.
14676
14677 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
14678
146792002-03-04 Stefan Monnier <monnier@cs.yale.edu>
14680
14681 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
14682 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
14683 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
14684 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
14685 and variables to use EMACS_INT instead of just int.
14686
14687 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
14688
146892002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
14690
14691 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
14692 environment, pass it down with corrected value.
14693
146942002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14695
14696 * lread.c (read_filtered_event): Do not call start_hourglass
14697 before returning.
14698
146992002-03-04 Juanma Barranquero <lektu@terra.es>
14700
14701 * w32term.c (x_display_and_set_cursor): Fix typo.
14702
147032002-03-03 Richard M. Stallman <rms@gnu.org>
14704
14705 * fileio.c (Fmake_temp_name): Doc fix.
14706
147072002-03-03 Gary Wong <gtw@gnu.org>
14708
14709 * termcap.c [!emacs]: Replace ospeed for building standalone
14710 libtermcap, for binary compatibility.
14711
14712 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
14713
147142002-03-03 Richard M. Stallman <rms@gnu.org>
14715
14716 * xrdb.c (file_p): Rename arg `path' to `filename'.
14717
14718 * abbrev.c (Fexpand_abbrev): Increment plist as use count
14719 only if it is an integer.
14720
14721 * xfns.c (png_load): Set screen_gamma based on f->gamma.
14722 If png_get_sRGB gives an answer, call png_set_gamma
14723 using the default image gamma value.
14724
14725 * lread.c (read1): When reading from a file, default string to
14726 multibyte only if it has some multibyte characters.
14727
14728 * print.c (print_object): Output multibyte chars 128...255
14729 using \x even if ! print_escape_multibyte.
14730
14731 * xdisp.c (display_mode_element): Move the places where
14732 bytepos, charpos, this, and lisp_string are set.
14733 Use lisp_string to set bytepos.
14734
14735 * xdisp.c (redisplay_internal):
14736 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
14737
14738 * xdisp.c (display_mode_element): Merge properties specified with
14739 :propertize onto those that come with the string.
14740
147412002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
14742
14743 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
14744 automatic-hscrolling. Users changed.
14745 <hscroll-margin>: Renamed from automatic-hscroll-margin.
14746 Users changed.
14747 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
14748
147492002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
14750
14751 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
14752
147532002-03-02 Kim F. Storm <storm@cua.dk>
14754
14755 * window.c (Fminibuffer_selected_window): New function.
14756 (syms_of_window): Defsubr it.
14757
147582002-03-01 Kim F. Storm <storm@cua.dk>
14759
14760 * window.h (struct window): New member phys_cursor_width.
14761
14762 * window.c (make_window, replace_window): Init phys_cursor_width.
14763
14764 * xterm.c (x_display_and_set_cursor): Blink box cursor using
14765 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
14766
14767 * w32term.c (x_display_and_set_cursor): Blink box cursor using
14768 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
14769
14770 * lisp.h (GCPRO6): New macro.
14771
14772 * process.c (Fopen_network_stream): Use GCPRO6.
14773
147742002-03-01 Kim F. Storm <storm@cua.dk>
14775
14776 * process.c (Qconnect, Qfailed): New variables.
14777 (syms_of_process): Intern and staticpro them.
14778 (Fprocess_status): Document connect and failed return values.
14779 [NON_BLOCKING_CONNECT]: New conditional.
14780 (connect_wait_mask, num_pending_connects): New variables.
14781 (status_message): Convert Qfailed status.
14782 (Fopen_network_stream): Added support for non-blocking connect.
14783 New optional args: filter, sentinel, non_blocking. Doc updated.
14784 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
14785 (deactivate_process): Handle pending non-blocking connect.
14786 (wait_reading_process_input): Poll for status of non-blocking
14787 connects. Exec sentinel directly when connect succeeds.
14788 (status_notify): Don't read process output if not yet connected.
14789
147902002-02-28 Kim F. Storm <storm@cua.dk>
14791
14792 * window.c: (minibuf_selected_window): Renamed from
14793 Vminibuf_selected_window. Users changed.
14794 (syms_of_window): Staticpro it.
14795
147962002-02-26 Kim F. Storm <storm@cua.dk>
14797
14798 The following changes add a new Vminibuf_selected_window variable
14799 which is similar to Vminibuf_scroll_window, but which is only set
14800 on entry to the minibuffer (from a non-minibuffer window):
14801
14802 * window.c: (Vminibuf_selected_window): New variable.
14803 (struct save_window_data): New member minibuf_selected_window.
14804 (Fset_window_configuration): Restore Vminibuf_selected_window.
14805 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
14806 Set minibuf_scroll_window member to nil if minibuf_level is 0.
14807 (compare_window_configurations): Compare minibuf_selected_window.
14808
14809 * window.h: (Vminibuf_selected_window): Declare extern.
14810
14811 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
14812 entry to minibuffer or on entry from a non-minibuffer window.
14813
14814 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
14815 Vminibuf_selected_window instead of Vminibuf_scroll_window.
14816
14817 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
14818 instead of Vminibuf_scroll_window when deciding in which window
14819 the region should be highlighted. Consequently, the region remains
14820 highlighteded even when a completion buffer is also displayed.
14821
148222002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
14823
14824 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
14825
14826 * xselect.c (Qcompound_text_with_extensions): Renamed from
14827 Qcompound_text_no_extensions.
14828 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
14829
148302002-02-26 Juanma Barranquero <lektu@terra.es>
14831
14832 * w32proc.c (syms_of_ntproc): Doc fix.
14833
148342002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14835
14836 * intervals.h: Include "dispextern.h" unconditionally.
14837
148382002-02-24 Jason Rumney <jasonr@gnu.org>
14839
14840 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
14841 and disp-table.elc.
14842 (lisp): Add emacs-lisp/backquote.elc.
14843
148442002-02-24 Kim F. Storm <storm@cua.dk>
14845
3419757d 14846 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
048addec
JD
14847 The validation of the event type was too strict as it didn't
14848 allow string events; buffer names are used in bindings for
14849 menu-bar-select-buffer (see `menu-bar-update-buffers').
14850
148512002-02-23 Kim F. Storm <storm@cua.dk>
14852
14853 The following changes rework my patch of 2002-02-06 which
14854 added command remapping by entering the commands directly into
14855 the keymaps. Now, command remapping uses an explicit `remap'
14856 prefix in the keymaps, i.e. [remap COMMAND].
14857
14858 * keymap.c (Qremap, remap_command_vector): New variables.
3419757d 14859 (is_command_symbol): Remove function.
048addec
JD
14860 (Fdefine_key): No longer accept a symbol for KEY.
14861 Added validation of [remap COMMAND] argument for KEY.
14862 The DEF is no longer required to be a symbol when remapping a command.
14863 (Fremap_command): New function to remap command through keymaps.
14864 (Flookup_key): Perform command remapping initiated by
14865 Fremap_command directly for speed.
14866 (Fkey_binding): Use Fremap_command for command remapping.
14867 (where_is_internal): Handle new command remapping representation.
14868 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
14869 staticpro them. Defsubr Fremap_command.
14870
14871 * keymap.h (Fremap_command): Declare extern.
14872 (is_command_symbol): Remove extern.
14873
14874 * keyboard.c (command_loop_1): Use Fremap_command for command
14875 remapping; now try command remapping for all symbols.
14876
148772002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
14878
14879 * coding.h (run_pre_post_conversion_on_str): Add prototype.
14880
148812002-02-23 Jason Rumney <jasonr@gnu.org>
14882
14883 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
14884 on the string before encoding it.
14885 (Fw32_get_clipboard_data): Run post-read-conversion on the string
14886 after decoding it.
14887
14888 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
14889
148902002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14891
14892 * w32term.c (enter_timestamp): Remove unused static variable to
14893 prevent warning.
14894
14895 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
14896
148972002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
14898
14899 * w16select.c (Fw16_get_clipboard_data): Fix last change.
14900
14901 * xselect.c (selection_data_to_lisp_data): Fix last change.
14902
149032002-02-22 Jason Rumney <jasonr@gnu.org>
14904
14905 * w32term.h (struct w32_output): New member menu_command_in_progress.
14906
14907 * w32menu.c (menubar_selection_callback): Free the menu and
14908 clear the menu_command_in_progress flag.
14909
14910 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
14911 (menu_free_timer): New variable.
14912 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
14913 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
14914 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
14915 menu command is in progress.
14916 <WM_COMMAND>: Set the menu_command_in_progress flag.
14917 Kill any menu_free_timer that is running.
14918
14919 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
14920 Call ExtTextOutA rather than ExtTextOut.
14921
149222002-02-22 Eli Zaretskii <eliz@gnu.org>
14923
14924 * puresize.h (BASE_PURESIZE): Increase to 755000.
14925
149262002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
14927
14928 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
14929 on the string before encoding it.
14930 (Fw16_get_clipboard_data): Run post-read-conversion on the string
14931 after decoding it.
14932
149332002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
14934
14935 Support for ICCCM Extended Segments in X selections:
14936
14937 * xselect.c <Qcompound_text_no_extensions>: New variable.
14938 (syms_of_xselect): Intern and staticpro it.
14939 (selection_data_to_lisp_data): Run post-read-conversion on decoded
14940 selection text.
14941 (lisp_data_to_selection_data): If next-selection-coding-system is
14942 compound-text-no-extensions, set the type of selection to be
14943 compound-text.
14944
14945 * xterm.h (x_encode_text): Update prototype.
14946
14947 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
14948 callers changed. If SELECTIONP is non-zero, run the
14949 pre-write-conversion function before encoding the selection text.
14950
149512002-02-21 Kim F. Storm <storm@cua.dk>
14952
14953 * frame.c (syms_of_frame): Change mouse-highlight default to t.
14954
14955 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
14956 Correct composing of language-change event.
14957
149582002-02-20 Kim F. Storm <storm@cua.dk>
14959
14960 * keyboard.c (menu_bar_items): Don't include keymap or local-map
14961 bindings at PT when building menu (the menu is not updated often
14962 enough for this to work reliable).
14963 (tool_bar_items): Likewise.
14964 (current_active_maps): Removed unused (and buggy) function.
14965
149662002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14967
14968 * xfns.c (gif_load): Use correct width and height for GIF images.
14969
149702002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
14971
14972 * floatfns.c (Fatan): Accept an optional second arg and call
14973 atan2 if passed 2 args.
14974
149752002-02-18 Jason Rumney <jasonr@gnu.org>
14976
14977 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
14978
149792002-02-17 Jason Rumney <jasonr@gnu.org>
14980
14981 * w32term.c (x_autoselect_window_p): New variable.
14982 (syms_of_w32term): DEFVAR_BOOL and initialize it.
14983 (note_mouse_movement): Use it.
14984
14985 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
14986
14987 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
14988
14989 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
14990 New variables.
14991 (syms_of_w32fns): Intern and staticpro them.
14992 (x_frame_parms) <"fullscreen">: New parameter.
14993 (x_fullscreen_move, x_set_fullscreen): New functions.
14994 (x_set_frame_parameters): Support Qfullscreen.
14995 (x_real_positions): Save x/y_pixels_diff frame params.
14996 (x_figure_window_size): Support full-screen frames.
14997 (Fx_create_frame): Default the fullscreen parameter.
14998
14999 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
15000 (x_fullscreen_adjust): New functions.
15001 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
15002 fullscreen. Call x_check_fullscreen_move, and set the
15003 want_fullscreen member of output_data.w32
15004 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
15005
15006 * w32term.h: New enum for FULLSCREEN_* constants.
15007 (struct w32_output): New members want_fullscreen, x_pixels_diff,
15008 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
15009 (x-fullscreen-adjust): New prototype.
15010
150112002-02-17 Kim F. Storm <storm@cua.dk>
15012
15013 * frame.c: (Vmouse_highlight): New variable.
15014 (syms_of_frame): DEFVAR_LISP it.
15015
15016 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 15017
048addec 15018 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 15019
048addec
JD
15020 * xterm.c (disable_mouse_highlight): Removed variable.
15021 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
15022 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15023 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
15024 and on after keyboard input.
15025 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 15026
048addec 15027 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 15028
048addec
JD
15029 * msdos.c (disable_mouse_highlight): Removed variable.
15030 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15031 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
15032 (internal_terminal_init): Initialize mouse_face_hidden.
15033 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
15034 and on after keyboard input.
4f1b1854 15035
048addec 15036 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 15037
048addec
JD
15038 * w32term.c (disable_mouse_highlight): Removed variable.
15039 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
15040 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15041 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
15042 and on after keyboard input.
15043 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 15044
048addec 150452002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 15046
048addec
JD
15047 * msdos.c (last_mouse_window): New variable.
15048 (dos_rawgetc): Fix last change--if the mouse is in the same window
15049 as recorded in last_mouse_window, don't select this window.
5cb6905d 15050
048addec 15051 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 15052
048addec
JD
15053 * msdos.c (x_autoselect_window_p): New variable.
15054 (syms_of_msdos): Defvar it.
15055 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
15056 which the last mouse movement occured, unless it is already selected.
437dfb9f 15057
048addec
JD
15058 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
15059 New variables.
15060 (syms_of_xdisp): DEVFAR them.
15061 (hscroll_window_tree): Use automatic_hscroll_margin and
15062 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 15063
048addec 150642002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 15065
048addec
JD
15066 * xterm.c (x-autoselect-window): New variable.
15067 (note_mouse_movement): Use it.
9f696a00 15068
048addec 15069 * keyboard.c: Do not include "systime.h" twice.
d57966d7 15070
048addec 150712002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 15072
bfa02563 15073 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 15074
048addec 15075 * alloc.c (NSTATICS): Increase to 1280.
74779f52 15076
048addec 150772002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 15078
048addec 15079 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 15080
048addec
JD
15081 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
15082 (Vx_super_keysym): New variables.
15083 (syms_of_xterm): DEFVAR_LISP them.
15084 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
15085 variables to determine which keys to use for the various modifiers.
a474d59c 15086
048addec 150872002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 15088
048addec
JD
15089 * window.c: (Vmode_line_in_non_selected_windows): Removed.
15090 (mode_line_in_non_selected_windows): New variable.
15091 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 15092
048addec
JD
15093 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
15094 Use mode_line_in_non_selected_windows.
15095 (mode_line_in_non_selected_windows): Declare extern.
15096 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 15097
048addec 150982002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 15099
048addec
JD
15100 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
15101 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
15102 (Fclear_this_command_keys): Doc fixes.
2d10309f 15103
048addec
JD
15104 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
15105 (update_face_from_frame_parameter): Increment face_change_count
15106 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 15107
048addec
JD
15108 * xdisp.c (QCpropertize): New variable.
15109 (mode_line_proptrans_alist): New variable.
15110 (display_mode_element): New arg PROPS; all calls changed.
15111 Implement this, for strings.
15112 Handle literal output of strings by sharing the
15113 main-line code for strings, using local var `literal'.
15114 Handle :propertize feature.
15115 (syms_of_xdisp): Initialze and staticpro QCpropertize and
15116 mode_line_proptrans_alist.
0b1e6b54 15117
048addec 151182002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 15119
048addec
JD
15120 * window.c: (Vmode_line_in_non_selected_windows): New variable.
15121 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 15122
048addec
JD
15123 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
15124 (CURRENT_MODE_LINE_FACE_ID): Use it.
15125 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 15126
048addec
JD
15127 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
15128 to get mode line face.
e17144de 15129
048addec 151302002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 15131
048addec
JD
15132 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
15133 variables; cus-start.el doesn't need them anymore.
44368f8f 15134
048addec 151352002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 15136
048addec
JD
15137 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
15138 reduction. This fixes a display problem where stray newlines were
15139 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 15140
048addec 151412002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 15142
048addec 15143 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 15144
048addec 15145 * xdisp.c (display_mode_lines): Fix last change.
453c5510 15146
048addec 151472002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 15148
048addec
JD
15149 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
15150 match each other.
15151 (w32_load_system_font): Prevent Cleartype fonts from loading.
15152 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 15153
048addec 151542002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 15155
048addec
JD
15156 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
15157 (CURRENT_MODE_LINE_HEIGHT): Use it.
15158 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 15159
048addec
JD
15160 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
15161 (pos_visible_p, handle_face_prop): Likewise.
15162 (display_mode_lines): Likewise, but for the real selected window.
15163 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 15164
048addec
JD
15165 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
15166 in non-selected windows.
15167 (realize_basic_faces): Realize it.
15168 (syms_of_term): Intern and staticpro it.
308dd672 15169
048addec 151702002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 15171
048addec
JD
15172 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
15173 Changed mail addresses to emacs-devel@gnu.org.
308dd672 15174
048addec 151752002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 15176
048addec
JD
15177 * fileio.c (Fsubstitute_in_file_name): If the file name includes
15178 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 15179
048addec 15180 * floatfns.c (Fround): Doc fix.
3c1e6b46 15181
048addec 151822002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 15183
048addec 15184 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 15185
048addec 151862002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 15187
048addec 15188 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 15189
048addec 151902002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 15191
048addec
JD
15192 * keymap.c (where_is_internal): Only check whether definition is
15193 remapped if it fulfills is_command_symbol.
0065bb74 15194
048addec 151952002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 15196
048addec 15197 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 15198
048addec 15199 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 15200
048addec 152012002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 15202
048addec
JD
15203 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
15204 defining command remapping. Doc updated.
15205 (Flookup_key): Remap command through keymap if KEY is a symbol.
15206 (is_command_symbol): New function.
15207 (Fkey_binding): Use it. New optional argument NO-REMAP.
15208 Doc updated. Callers changed. Perform command remapping via
15209 recursive call unless that arg is non-nil.
15210 (where_is_internal): New argument no_remap. Callers changed.
15211 Call recursively to find original key bindings for a remapped
15212 comand unless that arg is non-nil.
15213 (Fwhere_is_internal): New optional argument NO-REMAP.
15214 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 15215
048addec 15216 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
3419757d 15217 (is_command_symbol): Add prototype.
0d8466cc 15218
048addec
JD
15219 * keyboard.c (Vthis_original_command): New variable.
15220 (syms_of_keyboard): DEFVAR_LISP it.
15221 (command_loop_1): Set it, and perform command remapping.
15fff01d 15222
048addec 152232002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 15224
048addec 15225 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 15226
048addec 152272002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 15228
048addec 15229 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 15230
048addec 152312002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 15232
048addec 15233 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 15234
048addec 152352002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 15236
048addec 15237 * filelock.c (S_ISLNK): Define if not defined.
3a232704 15238
048addec 152392002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 15240
048addec 15241 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 15242
048addec
JD
15243 * lread.c (read1): Redesign strategy for force_multibyte and
15244 force_singlebyte. Now is_multibyte records whether read_buffer
15245 is multibyte. Encountering any multibyte character makes it so.
4e02881b 15246
048addec 152472002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 15248
048addec
JD
15249 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
15250 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 15251
048addec 152522002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 15253
048addec
JD
15254 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
15255 latter never being defined on GNU/Linux.
749f499f 15256
048addec 152572002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 15258
048addec
JD
15259 * xfaces.c (realize_default_face): Don't set the weight and slant of
15260 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 15261
048addec 152622002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 15263
048addec
JD
15264 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
15265 Call cancel_hourglass unconditionally.
d0fd26dd 15266
048addec
JD
15267 * eval.c (Fsignal): Remove duplicated declaration of
15268 the variable `display_hourglass_p'.
b4c45162 15269
048addec 152702002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 15271
048addec 15272 * editfns.c (region_limit): Nicer error message.
c95eaa61 15273
048addec
JD
15274 * coding.c (decode_composition_emacs_mule):
15275 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 15276
048addec
JD
15277 * callint.c (check_mark): New arg to specify clearer error message.
15278 Callers changed.
c95eaa61 15279
048addec 152802002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 15281
048addec 15282 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 15283
048addec 152842002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 15285
048addec
JD
15286 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
15287 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
15288 Fix doc-strings.
c95eaa61 15289
048addec 152902002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 15291
048addec 15292 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 15293
048addec
JD
15294 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
15295 and scroll_up_aggressively.
c95eaa61 15296
048addec 152972002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 15298
048addec 15299 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 15300
048addec 153012002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 15302
048addec
JD
15303 * textprop.c (Fnext_property_change, Fnext_single_property_change)
15304 (Fprevious_property_change, Fprevious_single_property_change):
15305 Stay within the narrowed-buffer boundaries.
e2c3786a 15306
048addec 153072002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 15308
048addec
JD
15309 * term.c (Ftty_display_color_cells): New function.
15310 (syms_of_term): Defsubr it.
15311 (Ftty_display_color_cells, Ftty_display_color_p): Change the
15312 argument name to DISPLAY. Doc fix.
bf794306 15313
048addec
JD
15314 * dispextern.h: Add prototype for set_tty_color_mode and
15315 tty_setup_colors.
bf794306 15316
048addec 153172002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 15318
048addec
JD
15319 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
15320 If region left to draw is not what was expected, mark the frame as
15321 garbaged.
62582985 15322
048addec
JD
15323 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
15324 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 15325
048addec 153262002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 15327
048addec
JD
15328 * w32term.c (x_update_window_begin): Only hide caret if
15329 w32_use_visible_system_caret is set.
15330 (x_update_window_end): Only show caret if
15331 w32_use_visible_system_caret is set.
15332 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 15333
048addec 15334 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 15335
048addec 153362002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 15337
048addec
JD
15338 * unexelf.c (unexec): Define n so as to cause compilation error
15339 for the code where people have often written n instead of nn.
1e9a6186 15340
048addec 15341 * .gdbinit (hookpost-run): Defined.
1e9a6186 15342
048addec 153432002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 15344
048addec 15345 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 15346
048addec 153472002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 15348
048addec
JD
15349 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
15350 if fullscreen is being set.
7c75be36 15351
048addec 153522002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 15353
048addec
JD
15354 * minibuf.c (Fminibuffer_contents)
15355 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
15356 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 15357
048addec 153582002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 15359
048addec 15360 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 15361
048addec 153622002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 15363
048addec
JD
15364 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
15365 height before comparison.
15366 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 15367
048addec 153682002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 15369
048addec
JD
15370 * w32term.c (w32_system_caret_width): Remove.
15371 (w32_use_visible_system_caret): New user flag.
15372 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
15373 Windows reports a screen reader running.
15374 (x_update_window_begin): Hide the system caret.
15375 (x_update_window_end): Show the system caret.
15376 (x_display_and_set_cursor): Don't draw a cursor when
15377 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 15378
048addec
JD
15379 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
15380 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
15381 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
15382 the user requests it. Use system default width when creating.
15383 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 15384
048addec
JD
15385 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
15386 New window messages.
905cc05a 15387
048addec 153882002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 15389
048addec 15390 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 15391
048addec 153922002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 15393
048addec 15394 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 15395
048addec 153962002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 15397
048addec 15398 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 15399
048addec 154002002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 15401
048addec
JD
15402 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
15403 that Windows returns. If a double check fails, try to guess how
15404 ExtTextOut is going to act.
4d0fa4f3 15405
048addec
JD
15406 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
15407 in place of stricmp.
15408 (w32_list_synthesized_fonts): Removed.
15409 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
15410 (struct enumfont_t): New element; list.
15411 (enum_font_cb2): List all style and charset variations of a font.
15412 (Fw32_select_font): New optional argument; include_proportional.
15413 Exclude vertical fonts. Exclude proportional fonts unless
15414 include_proportional is non-nil.
15415 (w32_enable_synthesized_fonts): Change to a boolean.
15416 (Fw32_send_sys_command): Doc fix.
493faf20 15417
048addec 154182002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 15419
048addec
JD
15420 * dispnew.c (update_frame): Move the variable `tem' to the block
15421 where it is used.
4971e491 15422
048addec 154232002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 15424
048addec
JD
15425 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
15426 call to face-set-after-frame-default.
4971e491 15427
048addec 154282002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 15429
048addec
JD
15430 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
15431 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 15432
048addec 154332002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 15434
048addec
JD
15435 * window.c (enlarge_window): When exceeding size of parent,
15436 directly delete all the siblings instead of trying to resize it.
201c831a 15437
048addec 154382002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 15439
048addec 15440 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 15441
048addec 154422002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 15443
048addec 15444 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 15445
048addec 154462002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 15447
048addec
JD
15448 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
15449 is invisible. This can happen if cursor is on top line of a
15450 window, and we switch to a buffer with a header line.
d77fbc16 15451
048addec 15452 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 15453
048addec 154542002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 15455
048addec
JD
15456 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
15457 `dont_resize' only when used.
61e3b944 15458
048addec 15459 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 15460
048addec 154612002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 15462
048addec
JD
15463 * xdisp.c (display_mode_element): When computing charpos, depend
15464 on multibyteness of elt, not the text in field.
8af01033 15465
048addec 154662002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 15467
048addec
JD
15468 * buffer.c (Fkill_all_local_variables):
15469 Increment `update_mode_lines' only once.
7363986a 15470
048addec 154712002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 15472
048addec
JD
15473 * lisp.h (adjust_after_replace_noundo)
15474 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 15475
048addec 15476 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 15477
048addec 154782002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 15479
048addec
JD
15480 Support for the --color command-line argument and tty-color-mode
15481 frame parameter:
f1a85b89 15482
048addec
JD
15483 * term.c (tty_default_color_capabilities, tty_setup_colors)
15484 (set_tty_color_mode): New functions.
15485 (term_init): Call tty_default_color_capabilities.
15486 (Qtty_color_mode_alist): New variable.
15487 (syms_of_term): Intern and staticpro it.
f1a85b89 15488
048addec
JD
15489 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
15490 frames.
15491 (do_switch_frame): For termcap frames, switch the tty
15492 color mode as specified by the frame's parameters.
15493 (Qtty_color_mode): New variable.
15494 (syms_of_frame): Intern and staticpro it.
3a62677f 15495
048addec
JD
15496 * emacs.c (USAGE2): Add the --color option.
15497 (standard_args): Ditto.
72244db2 15498
048addec
JD
154992002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15500
15501 * xterm.h (struct x_output): New members want_fullscreen,
15502 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
15503 y_pixels_outer_diff.
15504 New enum for FULLSCREEN_* constants.
15505 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
15506 is NULL.
15507 (x_fullscreen_adjust): Add prototype.
3a62677f 15508
048addec
JD
15509 * emacs.c (USAGE2): Add the new full-screen arguments.
15510 (standard_args): Ditto.
3a62677f 15511
048addec
JD
15512 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
15513 New variables.
15514 (syms_of_xfns): Intern and staticpro them.
15515 (x_frame_parms) <"fullscreen">: New parameter.
15516 (x_fullscreen_move, x_set_fullscreen): New functions.
15517 (x_set_frame_parameters): Support for Qfullscreen.
15518 (x_real_positions): More accurate computation of the frame position.
15519 (x_figure_window_size): Support full-screen frames.
15520 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 15521
048addec
JD
15522 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
15523 (XTread_socket) <Expose>: Call x_check_fullscreen.
15524 <ConfigureNotify>: Don't resize to fullscreen.
15525 Call x_check_fullscreen_move, and set the want_fullscreen member of
15526 output_data.x.
3a62677f 15527
048addec 155282002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 15529
048addec
JD
15530 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
15531 for mice with more than 3 buttons.
b8523839 15532
048addec
JD
15533 * w32term.c (parse_button): New parameter xbutton. Callers changed.
15534 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 15535
048addec
JD
15536 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
15537 (syms_of_w32fns): DEFVAR_BOOL it.
15538 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 15539
048addec 155402002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 15541
048addec 15542 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 15543
048addec 155442002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 15545
048addec 15546 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 15547
048addec 155482002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 15549
048addec
JD
15550 * .gdbinit (xbuffer): Remove address operator since data is now a
15551 pointer.
c93674bb 15552
048addec 155532002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 15554
048addec 15555 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 15556
048addec 15557 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 15558
048addec 155592002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 15560
048addec
JD
15561 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
15562 when checking for multiple frames.
91175673 15563
048addec 155642002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 15565
048addec
JD
15566 * window.c (delete_window): Rewrite the code for changing the
15567 selected window to handle the case where WINDOW is not a leaf.
91175673 15568
048addec 155692002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 15570
048addec
JD
15571 * process.c (send_process): Set src_multibyte to 1 after the call
15572 top setup_coding_system, not before the call.
e0fead5d 15573
048addec 155742002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 15575
048addec
JD
15576 * xmenu.c (set_frame_menubar, xmenu_show):
15577 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 15578
048addec
JD
15579 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
15580 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 15581
048addec 155822002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 15583
048addec 15584 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 15585
048addec 15586 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 15587
048addec 15588 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 15589
048addec 155902002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 15591
048addec
JD
15592 * insdel.c (make_gap_larger): Make sure buffer size does not
15593 overflow range of int.
62854fe2 15594
048addec 155952002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 15596
048addec
JD
15597 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
15598 OVERLAPS_P.
656f46bb 15599
048addec 15600 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 15601
048addec
JD
15602 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
15603 to the left or to the right of the pointer, put it against
15604 the left screen edge.
15605 (x_frame_parms): Add missing braces around initializer.
036e218d 15606
048addec
JD
15607 * w32term.c (x_setup_relief_colors): Don't compute an image's
15608 background color if it doesn't have a Pixmap.
15609 (notice_overwritten_cursor): Don't depend on
15610 output_cursor and updated_area. Compare pixel coordinates with
15611 window's cursor pixel coordinates.
15612 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
15613 Call notice_overwritten_cursor with new arg list.
15614 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
15615 unconditionally.
15616 (x_draw_image_relief): Use predefined macro instead of
15617 constant when the value of `tool_bar_button_relief' is negative.
036e218d 15618
048addec 15619 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 15620
048addec 156212002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 15622
048addec 15623 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 15624
048addec 156252002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 15626
048addec
JD
15627 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
15628 (Fkey_binding): Try the `keymap' property map first.
15629 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
15630 minor mode bindings.
90647b07 15631
048addec 156322002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 15633
3419757d 15634 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
ace9b298 15635
048addec 156362002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 15637
048addec
JD
15638 * keyboard.c (read_key_sequence): Handle the keymap property
15639 before minor mode maps.
9fbc32aa 15640
048addec
JD
15641 * editfns.c (Fformat): Update thissize from field_width
15642 based on the actual width, in the string case.
036e218d 15643
048addec 156442002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 15645
048addec
JD
15646 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
15647 when used as truth value to prevent gcc warnings.
9fbc32aa 15648
048addec
JD
15649 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
15650 * w32proc.c: Include <config.h>.
9fbc32aa 15651
048addec 156522002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 15653
048addec
JD
15654 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
15655 not EMACS_INT, to make them compatible with DEFVAR_INT.
15656 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 15657
048addec 156582002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 15659
048addec
JD
15660 * print.c (print_object): Test print_escape_nonascii only for
15661 unibyte strings.
15662 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
15663 when outputting to a multibyte buffer.
9fbc32aa 15664
048addec 156652001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 15666
048addec
JD
15667 * print.c (print_object): In multibyte string, use hex escapes.
15668 Use octal only for unibyte strings.
15669 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 15670
048addec
JD
15671 * lread.c (read_escape): New arg BYTEREP for reporting whether
15672 escape forces unibyte or multibyte.
15673 (read1): When reading a string, take note of that info.
0142178a 15674
048addec 156752001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 15676
048addec
JD
15677 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
15678 comparison to test lisp value returned by Fget.
d4824a5d 15679
048addec 156802001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 15681
048addec 15682 * lisp.h (max_specpdl_size): Add declaration.
b1356234 15683
048addec 15684 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 15685
048addec
JD
15686 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
15687 Handle modifier bits. Correct typo in error message.
99e380ee 15688
048addec 156892001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 15690
048addec
JD
15691 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
15692 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
15693 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
15694 Update calls to Fdefine_abbrev.
15695 (write_abbrev): Update for changed data format.
15696 Don't list "system" abbrevs.
15697 (Fexpand_abbrev): Update use count with new data format.
15698 (describe_abbrev): Update for changed data format.
15699 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 15700
048addec 15701 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 15702
048addec 15703 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 15704
048addec
JD
15705 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
15706 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 15707
048addec
JD
15708 * keymap.c (Flookup_key): Error message if key has wrong data type.
15709 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
15710 (exclude_key): New variable.
59a86c99 15711
048addec 157122001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 15713
048addec
JD
15714 * xterm.c (x_setup_relief_colors): Don't compute an image's
15715 background color if it doesn't have a Pixmap.
eb77a5f4 15716
048addec
JD
15717 * xterm.c (notice_overwritten_cursor): Don't depend on
15718 output_cursor and updated_area. Compare pixel coordinates with
15719 window's cursor pixel coordinates.
15720 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
15721 Call notice_overwritten_cursor with new arg list.
15722 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
15723 unconditionally.
eb77a5f4 15724
048addec
JD
15725 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
15726 height of the cursor line to the amount to scroll.
eb77a5f4 15727
048addec 157282001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 15729
048addec
JD
15730 * intervals.c (set_point_both): The position after an invisible,
15731 intangible character is not an acceptable stopping point.
bb313871 15732
048addec 157332001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 15734
048addec
JD
15735 * window.c (enlarge_window): In new preserve_before code, convert
15736 CURBEG from lisp object to integer before doing arithmetic.
6052529b 15737
048addec 157382001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 15739
048addec 15740 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 15741
048addec 157422001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 15743
048addec
JD
15744 * keyboard.c (record_char): Ignore duplicate help-echo events only
15745 separated by mouse-movement. When tracking mouse, only record
15746 first and last mouse-movement event in same window.
15747 Don't record mouse-movement events in keyboard macros.
3ce081f5 15748
048addec 157492001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 15750
048addec
JD
15751 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
15752 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 15753
048addec
JD
15754 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
15755 instead of Fstring_as_unibyte.
9fabb2f5 15756
048addec 157572001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 15758
048addec 15759 The following changes remove mocklisp support:
9fabb2f5 15760
048addec 15761 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 15762
048addec
JD
15763 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
15764 `Qmocklisp' and `Qmocklisp_arguments'.
15765 Remove prototype of syms_of_mocklisp.
2fa0eedf 15766
048addec 15767 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 15768
048addec
JD
15769 * callint.c: Do not include mocklisp.h.
15770 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 15771
048addec
JD
15772 * eval.c: Remove variables `Qmocklisp_arguments',
15773 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
15774 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
15775 Do not test for mocklisp case.
15776 (Fwhile): Remove unused variable `tem'.
15777 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 15778
048addec 15779 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 15780
048addec 15781 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 15782
048addec 15783 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 15784
048addec 157852001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 15786
048addec
JD
15787 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
15788 to the left or to the right of the pointer, put it against
15789 the left screen edge.
6108b49c 15790
048addec 157912001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 15792
048addec
JD
15793 * Makefile.in (distclean): Remove .gdbinit if we are building
15794 outside the source tree.
5eea19a4 15795
048addec 157962001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 15797
048addec 15798 * w32.c (emacs_root_dir): New function.
5eea19a4 15799
048addec 15800 * msdos.c (emacs_root_dir): New function.
5eea19a4 15801
048addec
JD
15802 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
15803 of the current drive as the fallback for default_directory.
438e57dd 15804
048addec
JD
15805 * dired.c (file_name_completion): Run the elements of
15806 completion-ignored-extensions through ENCODE_FILE.
438e57dd 15807
048addec
JD
15808 * lisp.h (scmp): Remove prototype, since it's now a static
15809 function private to dired.c.
c88e5347 15810
048addec 158112001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 15812
048addec
JD
15813 * dired.c (scmp): Function moved from minibuf.c.
15814 Delete multibyte handling--used only on encoded strings.
59ce1461 15815
048addec 15816 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 15817
048addec 15818 * fns.c (merge): Add QUIT call.
59ce1461 15819
048addec 158202001-12-18 Dave Love <fx@gnu.org>
8727d588 15821
048addec
JD
15822 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
15823 language/georgian.el.
8727d588 15824
048addec 158252001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 15826
048addec
JD
15827 * Makefile.in (lisp, shortlisp): Synchronize with changes to
15828 lisp/Makefile.in:DONTCOMPILE.
cc63037e 15829
048addec 158302001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 15831
048addec
JD
15832 * xdisp.c (window_box_height): Do not return negative values.
15833 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 15834
048addec 15835 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 15836
048addec 15837 * term.c (keys): Likewise.
deece6f5 15838
048addec 15839 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 15840
048addec 158412001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 15842
048addec
JD
15843 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
15844 patch (COMPOSING_P, not COMPOSING).
28ff4293 15845
048addec 158462001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 15847
048addec 15848 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 15849
048addec
JD
15850 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
15851 before calling decode_coding.
9b46de40 15852
048addec 15853 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 15854
048addec
JD
15855 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
15856 instead of only for COMPOSITION_DISABLED.
9b46de40 15857
048addec 158582001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 15859
048addec 15860 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 15861
048addec 15862 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 15863
048addec
JD
15864 * buffer.h (struct buffer): New field `display_error_modiff'.
15865 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 15866
048addec 15867 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 15868
048addec
JD
15869 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
15870 Call redisplay_window, but not if display_error_modiff field says no.
15871 (redisplay_window_error): New function.
15872 (displayed_buffer): New variable.
15873 (redisplay_internal, redisplay_windows): Call the new functions
15874 instead of redisplay_window directly.
2cd23960 15875
048addec 158762001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 15877
048addec 15878 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 15879
048addec 158802001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 15881
048addec 15882 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 15883 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 15884 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 15885
048addec 158862001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 15887
048addec
JD
15888 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
15889 parameter have a numeric value all the time.
f6fa0866 15890
048addec 15891 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 15892
048addec 158932001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 15894
048addec 15895 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 15896
048addec
JD
15897 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
15898 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 15899
048addec 159002001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 15901
048addec
JD
15902 * xdisp.c (move_it_vertically_backward): Change heuristic
15903 for the case that we didn't move far enough initially.
91c153e2 15904
048addec
JD
15905 * window.c (Frecenter): Simplify computation in the case of window
15906 system frames and ARG < 0; use window_box_height.
65b7d3e7 15907
048addec 159082001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 15909
048addec
JD
15910 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
15911 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 15912
048addec 159132001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 15914
048addec
JD
15915 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
15916 arg is negative.
be676094 15917
048addec 159182001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 15919
048addec
JD
15920 * m/hp800.h: Split the __hpux conditional into the parts
15921 that are right for GNU/Linux too and the parts that are not.
15922 Use the former if GNU_LINUX.
15923 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 15924
048addec 15925 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 15926
048addec 159272001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 15928
048addec
JD
15929 * macros.c, msdos.c, w16select.c: Change doc-string comments to
15930 `new style' [w/`doc:' keyword].
032a857d 15931
048addec 159322001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 15933
048addec
JD
15934 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
15935 before using.
b6270150 15936
048addec 159372001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 15938
048addec
JD
15939 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
15940 keyword].
98cbb9fa 15941
048addec 159422001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 15943
048addec 15944 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 15945
048addec 15946 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 15947
048addec 159482001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 15949
048addec 15950 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
78819ebb 15951 Add comment to explain where the struct came from.
048addec
JD
15952 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
15953 (add_menu_item): Process pop-up menus first to avoid memory leak.
15954 (add_menu_item, w32_menu_display_help): Use `help' field as
15955 Lisp_Object.
15956 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 15957
048addec 159582001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 15959
048addec 15960 * COPYING: Moved back.
fa336b91 15961
048addec
JD
15962 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
15963 Add parentheses around && within ||.
077907d4 15964
048addec 15965 * indent.c (compute_motion): Likewise.
aa2af83a 15966
048addec 15967 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 15968
048addec
JD
15969 * coding.c (setup_coding_system, shrink_encoding_region)
15970 (Fdecode_sjis_char): Likewise.
60a653f1 15971
048addec 159722001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 15973
048addec
JD
15974 * xdisp.c (display_mode_element): Don't read past end of string if
15975 it ends with '%'.
60a653f1 15976
048addec
JD
15977 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
15978 can hold.
60a653f1 15979
048addec
JD
15980 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
15981 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
15982 type changed to Lisp_Object.
15983 (syms_of_data): DEFVAR_LISP them.
60a653f1 15984
048addec 159852001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 15986
048addec
JD
15987 * callproc.c (init_callproc): Set Vdata_directory based on the source
15988 location whenever Emacs was run uninstalled.
60a653f1 15989
048addec 159902001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 15991
048addec
JD
15992 * config.in (HAVE_WORKING_VFORK): New #undefs.
15993 * process.c (create_process):
15994 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
15995 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
15996 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
15997 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
15998 * m/intel386.h (HAVE_VFORK): Likewise.
15999 * m/mips-siemens.h (HAVE_VFORK): Likewise.
16000 * m/mips.h (HAVE_VFORK): Likewise.
16001 * s/freebsd.h (vfork): Remove #define.
16002 * s/lynxos.h (HAVE_VFORK): Remove #undef.
16003 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 16004
048addec 160052001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 16006
048addec
JD
16007 * s/hpux10.h (random): Add undef.
16008 (HAVE_RANDOM): Define it just once.
60a653f1 16009
048addec 160102001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16011
048addec 16012 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 16013
048addec 160142001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 16015
048addec
JD
16016 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
16017 scroll bars of the frame before deleting the frame itself. If the
16018 frame has a widget, delete the frame with XtDestroyWidget, and do
16019 not call XDestroyWindow before that.
60a653f1 16020
048addec 160212001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 16022
048addec 16023 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 16024
048addec 16025 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 16026
048addec 160272001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 16028
048addec
JD
16029 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
16030 excessively large.
60a653f1 16031
048addec
JD
16032 * insdel.c (make_gap_larger): New function.
16033 (make_gap_smaller): New function.
16034 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
16035 Call make_gap_smaller if arg is negative.
60a653f1 16036
048addec 160372001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16038
048addec
JD
16039 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
16040 Pass a dummy argument when calling interrupt_signal.
16041 (parse_menu_item): Mark disabled items before checking for empty def.
16042 (read_char_minibuf_menu_prompt): Make safety more visible.
16043 (read_key_sequence): Add a `first_unbound' variable.
16044 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
16045 unbound prefix as soon as we can detect it.
60a653f1 16046
048addec
JD
16047 * doc.c (Fsnarf_documentation): Add prototype.
16048 (get_doc_string): Handle negative arguments.
16049 (Fdocumentation): Use AREF and ASIZE.
16050 Move the calls to get_doc_string to a single place.
16051 Don't confuse an interactive-spec for a docstring reference.
16052 (Fdocumentation_property): Take advantage of the fact that
16053 get_doc_string now ignores the sign of the docstring position.
60a653f1 16054
048addec 16055 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 16056
048addec 160572001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16058
a64387ee 16059 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 16060
048addec 160612001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16062
048addec
JD
16063 * xterm.c (x_draw_image_relief): Use predefined macro instead of
16064 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 16065
048addec 160662001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 16067
048addec
JD
16068 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
16069 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 16070
048addec 16071 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 16072
048addec 160732001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16074
048addec 16075 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 16076
048addec 160772001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 16078
048addec 16079 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 16080
048addec 160812001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 16082
f63fd14e 16083 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 16084
048addec
JD
16085 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
16086 [!WM_MOUSELEAVE]: Define.
60a653f1 16087
048addec
JD
16088 * w32menu.c (current_popup_menu, get_menu_item_info):
16089 (set_menu_item_info): New vars.
16090 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
16091 (w32_menu_show): Set current_popup_menu.
16092 (add_menu_item): Allocate new strings for owner-drawn menu items
16093 and help strings.
16094 Use owner-draw for disabled menu items again.
16095 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
16096 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 16097
048addec
JD
16098 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
16099 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
16100 <WM_EXITMENULOOP>: Free menu strings.
16101 <WM_MOUSELEAVE>: Stop tracking mouse.
16102 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 16103
048addec
JD
16104 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
16105 and mouse face.
60a653f1 16106
048addec 161072001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 16108
048addec
JD
16109 The following changes add left-fringe and right-fringe
16110 frame parameters to adjust fringe widths, or remove one or
16111 both fringes.
60a653f1 16112
048addec
JD
16113 * frame.h (struct frame): Remove trunc_area_pixel_width and
16114 trunc_area_cols fields.
16115 (Qleft_fringe, Qright_fringe): Declare.
16116 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 16117
048addec
JD
16118 * frame.c (Qleft_fringe, Qright_fringe): New vars.
16119 (syms_of_frame): Initialize them.
60a653f1 16120
048addec
JD
16121 * window.c (coordinates_in_window): Handle separate left and right
16122 fringe widths.
60a653f1 16123
048addec
JD
16124 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
16125 and fringe_cols fields.
16126 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
16127 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
16128 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
16129 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
16130 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
16131 (x_compute_fringe_widths): Add prototype.
60a653f1 16132
048addec
JD
16133 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
16134 fill fringe evenly with small dashes.
f63fd14e 16135 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
16136 clip the new ZV bitmap to avoid jitter between rows.
16137 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
16138 background. Don't draw fringe bitmaps if fringe width is zero.
16139 (x_compute_fringe_widths): New function.
16140 (x_new_font, x_set_window_size_1): Use it.
60a653f1 16141
048addec
JD
16142 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
16143 (x_set_frame_parameters): Process `font' parameter before other
16144 parameters as fringe widths depend on it.
16145 (x_set_fringe_width): New function.
16146 (x_figure_window_size): Use x_compute_fringe_widths.
16147 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
16148 parameters.
60a653f1 16149
048addec
JD
16150 * widget.c (set_frame_size): Use x_compute_fringe_widths.
16151 (EmacsFrameSetCharSize): Ditto.
60a653f1 16152
048addec
JD
16153 * w32term.h: Merged changes from xterm.h.
16154 * w32term.c: Merged changes from xterm.c.
16155 * w32fns.c: Merged changes from xfns.c.
60a653f1 16156
048addec 161572001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16158
048addec 16159 * COPYING: Removed.
60a653f1 16160
048addec 161612001-11-29 Dave Love <fx@gnu.org>
60a653f1 16162
048addec
JD
16163 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
16164 extra extra slot.
16165 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 16166
048addec 161672001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16168
048addec
JD
16169 * fileio.c (file-name-coding-system)
16170 (default-file-name-coding-system): Doc fix (links to referenced
16171 variables added).
60a653f1 16172
048addec 161732001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16174
048addec
JD
16175 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
16176 Add dummy uses of gcproN variables.
60a653f1 16177
048addec
JD
16178 * category.c (describe_category, describe_category_1)
16179 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
16180 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 16181
048addec 161822001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 16183
048addec 16184 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 16185
048addec
JD
16186 * Makefile.in (lispdir): New variable, referring to build dir.
16187 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 16188
048addec 161892001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 16190
048addec
JD
16191 * w32menu.c (w32_menu_display_help): Actually add the new argument
16192 OWNER.
60a653f1 16193
048addec 161942001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 16195
048addec
JD
16196 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
16197 menu items. From David Ponce <dponce@wanadoo.fr>.
16198 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
16199 conditionally.
f63fd14e 16200 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 16201 help event in the owner frame's keyboard buffer.
60a653f1 16202
048addec
JD
16203 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
16204 (Fx_show_tip): Don't subtract last width from row width.
16205
16206 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
16207 (w32_read_socket): Use EQ to compare frames.
60a653f1 16208
048addec 162092001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 16210
048addec
JD
16211 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
16212 OVERLAPS_P.
60a653f1 16213
048addec 162142001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16215
048addec
JD
16216 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
16217 `gcpro3' and `gcpro4'.
60a653f1 16218
048addec 16219 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 16220
048addec 162212001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16222
048addec 16223 * ccl.c: Use AREF and ASIZE.
60a653f1 16224
048addec 162252001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16226
048addec
JD
16227 * lisp.h (run_hook_list_with_args): Remove.
16228 (LIST_END_P): Fix call to wrong_type_argument.
16229 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 16230
048addec 162312001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16232
048addec
JD
16233 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
16234 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 16235
048addec
JD
16236 * eval.c: Use AREF and ASIZE.
16237 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 16238
048addec
JD
16239 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
16240 which match the end of the file-name.
16241 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
16242 is not a valid env var, but leave it as is instead.
60a653f1 16243
048addec
JD
16244 * keymap.c (access_keymap): Handle t bindings like nil bindings.
16245 Make nil bindings in char-tables transparent.
16246 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 16247
048addec 162482001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 16249
048addec
JD
16250 * textprop.c (set_text_properties_1): Allow START, END in either order.
16251 Do nothing if range is empty.
60a653f1 16252
048addec 16253 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 16254
048addec
JD
16255 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
16256 (clean): Not here.
60a653f1 16257
048addec 162582001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16259
048addec
JD
16260 * textprop.c (set_text_properties_1): Clearly mark that the
16261 interval should not be empty.
60a653f1 16262
048addec
JD
16263 * intervals.c (graft_intervals_into_buffer):
16264 Don't call set_text_properties_1 on an empty interval.
60a653f1 16265
048addec 162662001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 16267
048addec 16268 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 16269
048addec
JD
16270 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
16271 don't lose the data in it.
60a653f1 16272
048addec 162732001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 16274
048addec 16275 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 16276
c62aec78 16277 * buffer.c (Fkill_buffer): Likewise.
60a653f1 16278
c62aec78 16279 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 16280
048addec 162812001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16282
048addec 16283 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 16284
048addec 162852001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 16286
048addec
JD
16287 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
16288 Niemitalo <kon@iki.fi>.
60a653f1 16289
048addec 162902001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 16291
048addec 16292 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 16293
048addec
JD
16294 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
16295 (Fx_show_tip): Block input during frame creation.
16296 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 16297
048addec 162982001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 16299
048addec
JD
16300 * lread.c (Fload): Detect recursive load error for more than 3
16301 nestings of the same file.
16302 (Vrecursive_load_depth_limit): Variable deleted.
16303 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 16304
048addec 163052001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 16306
048addec
JD
16307 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
16308 mouse position if either left or top is not specified.
60a653f1 16309
048addec
JD
16310 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
16311 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
16312 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
16313 (my_create_tip_window): Assign tip_window.
16314 (x_create_tip_frame): Use same defaults as X.
16315 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 16316 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 16317
048addec
JD
16318 * w32term.c (x_after_update_window_line): Doc fix.
16319 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
16320 frames.
16321 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 16322
048addec
JD
16323 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
16324 for all Windowed systems.
60a653f1 16325
048addec 163262001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 16327
048addec
JD
16328 * msdos.c (IT_clear_screen): If the frame's faces are not yet
16329 realized, use the initial screen colors to clear the screen.
60a653f1 16330
048addec 163312001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16332
048addec
JD
16333 * textprop.c (Fset_text_properties): Remove unused variables
16334 `unchanged', `prev_changed', `s' and `len'.
60a653f1 16335
048addec
JD
16336 * search.c (Freplace_match): Remove unused variable `inslen'.
16337
16338 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
16339
163402001-11-22 Jason Rumney <jasonr@gnu.org>
16341
16342 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
16343 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
16344 (my_create_tip_window): New function.
16345 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
16346 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
16347
163482001-11-20 Jason Rumney <jasonr@gnu.org>
16349
16350 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
16351 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
16352
16353 * w32fns.c (Vw32_system_coding_system): Remove.
16354 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
16355
163562001-11-19 Stefan Monnier <monnier@cs.yale.edu>
16357
16358 * fileio.c (Fwrite_region): Move choose_write_coding_system to
16359 after build_annotations.
16360
16361 * syntax.c (describe_syntax): Add dummy arg.
16362 (describe_syntax_1): Update call to describe_vector.
16363
16364 * category.c (describe_category): Add dummy arg.
16365 (describe_category_1): Update call to describe_vector.
16366
16367 * keymap.c (Fdescribe_vector): Add `describer' parameter.
16368 (describe_command, describe_translation): Add dummy second param.
16369 (describe_map): Call elt_describer with two arguments.
16370 (describe_vector_princ): Add `fun' parameter.
16371 Call it instead of the hardcoded `princ'.
16372 (describe_vector): Add arg `args'.
16373 Pass it as a new second argument to elt_describer.
60a653f1 16374
048addec 16375 * keymap.h (describe_vector): Update prototype.
60a653f1 16376
048addec
JD
16377 * frame.c: Don't include keymap.h any more.
16378 (keys_of_frame): Remove.
60a653f1 16379
048addec 16380 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 16381
048addec 16382 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 16383
048addec 163842001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 16385
048addec
JD
16386 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
16387 if defined, 0 otherwise.
16388 (MAP_FAILED): Define if not defined and use it to test mmap failure.
16389 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 16390
048addec 163912001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 16392
048addec 16393 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 16394
048addec 163952001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 16396
048addec
JD
16397 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
16398 (x_draw_bar_cursor): If the background color of the glyph under
16399 the cursor equals the frame's cursor color, use the glyph's
16400 foreground color for drawing the bar cursor.
16401 (x_after_update_window_line): Clear internal border in different
16402 circumstances.
16403 (w32_set_vertical_scroll_bar): Check for width and height > 0.
16404 (w32_draw_relief_rect): Correct relief by 1 pixel.
16405 (x_set_glyph_string_background_width):
16406 Set extends_to_end_of_line_p if the row's fill_line_p is set and
16407 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
16408 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
16409 if cursor_in_non_selected_windows is false.
16410 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
16411 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
16412 Notice if cursor gets overwritten.
16413 (notice_overwritten_cursor): Renamed from
16414 note_overwritten_text_cursor. Rewritten to take glyph widths
16415 into account, and to take X positions as parameters.
16416 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
16417 around call to x_draw_glyphs.
16418 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
16419 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
16420 color to use for image glyph reliefs.
16421 (x_draw_image_relief): Accept zero tool_bar_button_relief.
16422 (glyph_rect): Remove unused variable `area'.
60a653f1 16423
048addec
JD
16424 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
16425 some items.
16426 (x_set_internal_border_width): Set frame garbaged when window
16427 doesn't exist yet.
16428 (Fx_create_frame): Accept zero tool_bar_button_relief.
16429 (x_clear_image_1, four_corners_best, image_background)
16430 (image_background_transparent): New functions.
16431 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
16432 (gs_format): Add `:background' entry.
16433 (lookup_image): Set IMG's background color if specified.
16434 (pbm_load, xbm_load_image, png_load): Set IMG's background field
16435 when appropriate.
16436 (x_clear_image_1): Reset `background_valid' and
16437 `background_transparent_valid' fields.
16438 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
16439 calculating it here. Set IMG's background_transparent field.
16440 (enum xpm_keyword_index): Add XPM_BACKGROUND.
16441 (enum png_keyword_index): Add PNG_BACKGROUND.
16442 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
16443 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
16444 (enum gif_keyword_index): Add GIF_BACKGROUND.
16445 (enum gs_keyword_index): Add GS_BACKGROUND.
16446 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
16447 Pre-calculate image background color where necessary.
16448 (x_create_x_image_and_pixmap, xbm_load, gs_load):
16449 Use display info's n_cbits entry for screen depth.
16450 (Fx_show_tip): Remove unused variables `buffer', `top',
16451 `left', `max_width' and `max_height'.
60a653f1 16452
048addec 16453 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 16454
048addec 164552001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 16456
048addec 16457 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 16458
048addec 164592001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16460
048addec 16461 * frame.c (Fframe_live_p): Doc fix.
60a653f1 16462
048addec 164632001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 16464
048addec
JD
16465 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
16466 (message_dolog_marker3): New static variables hold three markers.
16467 (syms_of_xdisp): Initialize and staticpro them.
16468 (message_dolog): Use message_dolog_marker1..3 instead of
16469 allocating markers each time. Unchain them when done.
60a653f1 16470
048addec 164712001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 16472
048addec 16473 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 16474
048addec 164752001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 16476
048addec 16477 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 16478
048addec 164792001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 16480
048addec 16481 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 16482
048addec 164832001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 16484
048addec 16485 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 16486
048addec 164872001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 16488
048addec
JD
16489 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
16490 with invalid position.
60a653f1 16491
048addec 164922001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 16493
048addec 16494 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 16495
048addec
JD
16496 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
16497 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
16498 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 16499
048addec 16500 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 16501
048addec 165022001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16503
048addec
JD
16504 * fileio.c (build_annotations): Split off the tail.
16505 (build_annotations_2): New fun. Extracted from build_annotations.
16506 (Fwrite_region): Split the call to build_annotations into two
16507 calls to build_annotations and build_annotations_2.
077907d4 16508
048addec 165092001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 16510
048addec
JD
16511 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
16512 clear_waiting_for_input with argument.
1756e2fb 16513
048addec 16514 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 16515
048addec 16516 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 16517
048addec 16518 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 16519
048addec 16520 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 16521
048addec 165222001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 16523
048addec
JD
16524 * fileio.c (choose_write_coding_system): New fun, extracted
16525 from Fwrite_region.
16526 (Fwrite_region): Use it.
fa336b91 16527
048addec
JD
16528 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
16529 (funcall_lambda, run_hook_with_args): Make static and add prototype.
16530 (ml_apply, find_handler_clause): Add prototype.
fa336b91 16531
048addec 165322001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 16533
048addec 16534 * config.in: Add #undef HAVE_COFF_H.
fa336b91 16535
048addec
JD
16536 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
16537 Required for ISC 4.1.
fa336b91 16538
048addec 165392001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 16540
048addec
JD
16541 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
16542 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 16543
048addec 165442001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 16545
048addec
JD
16546 The following changes are made to clean up the various internal
16547 references to the fringes to actually use the term `fringe' for
16548 them. Previously, they were called `flags areas', `bitmap areas',
16549 `left/right side of windows', or implicitly as `flags' or
16550 `bitmaps':
fa336b91 16551
048addec 16552 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 16553 Comments fixed. Use renamed symbols.
06e8f738 16554
f63fd14e 16555 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 16556
048addec
JD
16557 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
16558 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
16559 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 16560
048addec 16561 * msdos.c: Comment fix.
9ce647f4 16562
048addec 16563 * w32fns.c: Use renamed symbols.
9b784ab8 16564
f63fd14e 16565 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
16566 (fringe_bitmap_type): Renamed from bitmap_type.
16567 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
16568 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
16569 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 16570
f63fd14e 16571 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
16572 (fringes_extra): Renamed from flags_areas_extra.
16573 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
16574 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
16575 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
16576 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
16577 (FRAME_X_LEFT_FRINGE_WIDTH):
16578 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
16579 (FRAME_X_RIGHT_FRINGE_WIDTH):
16580 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 16581
048addec 16582 * widget.c: Use renamed symbols.
9f7e52b4 16583
f63fd14e 16584 * window.c: Comment fixes. Use renamed symbols.
048addec 16585 (coordinates-in-window-p): Doc fix.
fa336b91 16586
f63fd14e 16587 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 16588
048addec 16589 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 16590
048addec 16591 * xfns.c: Use renamed symbols.
89512fcd 16592
f63fd14e 16593 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
16594 (fringe_bitmap_type): Renamed from bitmap_type.
16595 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
16596 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
16597 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 16598
f63fd14e 16599 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
16600 (fringes_extra): Renamed from flags_areas_extra.
16601 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
16602 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
16603 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
16604 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
16605 (FRAME_X_LEFT_FRINGE_WIDTH):
16606 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
16607 (FRAME_X_RIGHT_FRINGE_WIDTH):
16608 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
16609
166102001-11-15 Jason Rumney <jasonr@gnu.org>
16611
16612 * w32menu.c (add-menu-item): Make help_echo and radio buttons
16613 work for most menu items. From David Ponce
16614 <david.ponce@wanadoo.fr>.
16615
166162001-11-15 Gerd Moellmann <gerd@gnu.org>
16617
16618 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
16619 Some x_set_* function expect to be called even if old and new
16620 value are equal.
16621
16622 * xdisp.c (build_desired_tool_bar_string): Accept zero
16623 tool_bar_button_relief.
16624
16625 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
16626
16627 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
16628
16629 * xterm.c (x_draw_bar_cursor): If the background color of the
16630 glyph under the cursor equals the frame's cursor color, use
16631 the glyph's foreground color for drawing the bar cursor.
16632
16633 * dispnew.c (direct_output_forward_char): Fix character/byte
16634 position comparison.
7d18891d 16635
048addec 166362001-11-15 Miles Bader <miles@gnu.org>
d2936d21 16637
048addec
JD
16638 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
16639 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
16640 Update arguments to find_field.
16641 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
16642 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
16643 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
16644 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 16645
048addec 166462001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 16647
048addec 16648 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 16649
048addec
JD
16650 * dispextern.h (image_background, image_background_transparent):
16651 Conditionalize on HAVE_X_WINDOWS.
7d18891d 16652
048addec 166532001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 16654
048addec 16655 * print.c (Fprin1_to_string): Doc fix.
7d18891d 16656
048addec 16657 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 16658
048addec 16659 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 16660
048addec 16661 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 16662
048addec 16663 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 16664
048addec 16665 * eval.c (syms_of_eval): Doc fix.
7d18891d 16666
048addec 16667 * coding.c (syms_of_coding): Doc fix.
7d18891d 16668
048addec 16669 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 16670
048addec 16671 * dispnew.c (syms_of_display): Doc fix.
9474c847 16672
048addec 16673 * category.c (Fget_unused_category): Doc fix.
9474c847 16674
048addec 16675 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 16676
048addec 166772001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 16678
048addec 16679 * print.c (prin1, print): Doc fix.
e3059a5d 16680
048addec 166812001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 16682
048addec
JD
16683 * fontset.h: Remove declarations of variables
16684 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 16685
048addec
JD
16686 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
16687 `Vclip_large_size_font'.
eae936e2 16688
048addec 166892001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 16690
048addec 16691 * w32fns.c: Doc fix.
ddb67bdc 16692
048addec 166932001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 16694
048addec 16695 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 16696
048addec 16697 * fns.c: Doc fix.
6e1b91d7 16698
048addec 16699 * emacs.c: Doc fix.
1c1d3d69 16700
048addec 16701 * coding.c: Doc fix.
1c1d3d69 16702
048addec
JD
16703 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
16704 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
16705 `new style' [w/`doc:' keyword].
b6f4c7ba 16706
048addec 167072001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 16708
048addec
JD
16709 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
16710 LeaveNotify events. Only FocusIn and FocusOut do that now.
16711 (x_display_and_set_cursor): Do display hollow cursors in active
16712 minibuffer windows when they are not selected.
b6f4c7ba 16713
048addec 167142001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 16715
048addec 16716 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
16717 * w32term.c: Change doc-string comments to `new style'
16718 [w/`doc:' keyword]. Doc fixes.
a89f435d 16719
048addec
JD
16720 * w32fns.c: Don't define max.
16721 (Fx_open_connection): Only execute once.
a4cd0cd7 16722
048addec 167232001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 16724
048addec
JD
16725 * ccl.c: Change macros to use do-while block instead of if-else.
16726 Use braces to follow GNU Coding Standards.
eafb659a 16727
048addec 167282001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 16729
048addec 16730 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 16731
048addec 16732 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 16733
048addec
JD
16734 * insdel.c (replace_range): Use adjust_markers_for_replace
16735 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 16736
78819ebb 16737 * intervals.h (set_text_properties, set_text_properties_1): Declare.
a4cd0cd7 16738
048addec
JD
16739 * textprop.c (set_text_properties_1): New subroutine
16740 broken out of set_text_properties.
16741 (set_text_properties): Use set_text_properties_1.
91823618 16742
048addec
JD
16743 * intervals.c (graft_intervals_into_buffer):
16744 Use set_text_properties_1 to clear out properties.
91823618 16745
048addec
JD
16746 * search.c (Freplace_match): Use replace_range to insert
16747 and delete. Don't request property inheritance from
16748 surrounding text.
86928dfb 16749
048addec 167502001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 16751
048addec 16752 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 16753 vertical fonts. Allow them if face name is explicitly specified.
048addec 16754 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 16755
048addec 167562001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 16757
048addec
JD
16758 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
16759 instead of malloc/free.
a78e0303 16760
048addec 167612001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 16762
048addec
JD
16763 * xfaces.c (merge_face_vectors): Use braces to follow GNU
16764 Coding Standards.
16765 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 16766
048addec 16767 * buffer.c (Fbury_buffer): Likewise.
0c99b139 16768
048addec 16769 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 16770
048addec
JD
16771 * coding.c (encode_coding): Use precomputed value of `src'.
16772 (encode_coding): Remove unused variable `src_end'.
16773 (code_convert_region): Remove unused variables `count'.
830ddd77 16774
048addec 167752001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 16776
048addec
JD
16777 * w32term.c (x_display_and_set_cursor): Do not move system caret
16778 if cursor_glyph is NULL.
55c6d645 16779
048addec 167802001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 16781
048addec 16782 * keymap.c (access_keymap): Fix compilation error.
5de38842 16783
048addec 167842001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 16785
048addec 16786 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 16787
048addec 167882001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 16789
048addec
JD
16790 * intervals.c (graft_intervals_into_buffer):
16791 Remove #ifdef'd-out code.
16792 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 16793
048addec
JD
16794 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
16795 code (eval-current-buffer).
16796 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 16797
048addec 167982001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 16799
048addec 16800 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 16801
048addec 168022001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 16803
048addec 16804 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 16805
048addec
JD
16806 * keyboard.c (make_lispy_event): Check integerness and fix
16807 Lisp_Object/int mixup.
17893c65 16808
048addec 168092001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 16810
048addec 16811 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 16812
048addec
JD
16813 * fontset.c (fontset_font_pattern): Remove unused variable
16814 `family_registry'.
d5360cc7 16815
048addec 16816 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 16817
048addec 168182001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 16819
048addec 16820 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 16821
048addec
JD
16822 * buffer.c (Fkill_buffer): Don't delete auto save file
16823 if buffer is modified.
d9d54213 16824
048addec 168252001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 16826
048addec
JD
16827 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
16828 CHECK_NUMBER_CDR.
b116830b 16829
048addec 168302001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 16831
048addec 16832 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 16833
048addec 168342001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 16835
048addec 16836 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 16837
048addec 168382001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 16839
048addec 16840 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 16841
048addec 168422001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 16843
048addec
JD
16844 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
16845 the program image directly.
982f6c7e 16846
048addec 168472001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 16848
048addec 16849 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 16850
048addec 168512001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 16852
048addec
JD
16853 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
16854 and CHECK_BUFFER.
d31053f9 16855
048addec
JD
16856 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
16857 (record_char): Likewise.
d31053f9 16858
048addec
JD
16859 * keyboard.c (make_lispy_event): Don't insist a drag event must
16860 move to a different buffer position. Instead, check for moving at
16861 least double_click_fuzz.
982f6c7e 16862
048addec 16863 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 16864
048addec 16865 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 16866
048addec
JD
16867 * indent.c (current_column_1, Fmove_to_column): Separate the code
16868 for display-table glyphs from the code for buffer text, to fix
16869 bugs in the former.
830047fd 16870
048addec 168712001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 16872
048addec
JD
16873 * buffer.c (Fbuffer_local_value): New function.
16874 (syms_of_buffer): Defsubr it.
2df5238c 16875
048addec
JD
16876 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
16877 value of `cursor-in-non-selected-windows'.
4e397688 16878
048addec
JD
16879 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
16880 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
16881 (syms_of_xdisp): Initialize it.
48b0f3ae 16882
048addec 168832001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 16884
048addec 16885 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 16886
048addec
JD
16887 * coding.c: Change doc-string comments to `new style' [w/`doc:'
16888 keyword].
3ecaf7e5 16889
048addec
JD
16890 * eval.c (top_level_value, top_level_set): Remove commented and
16891 #ifdef'd-out code.
16892 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 16893
048addec 168942001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 16895
048addec 16896 * xfns.c: Include unistd.h, if it exists.
8db2e33b 16897
048addec 16898 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 16899
048addec 16900 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 16901
048addec 169022001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 16903
048addec
JD
16904 * lisp.h (CHECK_STRING_CAR): New macro.
16905 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
16906 treating XCAR and XCDR as lvalues.
16907 (openp): Use CHECK_STRING_CAR.
16908 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 16909
048addec 169102001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 16911
048addec
JD
16912 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
16913 (SIGMASKTYPE): Define.
1b1acc13 16914
048addec 16915 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 16916
048addec 169172001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 16918
048addec
JD
16919 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
16920 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
16921 Fix typos in comments.
6cb16f95 16922
048addec
JD
16923 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
16924 and #ifdef'd-out code.
16925 Fix and reindent comments.
6cb16f95 16926
048addec 16927 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 16928
048addec
JD
16929 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
16930 argument `i' in macros.
6cb16f95 16931
048addec
JD
16932 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
16933 `i' in macros.
7e9d3c2f 16934
048addec
JD
16935 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
16936 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
16937 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
16938 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
16939 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
16940 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
16941 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
16942 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
16943 in macros.
7e9d3c2f 16944
048addec
JD
16945 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16946 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
16947 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
16948 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
16949 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
16950 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
16951 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
16952 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
16953 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
16954 (remove unused second argument).
7e9d3c2f 16955
048addec 169562001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 16957
048addec
JD
16958 * syntax.c (describe_syntax): New wrapper.
16959 (Finternal_describe_syntax_value): Rename from describe_syntax.
16960 Don't insert space at front and \n at the end.
16961 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 16962
048addec
JD
16963 * regex.c (re_wctype): Try to fix some warnings.
16964 (regcomp, regexec): Don't forget the __restrict.
9ba48103 16965
048addec 169662001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 16967
048addec 16968 * textprop.c (Fget_char_property): Doc fix.
9ba48103 16969
048addec 169702001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 16971
048addec 16972 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 16973
048addec 16974 * data.c (Fsetq_default): Ditto.
c22e59e1 16975
048addec 16976 * callint.c (Finteractive): Ditto.
9271ed2c 16977
048addec 169782001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 16979
048addec
JD
16980 * macros.c: Don't include keymap.h any more.
16981
169822001-11-01 Richard M. Stallman <rms@gnu.org>
16983
16984 * data.c (Fmake_local_variable): Doc fix.
16985
16986 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
16987 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 16988
048addec 16989 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
16990 bindings along with or instead of the buffer local map.
16991 Make the overriding maps override what they should.
16992
f00691a3 169932001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
16994
16995 * window.c (grow_mini_window): Fix typo in comment.
16996
27188d11
GM
169972001-11-01 Gerd Moellmann <gerd@gnu.org>
16998
7b49b9d2
GM
16999 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
17000 (XTset_vertical_scroll_bar): Likewise.
17001
43f7c3ea
GM
17002 * xfns.c (x_build_heuristic_mask): Use four_corners_best
17003 instead of IMAGE_BACKGROUND.
c22e59e1 17004
b350c2e5
GM
17005 * xfns.c (four_corners_best): Reindent.
17006
c22e59e1 17007 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
17008 Handle :box so that it is possible to specify sexprs.
17009
bf00d461
EZ
170102001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
17011
17012 * s/hpux11.h: New file.
17013
f00691a3 170142001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 17015
2b209b97
PJ
17016 * emacs.c (USAGE1): Show command line option --no-window-system
17017 instead of --no-windows in usage.
17018 (standard_args): Rename --no-windows to --no-window-system.
17019 (bug_reporting_address): Follow Emacs coding conventions.
17020
9dbc9081
PJ
17021 * eval.c (Fcommandp): Doc fix.
17022 Change doc-string comments to `new style' [w/`doc:' keyword].
17023
4e10df59
PJ
17024 * frame.c (Fframe_live_p): Doc fix.
17025
17026 * buffer.c (selective-display-ellipses): Doc fix.
17027
dd387b25
GM
170282001-10-31 Gerd Moellmann <gerd@gnu.org>
17029
fe957e65
GM
17030 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
17031
dd387b25
GM
17032 * xfaces.c (realize_x_face): If C is not a single-byte character,
17033 set the face's colors_copied_bitwise_p instead of the defaulted_p
17034 members which have a different meaning.
17035 (free_face_colors): Do nothing for a face whose colors have been
17036 copied bitwise.
17037
c22e59e1 17038 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 17039
f00691a3 170402001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 17041
687784e8
PJ
17042 * marker.c, mocklisp.c: Change doc-string comments to `new style'
17043 [w/`doc:' keyword].
2e1280f8 17044
b9d9a9b9
GM
170452001-10-31 Gerd Moellmann <gerd@gnu.org>
17046
17047 * fns.c (require_unwind): Return Lisp_Object.
17048
f00691a3 170492001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 17050
fa1361cb
PJ
17051 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
17052 (last-input-char): Revert doc-string to be the same as the
17053 doc-string of `last-input-event'.
17054
6c465a15 17055 * xdisp.c: Fix typos in comments.
48400103 17056
eafa3196
GM
170572001-10-31 Gerd Moellmann <gerd@gnu.org>
17058
17059 * window.c (grow_mini_window): Handle case that the root
17060 window is already smaller than the nominal mininum height.
17061
747d3f2a
SM
170622001-10-30 Stefan Monnier <monnier@cs.yale.edu>
17063
bf9bb76f
SM
17064 * emacs.c (main): Don't call keys_of_macros any more.
17065
17066 * lisp.h (keys_of_macros): Remove.
17067
17068 * macros.c (keys_of_macros): Remove.
17069
747d3f2a
SM
17070 * xfaces.c (Fface_attribute_relative_p): Declare args.
17071
5e905a57
JR
170722001-10-30 Jason Rumney <jasonr@gnu.org>
17073
17074 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
17075 (enum_font_cb2): Ignore fonts with vertical orientation.
17076
3a426197
RS
170772001-10-30 Richard M. Stallman <rms@gnu.org>
17078
17079 * keyboard.c (Finput_pending_p): Doc fix.
17080
a742d646
GM
170812001-10-30 Gerd Moellmann <gerd@gnu.org>
17082
259cf6bc
GM
17083 * xterm.c (x_after_update_window_line): Don't run the code
17084 clearing in borders for rows whose visible height is 0.
17085
3f99f948
GM
17086 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
17087 resized_p flag is set. If not set, use the much less flickering
17088 method previously used.
17089
17090 * dispnew.c (change_frame_size_1): Set frame's resized_p.
17091
17092 * frame.h (struct frame) <resized_p>: New member.
17093
b4a3be43
GM
17094 * lread.c (to_multibyte): Ensure read_buffer is at least twice
17095 as large as the number of bytes to convert.
747d3f2a 17096
a742d646
GM
17097 * lread.c (to_multibyte): New function.
17098 (read1): Use it.
17099
cacbb9e9
EZ
171002001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
17101
17102 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
17103
99cb6b2f
GM
171042001-10-30 Gerd Moellmann <gerd@gnu.org>
17105
327f42ee 17106 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
17107 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
17108 if the row's fill_line_p is set and drawing the last glyph with
17109 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 17110
99cb6b2f
GM
17111 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
17112
8e8223e2
SM
171132001-10-29 Stefan Monnier <monnier@cs.yale.edu>
17114
17115 * xmenu.c: Include coding.h and charset.h.
17116 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
17117 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
17118 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
17119 Explicitly set wv->help. Use `TRUE' rather than `True'.
17120 (menu_help_callback): Use empty_string.
17121
17122 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
17123 (Fx_popup_dialog): Explicitly init f.
17124 (w32_menu_display_help): Use empty_string.
17125
4d083a8f
RS
171262001-10-29 Richard M. Stallman <rms@gnu.org>
17127
b2304472
RS
17128 * fns.c (Frequire): Detect recursive try to require the same
17129 feature 3 or more levels deep, and get error.
17130 (require_unwind): New subroutine.
17131 (require_nesting_list): New variable.
17132 (syms_of_fns): Init and staticpro it.
17133
4d083a8f
RS
17134 * print.c (print_object): Clarify indication of insertion type.
17135
2fe41216
EZ
171362001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
17137
90480000
EZ
17138 * coding.c (syms_of_coding): Document that locale-coding-system is
17139 used for decoding input on X.
17140
2fe41216
EZ
17141 * window.c (Fscroll_left, Fscroll_right): Doc fix.
17142
f00691a3 171432001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
17144
17145 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
17146 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
17147
60ebcfe8
GM
171482001-10-29 Gerd Moellmann <gerd@gnu.org>
17149
9a7bdceb
GM
17150 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
17151 use NO_CURSOR if cursor_in_non_selected_windows is false.
17152
3f08fcd2
GM
17153 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
17154 the slant attribute if FRAME is t.
17155
0ccfdad2
GM
17156 * xfns.c (x_set_internal_border_width): Set frame garbaged
17157 when X window doesn't exist yet.
17158
ef253080
GM
17159 * xterm.c (x_after_update_window_line): Clear internal border
17160 in different circumstances.
b116830b 17161
60ebcfe8
GM
17162 * xterm.c (XTread_socket) <KeyPress>: Don't use
17163 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
17164 <handa@etl.go.jp>.
17165
73d25f9c
EZ
171662001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
17167
17168 * m/ibms390.h: New file. From Adam Thornton
17169 <athornton@sinenomine.net>.
17170
cac1daf0
GM
171712001-10-28 Gerd Moellmann <gerd@gnu.org>
17172
053b3256 17173 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 17174
cac1daf0
GM
17175 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
17176 a loop counter.
17177
f00691a3 171782001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 17179
f9711de4 17180 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 17181
4707d2d0
PJ
17182 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
17183 keyword].
17184 Fix typos in comments.
b116830b 17185
d883731c
PJ
17186 * emacs.c (bug_reporting_address): New function.
17187 Use it when displaying usage message.
17188
04012254
PJ
17189 * minibuf.c (read_minibuf): Remove unused external declaration of
17190 variable `Qread_only'.
17191
13b1a09c
PJ
17192 * keymap.c (access_keymap): Remove unused variable `charset'.
17193
5bbf4378
MB
171942001-10-28 Miles Bader <miles@gnu.org>
17195
17196 * xfaces.c (merge_face_heights): Handle TO being relative as well.
17197 Remove #ifdef'd-out code.
17198 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
17199 (syms_of_xfaces): Initialize them.
17200
1ce1e4ee
JR
172012001-10-27 Jason Rumney <jasonr@gnu.org>
17202
17203 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
17204 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
17205 position using the system caret.
17206
17207 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
17208 (w32_system_caret_height, w32_system_caret_x)
17209 (w32_system_caret_y): New variables for tracking system caret.
17210 (w32_initialize): Initialize them.
c2d53558 17211 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 17212
c2d53558
SM
17213 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
17214 New messages types.
1ce1e4ee
JR
17215
17216 * w32term.c (note_mouse_highlight): Clear old help_echo.
17217
f00691a3 172182001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 17219
bb4600a4
PJ
17220 * xterm.c: Fix typo in a comment.
17221
7db35a48
PJ
17222 * emacs.c: Fix typos in comments.
17223 Remove unnecessary spaces.
17224 Change doc-string comments to `new style' [w/`doc:' keyword].
17225 (USAGE2): Fix typos in usage string.
17226
a7248e4f
PJ
17227 * xterm.c: Fix typo in a comment.
17228
4e30ce42
PJ
17229 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
17230 emacs.c.
17231
62725a92
GM
172322001-10-27 Gerd Moellmann <gerd@gnu.org>
17233
798dbe1f 17234 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 17235 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
17236 farther backward when target_y was not reached.
17237
62725a92
GM
17238 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
17239 Display errno only if non-zero.
17240 (sound_warning): New function.
17241 (vox_configure): Don't treat failing to set sample rate as error.
17242 (various places): Improve error messages.
17243
d4e34d24
EZ
172442001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
17245
944e6f60
EZ
17246 * fileio.c (Faccess_file): Run the argument filename through
17247 Fexpand_file_name, before using it.
17248
d4e34d24
EZ
17249 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
17250 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
17251
38d2af0c
GM
172522001-10-26 Gerd Moellmann <gerd@gnu.org>
17253
da80a8d5
GM
17254 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
17255
38d2af0c
GM
17256 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
17257 Fix clearing in the case of scroll bars on the right.
c2d53558 17258
45de4a6f 172592001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
17260
17261 * w32gui.h (XImage): Add a dummy typedef.
17262
fbd5ceb2
GM
172632001-10-26 Gerd Moellmann <gerd@gnu.org>
17264
c2d53558 17265 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 17266
b23236fb
EZ
172672001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
17268
17269 * frame.c (Fframe_parameter): Fix last change.
17270
5d991fc4
EZ
17271 * fileio.c: Revert last change (which removed old commented-out
17272 version of expand-file-name). Add a comment that explains why
17273 this old version should not be removed.
17274
879eadc3
GM
172752001-10-25 Gerd Moellmann <gerd@gnu.org>
17276
75700ff2
GM
17277 * frame.c (Fframe_parameter): Fix a bug whereby some
17278 ``artificial'' frame parameters, like `minibuffer' were not
17279 obtained by calling Fframe_parameters.
17280
dfe92a6a
GM
17281 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
17282 cursor differently.
17283
879eadc3
GM
17284 * xdisp.c (move_it_vertically_backward): Compute line height
17285 differently. Add heuristic to try to be more compatible to 20.x.
17286
e1010ebe
SM
172872001-10-25 Stefan Monnier <monnier@cs.yale.edu>
17288
d73a471b
SM
17289 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
17290
d6da5a06
GM
17291 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
17292 boolean.
e1010ebe 17293
f66bd220
MB
172942001-10-25 Miles Bader <miles@gnu.org>
17295
17296 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
17297 BG is a pointer to a structure, not a structure.
17298 (gif_format, png_format): Add missing commas.
17299
d436d538
RS
173002001-10-24 Richard M. Stallman <rms@gnu.org>
17301
17302 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 17303 (syms_of_xfaces): Defsubr it.
d436d538 17304
f00691a3 173052001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
17306
17307 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
17308 variable `area'.
17309
f00691a3 173102001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 17311
c2d53558 17312 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 17313
e2a57b34
MB
173142001-10-25 Miles Bader <miles@gnu.org>
17315
17316 * dispextern.h (struct image): Add `background',
17317 `background_valid', and `background_transparent' fields.
17318 (image_background, image_background_transparent): New declarations.
17319 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
17320 * xfns.c (image_background, image_background_transparent)
17321 (four_corners_best): New functions.
c2d53558 17322 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
17323 (gs_format): Add `:background' entry.
17324 (lookup_image): Set IMG's background color if specified.
17325 (pbm_load, xbm_load_image, png_load): Set IMG's background field
17326 when appropriate.
17327 (x_clear_image_1): Reset `background_valid' and
17328 `background_transparent_valid' fields.
17329 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
17330 calculating it here. Set IMG's background_transparent field.
17331 (enum xpm_keyword_index): Add XPM_BACKGROUND.
17332 (enum png_keyword_index): Add PNG_BACKGROUND.
17333 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
17334 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
17335 (enum gif_keyword_index): Add GIF_BACKGROUND.
17336 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 17337 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
17338 Pre-calculate image background color where necessary.
17339 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
17340 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
17341 color to use for image glyph reliefs.
17342
b547b6e8
GM
173432001-10-24 Gerd Moellmann <gerd@gnu.org>
17344
d9e3b8c6
GM
17345 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
17346 in full-width rows.
c2d53558 17347
b547b6e8
GM
17348 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
17349 Fix clearing of area not covered by scroll bar.
17350
f00691a3 173512001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
17352
17353 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
17354 and `real_start'.
c2d53558 17355 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
17356 (glyph_rect): Remove unused variable `area'.
17357
76cb5e06
GM
173582001-10-24 Gerd Moellmann <gerd@gnu.org>
17359
bdbdebff 17360 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
17361
17362 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
17363 (row_containing_pos): Take additional argument DY.
17364 Treat rows ending in middle of char differently.
62e33982
GM
17365 (display_line): Handle tabs on window systems differently.
17366
17367 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
17368 with additional argument.
17369
17370 * dispextern.h (row_containing_pos): Adjust prototype.
17371
76cb5e06
GM
17372 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
17373 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
17374 (try_window_id, try_window_reusing_current_matrix)
17375 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 17376 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 17377
f00691a3 173782001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 17379
c9e60620
PJ
17380 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
17381 gnuemacs).
17382 (HAVE_BOXES): Fix typo in comment.
17383 (push_menu_pane): Fix typo in comment.
17384
3b552d56
PJ
17385 * xdisp.c: (display_prop_string_p): Remove unused local declaration
17386 of `Qwhen'.
17387 (single_display_prop_string_p): Remove unused local declarations
17388 of `Qwhen' and `Qmargin'.
17389 (string_buffer_position): Remove unused variable `around'.
17390 (store_frame_title): Remove unused variable `width'.
17391
15c565ac
PJ
17392 * window.c: Don't define max.
17393 (coordinates_in_window): Remove unused variable `uy'.
17394
a8818eb9
PJ
17395 * widget.c: Don't define max.
17396
996fee11
PJ
17397 * process.c: Don't define max.
17398 (create_process): Remove unused variable `buffer'.
17399
496e1a5b
GM
174002001-10-23 Gerd Moellmann <gerd@gnu.org>
17401
c2d53558 17402 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 17403
5905ae8b
EZ
174042001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
17405
17406 * xfaces.c (Finternal_set_lisp_face_attribute)
17407 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
17408 frame is on a windowed display.
17409
24db49fb
GM
174102001-10-23 Gerd Moellmann <gerd@gnu.org>
17411
c2d53558
SM
17412 * dispnew.c (sync_window_with_frame_matrix_rows):
17413 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
17414 of marginal areas.
17415
c2d53558 17416 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 17417
f0487f05
EZ
174182001-10-23 Andreas Schwab <schwab@suse.de>
17419
17420 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
17421 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
17422
f0a48a01
GM
174232001-10-23 Gerd Moellmann <gerd@gnu.org>
17424
c2d53558 17425 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
17426 REAL_END. Notice if cursor gets overwritten.
17427 (notice_overwritten_cursor): Take X positions as parameters.
17428 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
17429 around call to x_draw_glyphs.
17430
f00691a3 174312001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 17432
fc11dff0
PJ
17433 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
17434 instead of C) and usage.
a50a10a0 17435
fc11dff0
PJ
17436 * editfns.c (char-to-string): Fix argument names (use CHAR instead
17437 of C) and usage.
a50a10a0
PJ
17438
17439 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
17440 `left', `max_width' and `max_height'.
17441
8738febd
GM
174422001-10-23 Gerd Moellmann <gerd@gnu.org>
17443
17444 * xdisp.c (display_line): For a tab continued to the next line,
17445 set row's ends_in_middle_of_char_p.
17446
653c329b
GM
174472001-10-22 Gerd Moellmann <gerd@gnu.org>
17448
17449 * xdisp.c (display_line): Fix computation of continuation lines
17450 width for TABs.
17451
f00691a3 174522001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 17453
7ba51063
PJ
17454 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
17455 `Qlaplace'.
17456
f958c5ac
PJ
17457 * fileio.c: Remove unused code.
17458
eb360291
MB
174592001-10-22 Miles Bader <miles@gnu.org>
17460
17461 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
17462 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
17463 Remove `DOC_STRINGS_IN_COMMENTS' cases.
17464
98515cf0
JR
174652001-10-21 Jason Rumney <jasonr@gnu.org>
17466
17467 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
17468
93026d88
EZ
174692001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
17470
17471 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
17472 (Finsert_string): Avoid the multi-line string literals warning.
17473
c9a95b79
MB
174742001-10-22 Miles Bader <miles@gnu.org>
17475
17476 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
17477 (Fdocumentation): Don't use it.
17478 (syms_of_doc): Don't initialize it.
17479
17480 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
17481 * print.c (Fwith_output_to_temp_buffer): Likewise.
17482 * window.c (Fsave_window_excursion): Likewise.
c2d53558 17483 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 17484 (Fsave_restriction): Likewise.
c2d53558
SM
17485 * eval.c (Frun_hooks, Frun_hook_with_args)
17486 (Frun_hook_with_args_until_failure)
17487 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
17488 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
17489 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
17490 (Funwind_protect, Fcondition_case): Likewise.
17491 * coding.c (Ffind_operation_coding_system): Likewise.
17492 * keyboard.c (Ftrack_mouse): Likewise.
17493
a3b10252
MB
174942001-10-21 Miles Bader <miles@gnu.org>
17495
c2d53558 17496 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
17497 (Fmake_hash_table): Add usage: string to doc string.
17498 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 17499 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
17500 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
17501 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
17502 (Fml_prefix_argument_loop): Likewise.
17503
f00691a3 175042001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 17505
c2d53558 17506 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 17507
c6f73eec
PJ
17508 * sysdep.c (init_sys_modes): Change doc-string comments to `new
17509 style' [w/`doc:' keyword].
17510
17511 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
17512 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
17513 comments to `new style' [w/`doc:' keyword].
17514
3cf3436e
JR
175152001-10-21 Jason Rumney <jasonr@gnu.org>
17516
17517 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
17518
c169b8f1
JR
17519 * w32term.c (remember_mouse_glyph): New function.
17520 (w32_mouse_position): Use it.
17521 (note_mouse_movement): If the mouse moved off the glyph, remember
17522 its new position.
c2d53558 17523
4fdd691b
JR
17524 * w32term.h (struct w32_output): Correct spelling of x_compatible.
17525 (w32_display_info): Add mouse_face_overlay.
17526
c169b8f1
JR
17527 * w32term.c (notice_overwritten_cursor): Renamed from
17528 note_overwritten_text_cursor. Rewritten to take glyph widths into
17529 account.
17530 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
17531 (fast_find_string_pos): New function.
17532 (fast_find_position): Return the correct vpos. Add parameter
17533 STOP. In the final row, stop before glyphs having STOP as object.
17534 Don't consider glyphs that are not from a buffer.
17535 (fast_find_position) [0]: Add a presumably more correct version
17536 for after 21.1.
17537 (expose_window_tree, expose_frame): Don't compute intersections here.
17538 (expose_window): Do it here instead.
17539 (expose_window_tree, expose_window, expose_line): Return 1 when
17540 overwriting mouse-face.
17541 (expose_window): If W is the window currently being updated, mark
17542 the frame garbaged.
17543 (expose_frame): If mouse-face was overwritten, redo it.
17544 (x_use_underline_position_properties): New variable.
17545 (syms_of_xterm): DEFVAR_BOOL it.
17546 (x_draw_glyph_string): Add comment to use it in future.
17547 (x_draw_glyph_string): Restore clipping after drawing box.
17548 Fix a computation of the underline position.
17549 (w32_get_glyph_string_clip_rect): Minor cleanup.
17550 (x_fill_stretch_glyph_string): Remove an assertion.
17551 (x_produce_glyphs): Don't convert multibyte characters
17552 to unibyte characters in unibyte buffers.
17553 (cursor_in_mouse_face_p): New function.
17554 (x_draw_stretch_glyph_string): Use it to choose a different GC
17555 when drawing a cursor within highlighted text. Don't draw
17556 background again if it has already been drawn.
17557 (x_draw_glyph_string_box): Don't draw a full-width
17558 box just because the glyph row's full_width_p flag is set.
17559 (x_draw_glyphs): Fix computation of rightmost x for
17560 full-width rows.
17561 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
17562 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 17563 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
17564 (x_update_window_end): Handle overwritten mouse face
17565 also for tool bar windows.
17566 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
17567 DRAW is DRAW_IMAGE_RAISED.
17568 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
17569 actually redrawn. Make the function static.
17570 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
17571 optimize away highlighting if we pass over that same overlay again.
17572 (note_mouse_highlight): Call mouse_face_overlay_overlaps
17573 to detect a case where we have to highlight a different region
17574 despite not having left the currently highlighted region.
17575 Set mouse_face_overlay in the x_display_info. Avoid changing the
17576 mouse pointer shape when show_mouse_face has already done it, or
17577 there is no need. Handle mouse-face and help-echo in strings.
17578 (glyph_rect): New function.
17579 (w32_mouse_position): Use it to raise the threshold for mouse
17580 movement event generation.
17581 (w32_initialize_display_info): Initialize the x_display_info's
17582 mouse_face_overlay.
17583 (w32_set_vertical_scroll_bar): Don't clear a zero height
17584 or width area.
17585 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
17586 a widget to zero height.
17587
3cf3436e 17588 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 17589 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
17590 equivalents in menu_items.
17591 (w32_menu_show): Don't overwrite an item's name with its key
17592 description in case the description is a multibyte string.
17593 (single_submenu): Some cleanup.
17594
17595 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
17596 (postprocess_image): New function.
17597 (lookup_image): Call it for all image types except PostScript.
17598 (x_kill_gs_process): Call postprocess_image.
17599 (tiff_error_handler, tiff_warning_handler): New functions.
17600 (tiff_load): Install them as handlers.
17601 (x_kill_gs_process): Recognize if someone has cleared the image
17602 cache under us.
17603 (valid_image_p): Protect better against invalid image
17604 specifications. Previous code could signal an error.
17605 (Fx_hide_tip, Fshow_tip): Doc fix.
17606 (Fv_max_tooltip_size): New variable.
17607 (syns_of_xfns): DEFVAR_LISP it.
17608 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 17609 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
17610 window_width. Use a maximum tooltip size specified by
17611 Vx_max_tooltip_size, if that has valid contents.
17612 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
17613 Make sure the tooltip is completely visible.
17614 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
17615 (Fx_create_frame): Adjust the frame's height for presence
17616 of the tool bar before calling x_figure_window_size.
17617 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
17618 when the window gets smaller.
17619 (x_set_foreground_color): Set frame's cursor_pixel.
17620 (x_set_foreground_color, x_set_background_color): Cleaned up.
17621 (x_set_font): Handle case of x_new_fontset returning the same name
17622 as before, although there was a change in fontsets.
17623
386ca361
MB
176242001-10-21 Miles Bader <miles@gnu.org>
17625
c2d53558 17626 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
17627 (Flogxor): Add usage: string to doc string.
17628 * charset.c (Fstring): Likewise.
17629 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
17630 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
17631
f00691a3 176322001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 17633
03be2694
PJ
17634 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
17635
17636 * alloc.c: Reindent DEFUNs with doc: keywords.
17637
17638 * abbrev.c (Finsert_abbrev_table_description): Reindent.
17639
14ff1ee0
PJ
17640 * frame.c: Change doc-string comments to `new style' [w/`doc:'
17641 keyword].
17642
2f147815 17643See ChangeLog.9 for earlier changes.
6922b018
KH
17644
17645;; Local Variables:
49b3bd82 17646;; coding: iso-2022-7bit
6922b018 17647;; End:
2a34a036 17648
2f147815 17649 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
17650 Copying and distribution of this file, with or without modification,
17651 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
17652
17653;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4