(syms_of_minibuf) <completion-ignore-case>: Doc fix.
[bpt/emacs.git] / src / ChangeLog
1 2004-11-13 Richard M. Stallman <rms@gnu.org>
2
3 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
4 (get_next_display_element): Fix previous change to apply only to \n.
5
6 * indent.c (Fvertical_motion): Scan to PT from start of line to
7 make iterator consistent.
8
9 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
10
11 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12
13 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
14
15 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
16 Record unwind with clean_up_file_dialog.
17
18 * xterm.h: Declare x_menu_in_use, x_menu_set_in_use,
19 x_menu_wait_for_event.
20
21 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
22
23 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
24
25 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
26 (xg_file_sel_destroy): Removed.
27 (xg_file_response_cb, pop_down_file_dialog,
28 xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
29 New functions.
30 (xg_get_file_with_chooser, xg_get_file_with_selection): Take
31 new argument func, set it to xg_get_file_name_from_chooser/selector.
32 Move common code to xg_get_file_name. Return widget created.
33 (xg_get_file_name): Set name, transient for, modal and destroy
34 with parent here. Connect response signal to xg_file_response_cb,
35 connect delete-event to gtk_true. Record pop_down_file_dialog
36 for unwind. Do event loop and call x_menu_wait_for_event in loop.
37 (xg_create_widget): Make dialogs modal.
38
39 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
40 Lisp_Object.
41 (popup_get_selection): Move unwind protect ...
42 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
43 Move destroy of widget to pop_down_menu.
44 (popup_widget_loop): Move unwind protect ...
45 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
46 Move destroy of widget to pop_down_menu.
47 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
48 (xmenu_show): record unwind pop_down_menu. Move XMenuDestroy,
49 x_mouse_leave and grabbed = 0 to pop_down_menu.
50
51 2004-11-13 Kim F. Storm <storm@cua.dk>
52
53 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
54 (syms_of_xdisp): DEFVAR_BOOL it.
55 (make_cursor_line_fully_visible, try_cursor_movement)
56 (try_window_id): Use it.
57
58 2004-11-12 Kim F. Storm <storm@cua.dk>
59
60 * dispextern.h (struct glyph_row): New member extra_line_spacing.
61 (struct it): New member max_extra_line_spacing.
62 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
63 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
64 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
65 part of last line is only extra line spacing (so the text on the
66 line is fully visible). Use helper macros.
67 Add W arg (to use them). All callers changed.
68 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
69 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
70
71 * window.c (window_scroll_pixel_based, Frecenter): Use
72 move_it_vertically_backward directly.
73 (Frecenter): Fix calculation of new start pos for negative arg.
74 Before, the new start pos was sometimes chosen too far back, so
75 the last line became only partially visible, and thus would be
76 either only semi-visible or automatically scrolled to the middle
77 of the window by redisplay.
78
79 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
80 (move_it_vertically_backward): Don't recure to move further back.
81 (move_it_vertically): Remove superfluous condition.
82 (move_it_by_lines): Clear last_height when moved 0 lines.
83 (resize_mini_window): use it.max_extra_line_spacing.
84 (display_tool_bar_line): Clear row->extra_line_spacing.
85 (try_scrolling): Use move_it_vertically_backward directly.
86 (redisplay_window): Likewise.
87 (compute_line_metrics): Set row->extra_line_spacing.
88 (display_line, display_string): Likewise.
89 (x_produce_glyphs): Update it->max_extra_line_spacing.
90
91 * xmenu.c (pop_down_menu): Return nil.
92
93 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
94
95 * xmenu.c (x_menu_wait_for_event): New function.
96 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
97 to handle timers.
98 (popup_widget_loop): Add argument do_timers.
99 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
100 do_timers to popup_widget_loop.
101 (xmenu_show): Call XMenuActivateSetWaitFunction so that
102 x_menu_wait_for_event is called by XMenuActivate.
103 (create_and_show_popup_menu): Pass 1 for do_timers to
104 popup_get_selection.
105 (pop_down_menu): New function.
106 (popup_get_selection, popup_widget_loop): Unwind protect to
107 pop_down_menu.
108 (popup_widget_loop): Add argument widget.
109 (create_and_show_popup_menu, create_and_show_dialog): Pass new
110 argument widget to popup_widget_loop.
111
112 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
113
114 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
115
116 2004-11-09 Kim F. Storm <storm@cua.dk>
117
118 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
119 Fix various comments referring to XEvents instead of input events.
120 (x_queue_event): Fix format strings.
121 (x_stop_queuing_selection_requests): Likewise.
122
123 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
124 (pint2hrstr): Add extra braces to silence compiler.
125
126 * print.c (print_object): Fix format string.
127
128 * lread.c (read1): Fix next_char matching.
129
130 * lisp.h (Fdelete): Add EXFUN.
131 (replace_range_2): Add prototype.
132
133 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
134
135 * intervals.h (NULL_INTERVAL_P): Add separate version when
136 ENABLE_CHECKING is not defined to silence compiler.
137 (compare_string_intervals): Add prototype.
138
139 * fringe.c (destroy_fringe_bitmap): Fix return type.
140 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
141
142 * emacs.c (Fdump_emacs): Fix format string.
143
144 * doc.c: Include <ctype.h>.
145 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
146
147 * data.c (store_symval_forwarding): Remove unused variables.
148
149 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
150
151 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
152
153 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
154 to ${OLDXMENU}.
155
156 2004-11-09 Kim F. Storm <storm@cua.dk>
157
158 * process.c (Fmake_network_process): Remove kludge for interrupted
159 connects on BSD. If connect is interrupted, just close socket and
160 start over rather than sleeping and retry with same socket.
161
162 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
163
164 * .cvsignore: Add buildobj.lst.
165
166 * doc.c: New variable Vbuild_files.
167 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
168 file names from buildobh.lst. Only attach docstrings from files
169 that are in Vbuild_files.
170 (syms_of_doc): Defvar Vbuild_files.
171
172 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
173 and w32*.o.
174 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
175 (mostlyclean): rm buildobj.lst
176
177 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
178 is linked.
179
180 2004-11-09 Kim F. Storm <storm@cua.dk>
181
182 * fringe.c (update_window_fringes): Update fringe bitmaps if
183 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
184 also update previous row to get rid of misc. artifacts.
185
186 2004-11-08 Kim F. Storm <storm@cua.dk>
187
188 * xdisp.c (fast_find_position): Fix start pos if header line present.
189 (note_mouse_highlight): Clear mouse face if we move out of text area.
190
191 2004-11-08 Eli Zaretskii <eliz@gnu.org>
192
193 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
194 Don't include <sys/time.h> explicitly.
195 Include <stdio.h> unconditionally, not just on MacOS.
196
197 2004-11-08 Kenichi Handa <handa@m17n.org>
198
199 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
200 don't pay attention to '\' before '*'.
201 (fontset_pattern_regexp): Change the meaning of the second arg.
202 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
203 (check_fontset_name): Try NAME as literal at first, and if it
204 failes, try NAME as pattern.
205
206 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
207
208 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
209
210 2004-11-07 Andreas Schwab <schwab@suse.de>
211
212 * lisp.h: Declare Fmsdos_downcase_filename.
213 * dired.c: Don't declare Fmsdos_downcase_filename.
214 * fileio.c: Likewise.
215
216 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
217
218 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
219 comparisons with integers instead of Lisp_Object address.
220 (Fmsdos_set_keyboard): Declare argument allkeys.
221
222 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
223
224 * dired.c: extern declare Fmsdos_downcase_filename on MSDOS to avoid
225 int/Lisp_Object mixup.
226
227 * fileio.c: Ditto.
228
229 2004-11-06 Steven Tamm <steventamm@mac.com>
230
231 * editfns.c: Need to include sys/time.h before resource.h on darwin.
232
233 2004-11-06 Richard M. Stallman <rms@gnu.org>
234
235 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
236
237 * xfaces.c (merge_named_face): GCPRO the face_name in the
238 named_merge_point struct that we make.
239 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
240
241 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
242 before deciding whether to inactivate mark.
243
244 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
245
246 * config.in: Regenerate (add HAVE_GETRUSAGE).
247 * editfns.c (Fget_internal_run_time): New function.
248 (syms_of_data): Defsubr it.
249 * fns.c (sxhash): As far as possible, merge calculation of
250 hash code for symbols and strings.
251
252 2004-11-06 Eli Zaretskii <eliz@gnu.org>
253
254 * frame.c (syms_of_frame): Fix the example in the doc string.
255
256 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
257
258 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
259
260 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
261 (create_and_show_dialog): Revert change from 2004-10-31.
262
263 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
264
265 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
266
267 2004-11-05 Kim F. Storm <storm@cua.dk>
268
269 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
270
271 * fileio.c (Ffile_modes): Doc fix.
272 (auto_save_1): Check for Ffile_modes nil value.
273
274 2004-11-05 Kim F. Storm <storm@cua.dk>
275
276 * xselect.c (struct selection_event_queue, selection_queue)
277 (x_queue_selection_requests, x_queue_event)
278 (x_start_queuing_selection_requests)
279 (x_stop_queuing_selection_requests): Add new queue for selection
280 input events to replace previous XEvent queue in xterm.c.
281 (queue_selection_requests_unwind): Adapt to new queue.
282 (x_reply_selection_request): Adapt to new queue.
283 Unexpect wait_object in case of x errors (memory leak).
284 (x_handle_selection_request, x_handle_selection_clear): Make static.
285 (x_handle_selection_event): New function. May queue selection events.
286 (wait_for_property_change_unwind): Use save_value instead of cons.
287 Clear property_change_reply_object.
288 (wait_for_property_change): Abort if already waiting.
289 Use save_value instead of cons for unwind data.
290 (x_handle_property_notify): Skip events already arrived, but don't
291 free them, as "arrived" field is checked by wait_for_property_change,
292 and it will be freed by unwind or explicit unexpect_property_change.
293 (x_get_foreign_selection): Add to new queue.
294 (receive_incremental_selection): Don't unexpect wait_object when done
295 as it has already been freed by previous wait_for_property_change.
296
297 * xterm.h (x_start_queuing_selection_requests)
298 (x_stop_queuing_selection_requests, x_handle_selection_request)
299 (x_handle_selection_clear): Remove prototypes.
300 (x_handle_selection_event): Add prototype.
301
302 * xterm.c (handle_one_xevent): Don't queue X selection events
303 here, it may be too late if we start queuing after we have already
304 stored some selection events into the kbd buffer.
305 (struct selection_event_queue, queue, x_queue_selection_requests)
306 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
307 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
308 (x_catch_errors_unwind): Block input around final XSync.
309
310 * keyboard.h (kbd_buffer_unget_event): Add prototype.
311
312 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
313 (kbd_buffer_unget_event): New function.
314 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
315 and use x_handle_selection_event.
316 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
317
318 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
319
320 * xselect.c (TRACE3): New debug macro.
321 (x_reply_selection_request): Use it.
322 (receive_incremental_selection): In call to TRACE0, the name of
323 a symbol is in xname.
324
325 2004-11-05 Kim F. Storm <storm@cua.dk>
326
327 * fontset.c (fontset_pattern_regexp): Use unsigned char.
328
329 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
330
331 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
332
333 * gtkutil.h: Declare use_old_gtk_file_dialog.
334
335 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
336 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
337 * xfns.c (syms_of_xfns): ... to here.
338
339 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
340 it doesn't start with /.
341
342 2004-11-04 Kenichi Handa <handa@m17n.org>
343
344 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
345 treat it as a literal character.
346
347 2004-11-03 Kim F. Storm <storm@cua.dk>
348
349 * .gdbinit (ppt): New function.
350
351 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
352
353 * xterm.c (x_window_to_scroll_bar): Only call
354 xg_get_scroll_id_for_window if toolkit scroll bars are used.
355
356 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
357 of save.
358
359 2004-11-02 Andreas Schwab <schwab@suse.de>
360
361 * window.c (Fscroll_right): Fix last change.
362
363 2004-11-02 Kim F. Storm <storm@cua.dk>
364
365 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
366
367 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
368
369 * callproc.c (Fcall_process): Block input around vfork.
370
371 2004-11-02 Kim F. Storm <storm@cua.dk>
372
373 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
374 (syms_of_eval): Defsubr it.
375
376 2004-11-02 Richard M. Stallman <rms@gnu.org>
377
378 * insdel.c (replace_range_2): New function.
379
380 * casefiddle.c (casify_region): Handle changes in byte-length
381 using replace_range_2.
382
383 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
384
385 * xdisp.c (back_to_previous_visible_line_start):
386 Subtract 1 from pos when checking previous newline for invisibility.
387
388 * window.c (window_scroll_pixel_based): Update preserve_y
389 for header line if any.
390 (Fscroll_left, Fscroll_right): Don't call interactive_p;
391 use a new second argument instead.
392
393 * eval.c (Fcall_interactive_p): New function.
394 (interactive_p): Don't test INTERACTIVE here.
395 (Finteractive_p): Doc fix.
396
397 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
398
399 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
400
401 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
402 comparing font names.
403
404 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
405
406 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
407 Fx_file_dialog if only directories should be read.
408
409 * lisp.h: Fx_file_dialog takes 5 parameters.
410
411 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
412 Add parameter only_dir_p.
413 In Motif version, don't put DEFAULT_FILENAME in filter part of the
414 dialog, just text field part. Do not add DEFAULT_FILENAME
415 to list of files if it isn't there.
416 In GTK version, pass only_dir_p parameter to xg_get_file_name.
417
418 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
419 Check only_dir_p instead of comparing prompt to "Dired". When using
420 a save dialog, add option kNavDontConfirmReplacement, change title
421 to "Enter name", change text for save button to "Ok".
422
423 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
424 Check only_dir_p instead of comparing prompt to "Dired".
425
426 * gtkutil.c (xg_get_file_with_chooser)
427 (xg_get_file_with_selection): New functions, only defined ifdef
428 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
429 respectively.
430 (xg_get_file_name): Add parameter only_dir_p.
431 Call xg_get_file_with_chooser or xg_get_file_with_selection
432 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
433 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
434
435 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
436
437 * config.in: Rebuild (added HAVE_GTK_FILE_*).
438
439 2004-11-01 Kim F. Storm <storm@cua.dk>
440
441 * process.c (connect_wait_mask, num_pending_connects):
442 Only declare and use them if NON_BLOCKING_CONNECT is defined.
443 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
444 (IF_NON_BLOCKING_CONNECT): New helper macro.
445 (wait_reading_process_output): Only declare and use local vars
446 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
447
448 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
449
450 * w32term.c (x_scroll_run): Delete region objects after use.
451
452 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
453
454 * xmenu.c: Add prototypes for forward function declarations.
455 (popup_get_selection): Remove parameter do_timers, remove call to
456 timer_check.
457 (create_and_show_popup_menu, create_and_show_dialog):
458 Remove parameter do_timers from call to popup_get_selection.
459
460 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
461 tool_bar_items and assign the result to f->tool_bar_items if
462 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
463 tool_bar_items to assignment of result.
464
465 * atimer.c (alarm_signal_handler): Do not call set_alarm if
466 pending_atmers is non-zero.
467
468 2004-10-31 Kim F. Storm <storm@cua.dk>
469
470 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
471
472 2004-10-28 Will <will@glozer.net>
473
474 * macterm.c: allow user to assign key modifiers to the Mac Option
475 key via a 'mac-option-modifier' variable.
476
477 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
478
479 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
480 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
481 (x_handle_selection_request, x_handle_selection_clear)
482 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
483
484 2004-10-28 Richard M. Stallman <rms@gnu.org>
485
486 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
487
488 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
489
490 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
491
492 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
493 comment-starter over a 1-char one.
494
495 2004-10-27 Richard M. Stallman <rms@gnu.org>
496
497 * xdisp.c (get_next_display_element): In mode lines,
498 treat newline and tab like other control characters.
499
500 * editfns.c (Fmessage): Doc fix.
501
502 * indent.c (vmotion): When moving up, check the newline before.
503 Make prevline an int, not a Lisp_Object.
504
505 2004-10-27 Kim F. Storm <storm@cua.dk>
506
507 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
508 Only allocate info and discarded tables once.
509
510 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
511 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
512 (SAFE_FREE): Test it to determine if we need to unwind to free.
513 Remove size arg. All users changed.
514 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
515
516 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
517
518 * gtkutil.c: Put empty line between comment and function body.
519 (xg_destroy_widgets): Rename from remove_from_container.
520 Just destroy all widgets in list. Argument wcont removed.
521 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
522 instead of remove_from_container.
523 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
524 (free_frame_tool_bar): Add comment.
525
526 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
527 is not NULL before strcmp.
528
529 2004-10-26 Kim F. Storm <storm@cua.dk>
530
531 * callint.c (Fcall_interactively): Add 'U' code to get the
532 up-event discarded by a previous 'k' or 'K' argument.
533
534 2004-10-26 David Kastrup <dak@gnu.org>
535
536 * buffer.c (syms_of_buffer): Fix a few typos.
537
538 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
539
540 * xsmfns.c: Put empty line between comment and function body.
541 Use two spaces before comment end.
542
543 2004-10-25 Kenichi Handa <handa@m17n.org>
544
545 * fontset.c (fontset_pattern_regexp): Optimize for the case that
546 PATTERN is full XLFD.
547
548 2004-10-24 Kenichi Handa <handa@m17n.org>
549
550 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
551
552 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
553 (regex_compile): Return REG_ERANGEX if appropriate.
554
555 2004-10-22 Kenichi Handa <handa@m17n.org>
556
557 * editfns.c (Ftranslate_region_internal): New function.
558 (syms_of_editfns): Defsubr it.
559
560 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
561
562 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
563
564 2004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
565
566 * xterm.h (x_output): New member `xic_base_fontname'.
567 (FRAME_XIC_BASE_FONTNAME): New macro.
568 (xic_free_xfontset): Declare.
569
570 * xfns.c (xic_create_xfontset): Share fontsets between frames
571 based on base_fontname.
572 (xic_free_xfontset): New function.
573 (free_frame_xic): Use it.
574 (xic_set_xfontset): Ditto.
575
576 * xterm.c (xim_destroy_callback): Ditto.
577
578
579 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
580
581 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
582
583 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
584
585 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
586 XSync.
587
588 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
589 New variables and constant.
590 (main): Calculate heap_bss_diff. If we are dumping and the
591 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
592 and exec ourself again.
593 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
594 print a warning.
595
596 * lastfile.c: Make my_endbss and my_endbss_static available on all
597 platforms.
598
599 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
600 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
601
602 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
603
604 * data.c (Flocal_variable_if_set_p): Doc fix.
605
606 2004-10-19 Jason Rumney <jasonr@gnu.org>
607
608 * w32.c (init_environment): Set emacs_dir correctly when running
609 emacs from the build directory.
610
611 2004-10-19 Richard M. Stallman <rms@gnu.org>
612
613 * editfns.c (Fdelete_and_extract_region):
614 If region is empty, return null string.
615
616 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
617
618 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
619 and canon_width.
620 (xg_frame_cleared): Remove.
621
622 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
623 (xg_find_top_left_in_fixed): Remove.
624 (xg_create_scroll_bar): Put an event box widget between
625 the scroll bar widget and the edit widget.
626 (xg_show_scroll_bar): Show the parent widget (the event box).
627 (xg_remove_scroll_bar): Destroy parent (the event box) also.
628 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
629 Move the parent (the event box) widget inside the fixed widget.
630 Move window clear to xterm.c.
631
632 * gtkutil.h (xg_frame_cleared): Remove.
633
634 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
635 (x_scroll_bar_create, XTset_vertical_scroll_bar):
636 Remove arguments left and width to xg_update_scrollbar_pos.
637 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
638
639 2004-10-19 Kenichi Handa <handa@m17n.org>
640
641 * xdisp.c (display_mode_element): Fix display of wide chars.
642
643 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
644
645 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
646 gdk_window_clear and move gdk_window_process_all_updates after
647 clear so events are sent to the X server in correct order.
648
649 2004-10-18 Kenichi Handa <handa@m17n.org>
650
651 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
652 comparing font names.
653 (fs_query_fontset): Use fast_string_match for comparing fontset names.
654 (list_fontsets): Likewise.
655
656 * search.c (fast_string_match_ignore_case): New function.
657
658 * lisp.h (fast_string_match_ignore_case): Extern it.
659
660 2004-10-17 Kim F. Storm <storm@cua.dk>
661
662 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
663 than bitmap if there is not left fringe.
664 (get_overlay_arrow_glyph_row): Also used on windows system.
665 (display_line): Display overlay string if no left fringe.
666
667 2004-10-16 Jason Rumney <jasonr@gnu.org>
668
669 * w32fns.c (w32_font_match): Encode font name being matched.
670
671 2004-10-16 Richard M. Stallman <rms@gnu.org>
672
673 * window.c (Fspecial_display_p): Doc fix.
674
675 2004-10-15 Stefan <monnier@iro.umontreal.ca>
676
677 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
678 Don't ignore menus, because where-is-internal already does it for us.
679
680 2004-10-15 Kim F. Storm <storm@cua.dk>
681
682 * xdisp.c (redisplay_window): Only update fringes and vertical
683 border on window frames.
684
685 2004-10-14 Andreas Schwab <schwab@suse.de>
686
687 * m/ia64.h (DATA_SEG_BITS): Don't define.
688
689 2004-10-14 Kim F. Storm <storm@cua.dk>
690
691 * xterm.h: Include Xutil.h after keysym.h to work around bug
692 in some X versions.
693
694 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
695
696 * fns.c (map_char_table): Add missing gcpros.
697
698 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
699
700 * keymap.c (get_keymap): An autoload form is not a keymap.
701
702 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
703
704 2004-10-13 Kim F. Storm <storm@cua.dk>
705
706 * callproc.c (Fcall_process): Simplify handling of display arg.
707 Resume `display_on_the_fly' once a coding system is determined.
708
709 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
710
711 2004-10-12 Kim F. Storm <storm@cua.dk>
712
713 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
714 caller, such as call-process, is not going to poll for input.
715 (calc_line_height_property): Handle case where it->object is nil.
716
717 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
718
719 2004-10-12 Kenichi Handa <handa@m17n.org>
720
721 * xdisp.c (get_next_display_element):
722 If unibyte_display_via_language_environment is zero, display 8-bit
723 chars in octal in unibyte buffer.
724
725 2004-10-12 Kim F. Storm <storm@cua.dk>
726
727 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
728 are no ordinary bindings.
729
730 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
731
732 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
733
734 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
735
736 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
737 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
738 (make_mac_frame): Add BLOCK_INPUT around the making of a
739 terminal frame.
740 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
741 * macgui.h (mktime): Use emacs_mktime.
742 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
743 Make a cancel file-open dialog be like C-g.
744 * mac.c (mktime): Use emacs_mktime.
745 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
746 (Fmac_paste_function): Add better error handling for carbon cut/paste.
747
748 2004-10-10 Kim F. Storm <storm@cua.dk>
749
750 * keyboard.c (timer_resume_idle): New function to resume idle
751 timer without resetting timers on the idle list.
752 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
753 (timer_start_idle, timer_stop_idle): Declare static.
754 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
755
756 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
757
758 2004-10-08 Steven Tamm <steventamm@mac.com>
759
760 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
761 * macterm.c (mac_check_for_quit_char): Remove warning for using
762 NULL where 0 should be used.
763 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
764 objc/malloc.h
765 * mac.c: Include time.h for Tiger compatibility.
766
767 2004-10-07 Kim F. Storm <storm@cua.dk>
768
769 * xdisp.c (redisplay_window): Fix flicker on vertical line between
770 windows. Update vertical line after drawing window fringes, but
771 only if actually drawing any bitmaps--or there is no fringe.
772
773 * xterm.c (x_update_window_end): Likewise.
774 * macterm.c (x_update_window_end): Likewise.
775 * w32term.c (x_update_window_end): Likewise.
776
777 * fringe.c (draw_window_fringes): Return value now indicates if
778 any fringe bitmaps were redrawn (or there are no fringes).
779
780 * dispextern.h (draw_window_fringes): Update prototype.
781
782 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
783
784 * macfns.c (mac_get_window_bounds): Add extern.
785 (x_real_positions): Use mac_get_window_bounds.
786
787 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
788 xmenu.c (YAILOM).
789
790 * macterm.c [!MAC_OSX]: Include Windows.h.
791 (front_emacs_window): Rename from mac_front_window. All uses
792 changed. Return the frontmost non-tooltip emacs window.
793 (mac_get_window_bounds): New function.
794 (x_calc_absolute_position): Use the difference of width and height
795 between the inner and outer window.
796 (x_set_offset): Specify window position by the coordinae of the
797 outer window. Adjust the position if the title bar is completely
798 outside the screen.
799 (app_is_suspended, app_sleep_time): Remove unused variables.
800 (do_app_resume, do_app_suspend): Remove their contents because
801 window-activate/deactivate events will do the job.
802 (do_zoom_window): Remove unused variables. Make compliant to the
803 standard way of zooming. Set f->left_pos and f->top_pos.
804 (XTread_socket): Don't use argument `expected'. Don't use
805 FrontWindow to determine the clicked window. Exclude unprocessed
806 mouseUp cases in the early stage. Add parentheses to fix operator
807 precedence.
808 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
809
810
811 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
812
813 * config.in: Regenerate.
814
815 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
816 HAVE_EXECSHIELD.
817
818 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
819
820 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
821 a row if Alt or Meta has been found for that row. Also stop scanning
822 for Keysyms for that row.
823
824 2004-10-04 Kim F. Storm <storm@cua.dk>
825
826 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
827 to list. Include overlay arrow bitmap in return value.
828
829 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
830 bars with fractional column width. If scroll bar separates two
831 windows, move it towards the window it belongs to. Only update
832 the padding area below the scroll bar widget when necessary,
833 i.e. when scroll bar widget is created, moved, or resized.
834
835 * xdisp.c (define_frame_cursor1): Do not change frame cursor
836 while tracking/dragging mouse.
837 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
838
839 * window.c (coordinates_in_window): Relax check for cursor
840 on vertial border between mode lines.
841 (Fset_window_fringes): Do not allow negative widths.
842 (Fset_window_scroll_bars): Likewise.
843
844 * .gdbinit (pp): Shorthand for p ARG + pr.
845 (ff): New command: flush frame updates (X only).
846
847 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
848
849 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
850
851 2004-09-30 Kenichi Handa <handa@m17n.org>
852
853 * process.c (send_process): Free composition data.
854
855 * fileio.c (Finsert_file_contents): Free composition data.
856
857 * coding.c (code_convert_region): Don't skip ASCIIs if there are
858 compositions to encode.
859 (encode_coding_string): Likewise. Free composition data.
860
861 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
862
863 * coding.c (code_convert_region): Free composition data.
864
865 2004-09-29 Kim F. Storm <storm@cua.dk>
866
867 * fringe.c: Remove limit on number of bitmaps.
868 (fringe_bitmaps, fringe_faces): Change to pointers.
869 (max_fringe_bitmaps): New var.
870 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
871 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
872
873 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
874 (struct glyph_row): Reorder fringe_bitmap related fields.
875 (struct it): Likewise.
876
877 * w32term.c (fringe_bmp): Change to pointer.
878 (max_fringe_bmp): New var.
879 (w32_define_fringe_bitmap): Expand fringe_bmp.
880 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
881 (w32_destroy_fringe_bitmap): Likewise.
882
883 2004-09-29 Kim F. Storm <storm@cua.dk>
884
885 * fringe.c: Simplify last change.
886 (lookup_fringe_bitmap): New function.
887 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
888 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
889 Keep standard bitmaps in Vfringe_bitmaps.
890 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
891 (Fset_fringe_bitmap_face): Likewise.
892
893 * dispextern.h (lookup_fringe_bitmap): Add prototype.
894 (valid_fringe_bitmap_p): Remove prototype.
895
896 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
897
898 2004-09-29 Kim F. Storm <storm@cua.dk>
899
900 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
901 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
902
903 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
904
905 * fringe.c (Vfringe_bitmaps): New variable.
906 (syms_of_fringe): DEFVAR_LISP it.
907 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
908 Change arg to Lisp_Object and fail if not an integer.
909 (get_fringe_bitmap_name, resolve_fringe_bitmap)
910 (destroy_fringe_bitmap): New functions.
911 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
912 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
913 clear its fringe property.
914 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
915 Fdestroy_fringe_bitmap.
916 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
917 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
918 and set fringe property. Signal error if no free slots.
919 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
920 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
921
922 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
923 symbols with a fringe property.
924
925 2004-09-27 Kim F. Storm <storm@cua.dk>
926
927 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
928 Doc fix. Format may now be a symbol or alist, not a cons.
929
930 * fringe.c (update_window_fringes): Handle new formats of
931 indicate-buffer-boundaries (symbol or alist). No longer
932 allow a simple cons.
933 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
934
935 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
936
937 * config.in: Rebuild.
938
939 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
940
941 * config.in: Rebuild.
942
943 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
944
945 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
946
947 * xterm.c (x_term_init): Work around a bug in some X servers.
948
949 2004-09-18 Richard M. Stallman <rms@gnu.org>
950
951 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
952
953 * xdisp.c (try_window_reusing_current_matrix):
954 Handle the case where we reach the old displayed text,
955 out of sync with the old line boundary.
956
957 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
958
959 * fileio.c (Finsert_file_contents): Fix case of replacement in a
960 narrowed buffer.
961
962 2004-09-14 Kim F. Storm <storm@cua.dk>
963
964 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
965
966 * xfaces.c (Qface_no_inherit): New var.
967 (syms_of_xfaces): Intern and staticpro it.
968 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
969 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
970 Don't increment face_change_count when face has non-nil
971 face-no-inherit property.
972
973 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
974
975 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
976 (Fbyte_code): Remove dead code after `wrong_type_argument'.
977
978 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
979 before doing the mark_stack_check_gcpros since they're not on the stack.
980
981 2004-09-12 Kim F. Storm <storm@cua.dk>
982
983 * editfns.c (Fformat): Handle format strings with multiple text
984 properties. Reverse text property list from the format string,
985 so the positions are in increasing order.
986
987 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
988
989 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
990 x_uncatch_errors so that possible protocol errors are delivered.
991
992 2004-09-10 Eli Zaretskii <eliz@gnu.org>
993
994 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
995 blockinput.h.
996 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
997 charset.h, and coding.h
998 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
999 (term.o): Depend on window.h and keymap.h.
1000 (abbrev.o): Depend on syntax.h.
1001 (callint.o): Depend on keymap.h.
1002 (casefiddle.o): Depend on charset.h and keymap.h.
1003 (category.o): Depend on keymap.h.
1004 (coding.o): Depend on dispextern.h.
1005 (cmds.o): Depend on keyboard.h and keymap.h.
1006 (dispnew.o): Depend on indent.h and intervals.h.
1007 (doc.o): Depend on keymap.h.
1008 (editfns.o): Depend on frame.h.
1009 (emacs.o): Depend on dispextern.h.
1010 (fileio.o): Don't depend on ccl.h.
1011 (filelock.o): Depend on charset.h and coding.h.
1012 (frame.o): Depend on w32term.h and macterm.h.
1013 (insdel.o): Depend on region-cache.h.
1014 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
1015 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
1016 (search.o): Depend on $(INTERVALS_SRC).
1017 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
1018 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
1019 xterm.h, w32term.h, and macterm.h.
1020 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
1021 w32term.h, and macterm.h.
1022 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
1023 region-cache.h, xterm.h, w32term.h, and macterm.h.
1024 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
1025 (data.o): Depend on frame.h.
1026 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
1027 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
1028 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
1029 (intervals.o): Depend on keymap.h.
1030
1031 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
1032 Add debugging print-out to termscript.
1033
1034 2004-09-09 Richard M. Stallman <rms@gnu.org>
1035
1036 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
1037
1038 2004-09-08 Richard M. Stallman <rms@gnu.org>
1039
1040 * window.c (Fset_window_buffer): Doc fix.
1041
1042 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
1043
1044 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
1045
1046 * minibuf.c (history_delete_duplicates): New variable.
1047 (read_minibuf): Use it.
1048 (syms_of_minibuf): Create the corresponding lisp variable.
1049
1050 2004-09-08 Kim F. Storm <storm@cua.dk>
1051
1052 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
1053 overlay just before point.
1054
1055 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
1056
1057 * buffer.h (struct buffer): Add auto_save_file_format field.
1058 * buffer.c (reset_buffer, init_buffer_once):
1059 Handle auto_save_file_format field.
1060 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
1061 `buffer-auto-save-file-format'.
1062 * fileio.c: Delete declaration for removed Vauto_save_file_format.
1063 (build_annotations): Adapt to replacement of
1064 `auto-save-file-format' with the new buffer-local variable
1065 `buffer-auto-save-file-format'.
1066 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
1067
1068 2004-09-07 Jason Rumney <jasonr@gnu.org>
1069
1070 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
1071
1072 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
1073 Handle Unicode menu titles.
1074
1075 2004-09-07 Kim F. Storm <storm@cua.dk>
1076
1077 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
1078 property from text property or overlay strings at point.
1079
1080 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1081
1082 * xmenu.c (update_submenu_strings): YAILOM.
1083 (set_frame_menubar): Make sure last_i is initialized.
1084
1085 2004-09-03 Jason Rumney <jasonr@gnu.org>
1086
1087 * w32menu.c (_widget_value): Add lname and lkey.
1088 (digest_single_submenu): Set lname and lkey in widget_value
1089 instead of name and key.
1090 (update_submenu_strings): New function.
1091 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1092 call update_submenu_strings.
1093
1094 * w32menu.c (globals_of_w32menu): Check for Unicode API.
1095 (digest_single_submenu, w32_menu_show): Encode menu strings as
1096 UTF-8 if Unicode API is available.
1097 (utf8to16): New function.
1098 (add_menu_item): Use it when calling Unicode API.
1099
1100 2004-09-03 Kim F. Storm <storm@cua.dk>
1101
1102 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
1103 in overlay or text-property strings; set cursor on corresponding
1104 glyph rather than at end of the string.
1105
1106 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1107
1108 * macfns.c (x_real_positions): Save the current window port and
1109 set a new one before obtaining the global coordinate.
1110 Use FRAME_MAC_WINDOW.
1111 (x_set_name, x_set_title): Encode title to UTF8.
1112 Use SetWindowTitleWithCFString.
1113 (Fx_server_version): Get correct OS version.
1114
1115 * macmenu.c (add_menu_item): Remove unused variable `i'.
1116 Don't let separator items destroy refence constants of other menu items.
1117
1118 * macterm.c (x_update_end): Move SetPortWindowPort to inside
1119 BLOCK_INPUT.
1120 (x_set_offset): Use FRAME_MAC_WINDOW.
1121
1122 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
1123 nontext_cursor if it is on a scroll bar.
1124
1125 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
1126 Carbon support.
1127 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
1128 Use LIBS_CARBON.
1129
1130 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1131
1132 * xfns.c (x_set_name_internal): New function. Check if we shall call
1133 xfree before ENCODE_UTF_8.
1134 (x_set_name, x_set_title): Call x_set_name_internal.
1135
1136 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
1137
1138 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
1139 reload it.
1140
1141 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1142
1143 * macmenu.c (_widget_value): Add lname and lkey.
1144 (single_submenu): Set lname and lkey in widget_value
1145 instead of name and key.
1146 (update_submenu_strings): New function.
1147 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1148 call update_submenu_strings.
1149
1150 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
1151 instead of name and key.
1152 (update_submenu_strings): New function.
1153 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1154 call update_submenu_strings.
1155
1156 * gtkutil.h (_widget_value): Added lname and lkey.
1157
1158 2004-08-30 Steven Tamm <steventamm@mac.com>
1159
1160 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
1161 by using different names for inner loop variables.
1162
1163 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1164
1165 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
1166 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
1167
1168 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
1169 tool bar items is 0.
1170
1171 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1172
1173 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
1174 strings in menu items.
1175 (single_submenu): Use ENCODE_MENU_STRING
1176 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
1177 button release isn't passed to event loop
1178 (add_menu_item): Use SetMenuItemWithCFString
1179
1180 2004-08-26 Steven Tamm <steventamm@mac.com>
1181
1182 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
1183 tool-bar/menu click
1184 * macfns.c (Fx_file_dialog): Implemented using NavServices
1185
1186 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1187
1188 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
1189
1190 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1191 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1192 (x_top_window_to_frame): Return 0 if wdesc is None.
1193
1194 2004-08-22 Richard M. Stallman <rms@gnu.org>
1195
1196 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
1197 HAVE_TERMIOS]: If there's no char for this signal, drop through
1198 and use system calls.
1199
1200 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
1201
1202 2004-08-20 Kim F. Storm <storm@cua.dk>
1203
1204 * process.c (wait_reading_process_output): Rename from
1205 wait_reading_process_input. All uses changed.
1206 (wait_reading_process_output_1): Rename from
1207 wait_reading_process_input_1. All uses changed.
1208
1209 * dispnew.c (Fsleep_for): Remove obsolete code.
1210
1211 2004-08-20 Kenichi Handa <handa@m17n.org>
1212
1213 * syntax.c (skip_chars): Fix for unibyte case.
1214
1215 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1216
1217 * syntax.c (char_quoted): Mixup byte/char pos.
1218 (back_comment): Fixup globals in all cases.
1219
1220 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1221
1222 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
1223 passing it to gtk_window_set_title.
1224
1225 2004-08-19 Kim F. Storm <storm@cua.dk>
1226
1227 * process.c (wait_reading_process_input): Clean up.
1228 Add wait_for_cell, wait_proc, and just_wait_proc args
1229 to avoid overloading `read_kbd' and `do_display' args.
1230 Change read_kbd arg to int. All callers changed.
1231
1232 * process.c (process_send_signal): Use CDISABLE.
1233
1234 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
1235
1236 2004-08-18 Kim F. Storm <storm@cua.dk>
1237
1238 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
1239 forward to wait_reading_process_input via DO_DISPLAY arg.
1240 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
1241 object, only process output from that process; also inhibit
1242 running timers if DO_DISPLAY==-2.
1243
1244 2004-08-17 Kim F. Storm <storm@cua.dk>
1245
1246 * process.c (process_send_signal): Fix last change--use
1247 _POSIX_VDISABLE instead of CVDISABLE when available.
1248
1249 2004-08-16 Richard M. Stallman <rms@gnu.org>
1250
1251 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
1252 Set VQUIT and VINTR chars to the standard ones if they are unset.
1253 [AIX]: Don't do that here. And don't force VINTR to standard
1254 when SIGNALS_VIA_CHARACTERS.
1255
1256 * process.c (process_send_signal)
1257 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
1258 Do nothing if the character is CVDISABLE.
1259
1260 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
1261
1262 * intervals.c (move_if_not_intangible):
1263 Force POSITION to be between BEGV and ZV.
1264
1265 2004-08-14 John Paul Wallington <jpw@gnu.org>
1266
1267 * buffer.c (Frestore_buffer_modified_p): Doc fix.
1268
1269 * fileio.c (Fread_file_name): Doc fix.
1270
1271 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1272
1273 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
1274
1275 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
1276
1277 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
1278
1279 * keyboard.c: Declare Qdisabled_command_function instead of
1280 Qdisabled_command_hook.
1281 (Fcommand_execute): Use Qdisabled_command_function instead of
1282 Qdisabled_command_hook.
1283 (syms_of_keyboard): Ditto.
1284
1285 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
1286
1287 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
1288 (syms_of_keymap) <key-translation-map>: Doc fixes.
1289
1290 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
1291
1292 * window.c (window_list_1): YAILOM.
1293
1294 * fileio.c (make_temp_name): Handle multibyte prefixes.
1295
1296 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
1297
1298 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
1299 Doc fix.
1300
1301 2004-08-03 Kenichi Handa <handa@m17n.org>
1302
1303 * coding.c (decode_coding_string): Adjust coding->consumed, and
1304 etc. with shrinked_bytes.
1305
1306 2004-08-03 Kim F. Storm <storm@cua.dk>
1307
1308 * indent.c (compute_motion): Fix check for full width window
1309 in non-window case. Do not count left truncation glyph on
1310 window systems.
1311
1312 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
1313
1314 * data.c (Finteractive_form): Doc fix.
1315
1316 2004-08-02 Kim F. Storm <storm@cua.dk>
1317
1318 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
1319 properly accounting for continuation glyph on non-window systems.
1320 (Fcompute_motion): Use actual window width if WIDTH is nil, and
1321 actual window width/height if TOPOS is nil, properly accounting for
1322 continuation glyphs on non-window systems, and optional header lines.
1323 (vmotion): Let compute_motion calculate actual window width.
1324
1325 * window.c (window_scroll_line_based): Let compute_motion
1326 calculate actual window width.
1327
1328 2004-08-02 Kim F. Storm <storm@cua.dk>
1329
1330 * process.c (read_process_output): Use whole read buffer.
1331 Don't trigger adaptive read buffering on errors.
1332
1333 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
1334
1335 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
1336
1337 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
1338
1339 * callint.c (Fcall_interactively): Doc fix.
1340
1341 2004-07-30 Richard M. Stallman <rms@gnu.org>
1342
1343 * abbrev.c (Fexpand_abbrev): Undo previous change.
1344
1345 2004-07-30 Kim F. Storm <storm@cua.dk>
1346
1347 * editfns.c (Fformat): Allocate extra (dummy) element in info.
1348
1349 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
1350
1351 * eval.c (Fdefvar, Fdefconst): Doc fixes.
1352
1353 2004-07-27 Kim F. Storm <storm@cua.dk>
1354
1355 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
1356 we have ensured that the glyph fits on the current line (or returned
1357 MOVE_LINE_CONTINUED otherwise).
1358
1359 2004-07-26 Kim F. Storm <storm@cua.dk>
1360
1361 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
1362 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
1363 if target position is at end of display line but char is not a newline.
1364
1365 2004-07-25 Richard M. Stallman <rms@gnu.org>
1366
1367 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
1368 instead of ON_VERTICAL_BORDER, when on scroll bar.
1369 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
1370
1371 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
1372
1373 * window.c (Fcoordinates_in_window_p):
1374 Take account of FRAME_INTERNAL_BORDER_WIDTH.
1375
1376 * alloc.c (check_cons_list): New function (contents commented out).
1377
1378 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
1379
1380 * xfaces.c (Fcolor_supported_p): Doc fix.
1381
1382 * frame.c (Fselect_frame, Fset_frame_selected_window)
1383 (Fframe_visible_p, Fraise_frame): Doc fixes.
1384
1385 2004-07-24 Richard M. Stallman <rms@gnu.org>
1386
1387 * keyboard.h (not_single_kboard_state): Declared.
1388
1389 * fileio.c (Fwrite_region): Doc fix.
1390
1391 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
1392
1393 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
1394 only when a real abbrev is present.
1395
1396 * xfns.c (x_icon_verify): New function.
1397 (Fx_create_frame): Use it.
1398
1399 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
1400
1401 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
1402
1403 2004-07-21 Kim F. Storm <storm@cua.dk>
1404
1405 * window.h (struct glyph_matrix): New members nrows_scale_factor
1406 and ncols_scale_factor.
1407
1408 * window.c (make_window): Initialize nrows_scale_factor and
1409 ncols_scale_factor members.
1410
1411 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
1412 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
1413 (required_matrix_height): Apply nrows_scale_factor.
1414 (required_matrix_width): Apply ncols_scale_factor.
1415
1416 * xdisp.c (display_line): Increment nrows_scale_factor and set
1417 fonts_changed_p if past last allocated row.
1418 (append_glyph, append_composite_glyph, produce_image_glyph)
1419 (append_stretch_glyph): Increment ncols_scale_factor and set
1420 fonts_changed_p if current area is full.
1421
1422 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1423
1424 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
1425
1426 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
1427
1428 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
1429 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
1430 (Fset_window_start, Fscroll_up, Fscroll_down)
1431 (Fother_window_for_scrolling, Fscroll_other_window)
1432 (Fsave_window_excursion, Fset_window_vscroll)
1433 (syms_of_window) <window-size-fixed>: Doc fixes.
1434
1435 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1436
1437 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
1438 ENCODE_SYSTEM for filenames.
1439
1440 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1441
1442 * mac.c (sys_select): Block input around call to
1443 ReceiveNextEvent to prevent breakage. Correctly handle
1444 blocking on event queue only by calling ReceiveNextEvent
1445 instead of select (since GUI events aren't on an fd).
1446 (sys_read): Remove function
1447 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
1448
1449 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1450
1451 * mac.c (sys_select): Redo sys_select to use alarm-based
1452 polling instead of 1 sec timeouts (like solaris).
1453
1454 * macterm.c (x_make_frame_visible): Comment in polling on
1455 frame creation.
1456
1457 * keyboard.c: Undef SIGIO on Carbon
1458
1459 * atimer.c (alarm_signal_handler): Call alarm handlers after
1460 scheduling.
1461
1462 * eval.c (Feval): Remove quit_char test
1463
1464 * process.c (wait_reading_process_input): Remove clearing
1465 stdin for select call on process input.
1466
1467 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
1468
1469 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
1470 capitalization error in docstring.
1471
1472 2004-07-17 Juanma Barranquero <lektu@terra.es>
1473
1474 * keyboard.c (not_single_kboard_state): Do nothing unless
1475 MULTI_KBOARD is defined.
1476
1477 2004-07-17 Richard M. Stallman <rms@gnu.org>
1478
1479 * window.c (coordinates_in_window): Inside the window but outside
1480 its box to the L or R, return ON_VERTICAL_BORDER.
1481 (window_list_1): Rotate the list to start with WINDOW.
1482
1483 * print.c (print_preprocess): Test for print_depth at limit
1484 before entering in being_printed.
1485
1486 * keyboard.c (not_single_kboard_state): New function.
1487 (stuff_buffered_input): Now no-op only if no SIGTSTP.
1488
1489 * frame.c (Fdelete_frame): If we're in single_bboard_state on
1490 this kboard, and we delete its last frame, go to any_kboard_state.
1491
1492 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
1493
1494 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1495
1496 * w32fns.c (Fx_file_dialog): Encode strings in system coding
1497 system before passing them to OS functions for display.
1498
1499 2004-07-15 David Kastrup <dak@gnu.org>
1500
1501 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
1502 Apparently fixes an abort condition.
1503
1504 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
1505
1506 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
1507 instead of a cons.
1508
1509 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
1510
1511 * keyboard.c (echo_dash): Do nothing if there already is a dash
1512 at the end of the echo string.
1513
1514 2004-07-12 Kim F. Storm <storm@cua.dk>
1515
1516 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
1517 if GC_MARK_STACK.
1518
1519 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
1520
1521 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
1522
1523 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
1524 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
1525 (Freplace_buffer_in_windows, Fset_window_buffer)
1526 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
1527 (syms_of_window): Expand docstring of `display-buffer-function'.
1528
1529 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
1530
1531 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
1532 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
1533 that time values of the type (HIGH . LOW) are considered obsolete.
1534
1535 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
1536
1537 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
1538 docstring.
1539
1540 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
1541
1542 2004-07-06 John Paul Wallington <jpw@gnu.org>
1543
1544 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
1545
1546 * fns.c (Fclear_string): Signal an error if STRING is not a string.
1547
1548 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1549
1550 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
1551 instead of CGMainDisplayID (only in OSX 10.2 and later).
1552
1553 2004-07-04 John Paul Wallington <jpw@gnu.org>
1554
1555 * fileio.c (read_file_name_completion_ignore_case): New variable.
1556 (syms_of_fileio): Declare and initialise it.
1557 (Fread_file_name): Bind `completion-ignore-case' to respect it.
1558
1559 2004-07-03 Eli Zaretskii <eliz@gnu.org>
1560
1561 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
1562 for event.x and event.y.
1563
1564 2004-07-01 Kenichi Handa <handa@m17n.org>
1565
1566 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
1567 after getting a new string by pre-write-conversion.
1568
1569 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
1570
1571 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
1572 (x_calc_absolute_position): Remove unused var `child'.
1573
1574 * xfaces.c (x_supports_face_attributes_p)
1575 (Fdisplay_supports_face_attributes_p): YAILOM.
1576 (tty_supports_face_attributes_p): Remove unused var `i'.
1577
1578 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
1579 back_unibyte_ok.
1580
1581 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
1582
1583 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
1584
1585 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
1586
1587 2004-06-30 Andreas Schwab <schwab@suse.de>
1588
1589 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
1590 (Finit_image_library): Pass LIBRARIES through to
1591 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
1592 (lookup_image_type): Pass Qnil as second argument to
1593 Finit_image_library.
1594
1595 * lisp.h: Declare Finit_image_library.
1596
1597 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1598
1599 * macterm.c (do_window_activate, do_window_deactivate): Remove.
1600 (XTread_socket): Send mouse button events to the toolbox
1601 dispatcher even when the mouse is grabbed. Don't process window
1602 activate events for non-Emacs windows. Replace function calls to
1603 do_window_activate and do_window_deactivate with their contents.
1604 Reset mouse grabbing status when a window is deactivated.
1605
1606 2004-06-29 Steven Tamm <steventamm@mac.com>
1607
1608 * macterm.c (mac_get_emulated_btn)
1609 (mac_event_to_emacs_modifiers): Fix emulated mouse button
1610 support to correctly mask out modifiers.
1611
1612 2004-06-29 David Kastrup <dak@gnu.org>
1613
1614 * search.c (Fset_match_data): Allow buffer before end of list
1615 which can happen if set-match-data is using a pre-consed list.
1616
1617 2004-06-28 Steven Tamm <steventamm@mac.com>
1618
1619 * macterm.c (XTread_socket): Correctly set the frame position
1620 after the window is moved.
1621
1622 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1623
1624 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
1625 gpix and gmask just before return to avoid memory leak.
1626 (xg_get_image_for_pixmap): Add workaround for monochrome displays
1627 so insensitive and activated icons look ok.
1628
1629 2004-06-27 Jason Rumney <jasonr@gnu.org>
1630
1631 * w32fns.c (file_dialog_callback): Disable edit control if set
1632 to directories only on CDN_INITDONE message.
1633 (Fx_file_dialog): Default to directories only when prompt starts
1634 with "Dired".
1635
1636 2004-06-25 Kim F. Storm <storm@cua.dk>
1637
1638 * alloc.c (allocate_misc): Update total_free_markers.
1639 (free_misc): New function.
1640 (safe_alloca_unwind, free_marker): Use it.
1641
1642 * lisp.h (free_misc): Add prototype.
1643
1644 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
1645
1646 2004-06-24 Richard M. Stallman <rms@gnu.org>
1647
1648 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
1649 (syms_of_emacs): Lisp variables deleted.
1650
1651 2004-06-23 David Kastrup <dak@gnu.org>
1652
1653 * search.c (Freplace_match): Adjust the match-data more thoroughly
1654 when replacing strings in the buffer.
1655 (Fmatch_data): When INTEGERS is non-nil and the last match was in
1656 a buffer, add the buffer as last element to the match data.
1657 (Fset_match_data): If an additional element of the match-data is a
1658 buffer, restore it to last_thing_searched.
1659 (save_search_regs): Save last_thing_searched as part of the match data.
1660 (restore_match_data): Restore it again.
1661
1662 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
1663
1664 * keymap.c (Ftext_char_description): Doc fix.
1665 * doc.c (Fsnarf_documentation): Doc fix.
1666
1667 2004-06-22 Kim F. Storm <storm@cua.dk>
1668
1669 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
1670
1671 * lisp.h (struct Lisp_Save_Value): New member dogc.
1672 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
1673 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
1674 (SAFE_FREE_LISP): New macro.
1675
1676 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
1677 (make_save_value): Init new dogc member.
1678 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
1679
1680 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
1681 SAFE_FREE_LISP macros.
1682
1683 2004-06-22 Kim F. Storm <storm@cua.dk>
1684
1685 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
1686 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
1687 in that memory area are unknown to GC. Add comments.
1688
1689 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
1690
1691 2004-06-21 Kim F. Storm <storm@cua.dk>
1692
1693 * lisp.h (MAX_ALLOCA): Define here.
1694 (safe_alloca_unwind): Add prototype.
1695 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1696
1697 * alloc.c (safe_alloca_unwind): New function.
1698
1699 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1700
1701 * charset.c (Fstring): Use SAFE_ALLOCA.
1702
1703 * coding.c (MAX_ALLOCA): Remove define.
1704
1705 * data.c (MAX_ALLOCA): Remove define.
1706 (Faset): Use SAFE_ALLOCA.
1707
1708 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1709
1710 * fns.c (string_make_multibyte, string_to_multibyte)
1711 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1712 (MAX_ALLOCA): Remove define.
1713 (Fbase64_encode_region, Fbase64_encode_string)
1714 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1715 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1716 memory leak if encoding fails.
1717
1718 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1719
1720 2004-06-21 Eli Zaretskii <eliz@gnu.org>
1721
1722 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1723
1724 2004-06-20 Richard M. Stallman <rms@gnu.org>
1725
1726 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1727
1728 * search.c (match_limit): Cleaner err msg when no match data available.
1729
1730 * window.c (syms_of_window): Doc fix.
1731
1732 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1733 for Vtransient_mark_mode.
1734
1735 * buffer.c (syms_of_buffer): Doc fix.
1736
1737 2004-06-21 David Kastrup <dak@gnu.org>
1738
1739 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1740 and unbinding of `case-fold-search' according to
1741 `completion-ignore-case' around calls of string-match and
1742 predicates, respectively. Should give satisfactory performance
1743 in all relevant cases.
1744
1745 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1746
1747 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1748 clip_x/y_origin.
1749
1750 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1751
1752 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1753
1754 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1755 on Mac OSX.
1756
1757 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1758
1759 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1760
1761 2004-06-16 Kim F. Storm <storm@cua.dk>
1762
1763 * dispextern.h (Vimage_types): Remove extern.
1764
1765 2004-06-16 Miles Bader <miles@gnu.org>
1766
1767 * image.c (lookup_image_type): Initialize image type if necessary.
1768
1769 2004-06-15 Kim F. Storm <storm@cua.dk>
1770
1771 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1772 margin at top of window.
1773 (try_window_reusing_current_matrix): Calculate proper cursor position
1774 after scrolling up with non-zero scroll margin, as the old cursor
1775 position corresponds to value of PT before executing this command.
1776 (try_window_id): Consider scroll margin at bottom of window too;
1777 otherwise we fail to scroll when hl-line-mode is enabled.
1778
1779 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1780 proper format and class is a lower-case word.
1781
1782 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1783
1784 * gtkutil.c (xg_get_image_for_pixmap): New function.
1785 (xg_get_gdk_pixmap_and_mask): Remove.
1786 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1787 xg_get_gdk_pixmap_and_mask.
1788
1789 * xterm.h (struct x_display_info): Typo in comment fixed.
1790
1791 2004-06-14 Juanma Barranquero <lektu@terra.es>
1792
1793 * dispextern.h (Vimage_types): Make it conditional on
1794 HAVE_WINDOW_SYSTEM.
1795
1796 * image.c (Vimage_types): Move from xdisp.c.
1797 (Vimage_type_cache): New variable.
1798 (define_image_type): New argument indicating whether an image
1799 library was loaded; cache loaded status and return t on success,
1800 nil otherwise.
1801 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1802 (w32_delayed_load): New function to load an image library from a
1803 list of possible filenames.
1804 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1805 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
1806 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1807 (Finit_image_library): New function, extracted from `init_image'.
1808 Try to initialize an image library on demand and cache whether we
1809 were successful or not.
1810 (syms_of_image): Initialize `Vimage_types' and
1811 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1812 Export `init-image-library'.
1813 (init_image): Remove initialization of all image types, except xbm
1814 and pbm.
1815
1816 * xdisp.c (Vimage_types): Delete (moved to image.c).
1817
1818 2004-06-14 Andreas Schwab <schwab@suse.de>
1819
1820 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1821 Avoid calling specbind when completion-regexp-list is empty.
1822
1823 2004-06-13 Richard M. Stallman <rms@gnu.org>
1824
1825 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1826 (re_wctype, re_iswctype, re_wctype_to_bit):
1827 Non-function definitions moved here from regex.c.
1828
1829 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1830 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1831 (re_wctype, re_iswctype, re_wctype_to_bit):
1832 Non-function definitions moved to regex.h.
1833
1834 * window.c (Fselect_window): Doc fix.
1835
1836 * syntax.c: Include regex.h.
1837 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1838 If requested, make a list of classes, then check the scanned
1839 chars for membership in them.
1840 (in_classes): New function.
1841 Doc fix.
1842
1843 * keyboard.c (cmd_error): Don't call any_kboard_state
1844 if inside a recursive edit level.
1845
1846 2004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1847
1848 * keyboard.c (command_loop): Call any_kboard_state before
1849 command_loop_2 when at top level.
1850
1851 2004-06-13 Andreas Schwab <schwab@suse.de>
1852
1853 * print.c (print_object): Always use %ld for printing EMACS_INT.
1854
1855 * keyboard.c (cancel_hourglass_unwind): Return a value.
1856 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1857 (Fexecute_extended_command): Likewise.
1858
1859 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1860 avoid clashes.
1861 (SYNTAX): Likewise.
1862 (SYNTAX_WITH_FLAGS): Likewise.
1863 (SYNTAX_MATCH): Likewise.
1864
1865 * syntax.c (char_quoted): Avoid warning about undefined operation.
1866 (find_defun_start): Likewise.
1867 (scan_lists): Likewise.
1868 (INC_FROM): Likewise.
1869 (scan_sexps_forward): Likewise.
1870
1871 * image.c: Include <ctype.h>.
1872
1873 * xfaces.c (face_attr_equal_p): Declare parameters.
1874
1875 2004-06-13 Kenichi Handa <handa@m17n.org>
1876
1877 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1878
1879 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1880
1881 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1882
1883 2004-06-12 Kenichi Handa <handa@m17n.org>
1884
1885 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
1886 ccl_prog_stack_struct and update it.
1887 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
1888 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
1889 ccl->eof_ic on EOF.
1890 (ccl_debug_hook): New function.
1891 (struct ccl_prog_stack): New member eof_ic.
1892 (ccl_driver): Handle EOF in subrountine call correctly.
1893
1894 2004-06-11 Kenichi Handa <handa@m17n.org>
1895
1896 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
1897
1898 2004-06-11 Kim F. Storm <storm@cua.dk>
1899
1900 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1901
1902 2004-06-11 Juanma Barranquero <lektu@terra.es>
1903
1904 * keyboard.c (Fposn_at_point): Doc fix.
1905
1906 2004-06-11 David Kastrup <dak@gnu.org>
1907
1908 * search.c (match_limit): Don't flag an error if match-data
1909 exceeding the allocated search_regs.num_regs gets requested, just
1910 return Qnil.
1911
1912 2004-06-08 Miles Bader <miles@gnu.org>
1913
1914 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1915
1916 2004-06-07 Juanma Barranquero <lektu@terra.es>
1917
1918 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1919 (Fcurrent_time_string, Fcurrent_time_zone)
1920 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1921
1922 2004-06-07 Miles Bader <miles@gnu.org>
1923
1924 * xfaces.c (struct named_merge_point): New type.
1925 (push_named_merge_point): New function.
1926 (merge_named_face): New function.
1927 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1928 Use `merge_named_face'.
1929 (merge_face_inheritance): Function removed.
1930 (merge_face_ref): Rename from `merge_face_vector_with_property'.
1931 Add new `err_msgs' and `named_merge_points' args. Return error
1932 status. Only print error messages if ERR_MSGS is true. Don't try to
1933 do :inherit attribute validation.
1934 (merge_face_heights): Handle `unspecified' in both directions.
1935 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1936 Call `merge_face_ref' instead of `merge_face_inheritance'.
1937 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1938 (compute_char_face, face_at_buffer_position)
1939 (face_at_string_position): Call `merge_face_ref' instead of
1940 `merge_face_vector_with_property'.
1941
1942 2004-06-07 Kenichi Handa <handa@m17n.org>
1943
1944 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1945 the necessary places.
1946
1947 2004-06-07 Kim F. Storm <storm@cua.dk>
1948
1949 * process.c (Fdelete_process): Undo 2004-05-28 change.
1950 Instead, call status_notify also for network process.
1951 (status_message): Use process instead of status as arg.
1952 Give messages "deleted" or "connection broken by remote peer" for
1953 an exited network process.
1954 (status_notify): Change call to status_message.
1955 (read_process_output): Increase readmax to 4096. Do not increase
1956 buffer size for datagram channels (default is now large enough).
1957
1958 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1959
1960 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1961 problem due to newly defined variable.
1962
1963 2004-06-06 Miles Bader <miles@gnu.org>
1964
1965 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1966 immediately if non-interactive or not initialized.
1967
1968 2004-06-05 Richard M. Stallman <rms@gnu.org>
1969
1970 * minibuf.c (Fcompleting_read): Doc fix.
1971
1972 2004-06-05 Andreas Schwab <schwab@suse.de>
1973
1974 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1975
1976 2004-06-05 Juanma Barranquero <lektu@terra.es>
1977
1978 * keymap.c (Fdescribe_vector): Fix docstring.
1979 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1980
1981 2004-06-05 Miles Bader <miles@gnu.org>
1982
1983 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1984 attributes have different values than the default face.
1985
1986 2004-06-04 Eli Zaretskii <eliz@gnu.org>
1987
1988 * xfaces.c (x_supports_face_attributes_p): Make this function
1989 conditional on HAVE_WINDOW_SYSTEM.
1990 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1991 Don't call x_supports_face_attributes_p if it was not compiled in.
1992
1993 2004-06-04 Miles Bader <miles@gnu.org>
1994
1995 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1996 from Ftty_supports_face_attributes_p.
1997 (x_supports_face_attributes_p): New function.
1998 (Ftty_supports_face_attributes_p): Function deleted.
1999 (Fdisplay_supports_face_attributes_p): New function.
2000 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
2001 (face_attr_equal_p): New function.
2002 (lface_equal_p): Use it.
2003
2004 2004-06-03 Juanma Barranquero <lektu@terra.es>
2005
2006 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
2007 (Vw32_color_map): Fix typo in docstring.
2008 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
2009 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
2010 Make argument names match their use in docstring.
2011
2012 2004-06-02 Juanma Barranquero <lektu@terra.es>
2013
2014 Work around bugs/problems with MinGW builds of graphics libraries
2015 called from MSVC builds of Emacs.
2016
2017 * image.c (lookup_image): Make pointer to img static.
2018 (png_read_from_memory): Disable "global" optimization.
2019
2020 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
2021
2022 * eval.c (Fcondition_case): Fix usage. Simplify.
2023
2024 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
2025
2026 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2027
2028 * macfns.c: Don't include ccl.h.
2029 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
2030 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
2031 TextUtils.h.
2032 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
2033 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
2034 display height/width.
2035 (compute_tip_xy, Vx_max_tooltip_size): Declare.
2036 (unwind_create_tip_frame, compute_tip_xy): New functions.
2037 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
2038 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
2039 and last_show_tip_args.
2040
2041 * macgui.h [!MAC_OSX]: Include Gestalt.h.
2042 (Cursor, No_Cursor): New defines.
2043 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
2044 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
2045
2046 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
2047
2048 * macterm.c: Don't include Gestalt.h.
2049 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
2050 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
2051 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
2052 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
2053 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
2054 (construct_mouse_click, XTmouse_position)
2055 (x_scroll_bar_report_motion, x_calc_absolute_position)
2056 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
2057 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
2058 (note_mouse_movement): Clear the mouse face and reset the pointer
2059 shape when the pointer goes outside the frame without grabbing.
2060 (mac_front_window): New function.
2061 (mac_window_to_frame): New macro.
2062 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
2063 (do_window_activate, do_window_deactivate, do_app_resume)
2064 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
2065 (do_zoom_window, mac_do_receive_drag, XTread_socket)
2066 (mac_check_for_quit_char): Use mac_front_window and/or
2067 mac_window_to_frame.
2068 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
2069 scroll-bar click event.
2070 (mac_define_frame_cursor): Change the pointer shape.
2071 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
2072 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
2073 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
2074 (do_window_update): Don't do anything if the updated window is the
2075 tooltip window.
2076 (do_mouse_moved): Handle mouse movement events here (previously in
2077 XTread_socket). Clear the mouse face if
2078 dpyinfo->mouse_face_hidden is set.
2079 (do_os_event, do_events): Remove (now in XTread_socket).
2080 (XTread_socket): Immediately return if interrupt_input_blocked.
2081 Loop until all the events in the queue are processed.
2082 Rearrange codes for mouse grabbing. Add tooltip support. Include the
2083 contents of do_os_event and do_events. Remove mouse movement
2084 handling (now in do_mouse_moved). Add the case where
2085 Vmouse_highlight has an integer value.
2086 (NewMacWindow): Remove.
2087 (make_mac_frame): Do what NewMacWindow previously did. Don't do
2088 excess initializations.
2089 (make_mac_terminal_frame): Previous initializations in
2090 make_mac_frame are moved here.
2091 (mac_initialize_display_info):
2092 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
2093
2094 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
2095 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
2096
2097 2004-05-29 Richard M. Stallman <rms@gnu.org>
2098
2099 * lisp.h (truncate_undo_list): Update decl.
2100
2101 * alloc.c (undo_outer_limit): New variable.
2102 (syms_of_alloc): Defvar it.
2103 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
2104
2105 * undo.c (truncate_undo_list): New arg LIMITSIZE.
2106
2107 * alloc.c (lisp_align_malloc): Check for base == 0
2108 regardless of HAVE_POSIX_MEMALIGN.
2109 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
2110
2111 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2112
2113 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
2114 (marker_blocks_pending_free): Remove.
2115 (Fgarbage_collect): Sweep after cleaning up undo-lists.
2116 Mark the undo lists after claning them up.
2117 Don't free block in marker_blocks_pending_free.
2118 (mark_buffer): Don't mark undo_list.
2119 (gc_sweep): Sweep hash-tables and strings first.
2120 Do free marker blocks that are empty.
2121
2122 2004-05-28 Jim Blandy <jimb@redhat.com>
2123
2124 * regex.c (print_partial_compiled_pattern): Add missing 'break'
2125 after 'case wordend'. For symbeg and symend, print to stderr,
2126 like the other cases.
2127
2128 2004-05-28 Noah Friedman <friedman@splode.com>
2129
2130 * process.c (Fdelete_process): Do not call remove_process.
2131
2132 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2133
2134 * alloc.c (struct backtrace): Remove.
2135 (Fgarbage_collect): Use the new mark_backtrace.
2136
2137 * eval.c (mark_backtrace): New function.
2138
2139 * minibuf.c (run_exit_minibuf_hook): New function.
2140 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
2141 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
2142
2143 2004-05-27 Kim F. Storm <storm@cua.dk>
2144
2145 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
2146 over display properties, e.g. images, that replace buffer text.
2147
2148 2004-05-25 Kim F. Storm <storm@cua.dk>
2149
2150 * alloc.c (marker_blocks_pending_free): New var.
2151 (gc_sweep): Store free marker blocks on that list.
2152 (Fgarbage_collect): Free them after undo-list cleanup.
2153
2154 * process.c (wait_reading_process_input): Check connect_wait_mask
2155 before actually accepting connection in case it has already been
2156 accepted due to recursion.
2157
2158 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
2159
2160 * coding.c (Fset_safe_terminal_coding_system_internal):
2161 Set suppress_error in safe_terminal_coding, not terminal_coding.
2162
2163 2004-05-22 Richard M. Stallman <rms@gnu.org>
2164
2165 * alloc.c (Fmake_string): Doc fix.
2166
2167 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
2168 and the alist pairs too.
2169
2170 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
2171
2172 * emacs.c (main): Update copyright year.
2173
2174 * fileio.c (Fread_file_name): Expand DIR if not absolute.
2175
2176 * insdel.c (del_range_2, replace_range): Don't write an anchor
2177 if the gap is empty.
2178
2179 * xdisp.c (try_scrolling): If scroll-up-aggressively or
2180 scroll-down-aggressively is small but positive, put point
2181 near the screen edge.
2182
2183 2004-05-22 Juanma Barranquero <lektu@terra.es>
2184
2185 * keymap.c (Fdefine_key): Doc fix.
2186
2187 2004-05-22 Kim F. Storm <storm@cua.dk>
2188
2189 * alloc.c (struct backtrace): Add debug_on_exit member.
2190 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
2191 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
2192 the removed cons cells.
2193 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
2194 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
2195 any cons cells pointing to unallocated stings.
2196 Do not lisp_free any marker blocks, as there may still be pointers
2197 to them from buffer undo lists at this stage of GC.
2198
2199 * keyboard.c (struct backtrace): Add debug_on_exit member.
2200 (Fcommand_execute): Clear it.
2201
2202 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
2203
2204 * intervals.c (lookup_char_property): Do not prematurely return nil.
2205
2206 2004-05-19 Jim Blandy <jimb@redhat.com>
2207
2208 Add support for new '\_<' and '\_>' regexp operators, matching the
2209 beginning and end of symbols.
2210
2211 * regex.c (enum syntaxcode): Add Ssymbol.
2212 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
2213 (re_opcode_t): New opcodes `symbeg' and `symend'.
2214 (print_partial_compiled_pattern): Print the new opcodes properly.
2215 (regex_compile): Parse the new operators.
2216 (analyse_first): Skip sym(beg|end) (they match only the empty string).
2217 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
2218 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
2219 (re_match_2_internal): Match symbeg and symend.
2220
2221 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
2222
2223 2004-05-19 Kim F. Storm <storm@cua.dk>
2224
2225 * .gdbinit (xsymbol): Fix last change.
2226
2227 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
2228
2229 * .gdbinit (xprintstr): New fun.
2230 (xstring, xprintsym): Use it.
2231
2232 * w32proc.c (create_child): Use INTMASK.
2233
2234 * alloc.c (Fgarbage_collect): Do all the marking before flushing
2235 unmarked elements of the undo list.
2236
2237 2004-05-18 David Ponce <david@dponce.com>
2238
2239 * print.c (print): Reset print_depth before to call print_object.
2240
2241 2004-05-18 Jason Rumney <jasonr@gnu.org>
2242
2243 * w32console.c: Prefix RIF functions with w32con_ to avoid
2244 namespace clash with functions in term.c and w32term.c.
2245
2246 * w32menu.c (add_menu_item, w32_menu_display_help)
2247 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
2248
2249 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
2250
2251 2004-05-18 Eli Zaretskii <eliz@gnu.org>
2252
2253 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
2254
2255 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
2256 with make_number.
2257 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
2258 with XINT.
2259
2260 2004-05-18 Kim F. Storm <storm@cua.dk>
2261
2262 * blockinput.h (INPUT_BLOCKED_P): New macros.
2263
2264 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
2265 (Ftop_level): Unblock input if blocked.
2266
2267 * buffer.h (GET_OVERLAYS_AT): New macro.
2268 * msdos.c (IT_note_mouse_highlight): Use it.
2269 * textprop.c (get_char_property_and_overlay): Use it.
2270 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
2271 * xfaces.c (face_at_buffer_position): Use it.
2272
2273 * print.c (print_object): Increase buf size.
2274
2275 2004-05-17 Jason Rumney <jasonr@gnu.org>
2276
2277 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
2278 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
2279 Lisp_Object using i member.
2280 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
2281 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
2282 consistently.
2283
2284 * w32proc.c (create_child): Use make_number instead of masking pid.
2285
2286 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
2287 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
2288 Use EQ to compare Lisp_Objects.
2289 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
2290
2291 * w32term.c (w32_num_mouse_buttons): Rename from
2292 Vw32_num_mouse_buttons and make it an int.
2293
2294 * w32.c (init_environment): Use it.
2295
2296 * w32fns.c (w32_wnd_proc): Likewise.
2297
2298 * w32proc.c (w32_pipe_read_delay): Rename from
2299 Vw32_pipe_read_delay and make it an int.
2300
2301 * w32.c (_sys_read_ahead): Use it.
2302
2303 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
2304
2305 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
2306
2307 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
2308 (key_event): Don't mix Lisp_Object and int.
2309
2310 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
2311
2312 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
2313 modifiers in language change event.
2314
2315 2004-05-17 Kim F. Storm <storm@cua.dk>
2316
2317 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
2318 Such objects may be freed markers which still exist on an undo list.
2319
2320 2004-05-16 Juanma Barranquero <lektu@terra.es>
2321
2322 * data.c (Fset_default): Make argument names match their use in
2323 docstring.
2324
2325 2004-05-15 Andreas Schwab <schwab@suse.de>
2326
2327 * emacs.c (gdb_array_mark_flag): Define.
2328 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
2329
2330 2004-05-15 Eli Zaretskii <eliz@gnu.org>
2331
2332 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
2333 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
2334 defined for the MS-DOS build.
2335
2336 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
2337
2338 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
2339
2340 2004-05-14 Kenichi Handa <handa@m17n.org>
2341
2342 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
2343
2344 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2345
2346 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
2347 section to frame.c section.
2348 (Fxw_display_color_p, Fx_file_dialog): Declare if
2349 HAVE_WINDOW_SYSTEM defined.
2350
2351 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
2352
2353 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
2354
2355 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
2356 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
2357 (XTread_socket): Fix int/Lisp_Object mixup.
2358 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
2359
2360 * macterm.h (struct frame, struct face, struct image)
2361 (display_x_get_resource, Fx_display_color_p)
2362 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
2363 Add prototypes.
2364
2365 2004-05-14 Kim F. Storm <storm@cua.dk>
2366
2367 * process.c (wait_reading_process_input): Make reentrant.
2368 Make Available and Connecting non-static. Save and restore value
2369 of waiting_for_user_input_p.
2370
2371 2004-05-13 Kim F. Storm <storm@cua.dk>
2372
2373 * keyboard.c (mark_kboards): Don't mark x and y members
2374 that are overloaded in selection request events.
2375
2376 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
2377
2378 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
2379
2380 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
2381
2382 * window.c (Fdisplay_buffer, Fsplit_window)
2383 (split-height-threshold): Doc fix.
2384
2385 2004-05-13 Juanma Barranquero <lektu@terra.es>
2386
2387 * xfaces.c (Ftty_supports_face_attributes_p)
2388 (Finternal_copy_lisp_face): Fix typo in docstring.
2389 (Finternal_get_lisp_face_attribute): Fix docstring.
2390
2391 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2392
2393 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
2394
2395 2004-05-11 Steven Tamm <steventamm@mac.com>
2396
2397 * macfns.c (Fx_create_frame): Default to using tool-bar by
2398 setting tool-bar-lines to 1 in default-frame-alist.
2399
2400 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2401
2402 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
2403 (xpm_get_color_table_v, xpm_make_color_table_h)
2404 (xpm_put_color_table_h, xpm_get_color_table_h)
2405 (xpm_str_to_color_key, xpm_load_image, xpm_load)
2406 (syms_of_image): Support XPM on Carbon Emacs. Does not
2407 depend on libXpm, but only supports XPM version 3 without extensions.
2408
2409 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2410
2411 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
2412 instead of FRAME_X_P
2413
2414 2004-05-11 Kim F. Storm <storm@cua.dk>
2415
2416 * process.c (read_process_output): Grow decoding_buf when needed;
2417 this could cause a crash in allocate_string and compact_small_strings.
2418
2419 2004-04-29 Jim Blandy <jimb@redhat.com>
2420
2421 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
2422 against proper opcode.
2423
2424 2004-05-10 Juanma Barranquero <lektu@terra.es>
2425
2426 * process.c (Fstart_process): Fix docstring.
2427
2428 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
2429 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
2430 (Fsplit_char, Fchar_charset): Make argument names match their use
2431 in docstring.
2432
2433 2004-05-10 Richard M. Stallman <rms@gnu.org>
2434
2435 * print.c (print_preprocess): Use being_printed, loop_count and
2436 halftail to detect overdeep nesting and cyclic cdr chains.
2437
2438 2004-05-10 Andreas Schwab <schwab@suse.de>
2439
2440 * lisp.h: Declare Fmake_symbolic_link.
2441
2442 * fileio.c (Frename_file): Remove extra argument in call to
2443 Fmake_symbolic_link.
2444
2445 2004-05-10 Kim F. Storm <storm@cua.dk>
2446
2447 * xdisp.c (calc_line_height_property): Use string position when
2448 object is a string.
2449
2450 2004-05-10 Kenichi Handa <handa@m17n.org>
2451
2452 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
2453 inhibit-modification-hooks to t temporarily before calling
2454 Ferase_buffer.
2455
2456 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
2457 inhibit-modification-hooks to t temporarily before calling
2458 Ferase_buffer.
2459
2460 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
2461 inhibit-modification-hooks to t temporarily before calling
2462 Ferase_buffer.
2463
2464 * fns.c (count_combining): Delete it.
2465 (concat): Don't check combining bytes.
2466
2467 2004-05-09 Jason Rumney <jasonr@gnu.org>
2468
2469 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
2470 (globals_of_w32fns): Set it.
2471
2472 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
2473
2474 * data.c (Fquo): Simplify.
2475
2476 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
2477
2478 * data.c (Fquo): If any argument is float, do the computation in
2479 floating point.
2480
2481 2004-05-08 Juanma Barranquero <lektu@terra.es>
2482
2483 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
2484 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
2485 Fix spelling of Emacs on docstring.
2486 (Fset_process_coding_system, Fprocess_coding_system)
2487 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
2488 Make argument names match their use in docstring.
2489 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
2490 Fix docstring.
2491
2492 * editfns.c (Finsert_buffer_substring): Make argument names match their
2493 use in docstring.
2494
2495 * syntax.c (Fmodify_syntax_entry): Fix docstring.
2496
2497 2004-05-07 Steven Tamm <steventamm@mac.com>
2498
2499 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
2500 around call to ReceiveEvent to avoid certain crashes.
2501
2502 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2503
2504 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
2505 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
2506 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
2507 Save/restore the current graphics port and device handle when
2508 drawing into an offscreen graphics world.
2509
2510 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
2511 (gif_load): Likewise.
2512
2513 2004-05-07 Juanma Barranquero <lektu@terra.es>
2514
2515 * window.c (Fset_window_buffer): Fix docstring.
2516
2517 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
2518
2519 * emacs.c (main) [VMS]: Fix var ref.
2520
2521 2004-05-06 Romain Francoise <romain@orebokech.com>
2522
2523 * data.c (Fsetq_default): Fix docstring.
2524
2525 2004-05-06 Jason Rumney <jasonr@gnu.org>
2526
2527 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
2528 to avoid name clash.
2529
2530 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2531
2532 * fileio.c (barf_or_query_if_file_exists): Use lstat.
2533 (Frename_file): Handle renaming of symlinks across file systems.
2534 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
2535
2536 2004-05-04 Kim F. Storm <storm@cua.dk>
2537
2538 * xdisp.c (Qtotal): New var.
2539 (syms_of_xdisp): Intern and staticpro it.
2540 (calc_line_height_property): New arg total. Set it if
2541 line-spacing property has format (total . VALUE).
2542 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
2543 Handle total line-spacing property.
2544
2545 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2546
2547 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
2548 "under" scroll bar when size/position changes.
2549
2550 2004-05-03 Jason Rumney <jasonr@gnu.org>
2551
2552 * makefile.nt: Remove.
2553
2554 2004-05-02 Eli Zaretskii <eliz@gnu.org>
2555
2556 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
2557 Avoid compiler warnings.
2558
2559 * Makefile.in (region-cache.o): Depend on config.h.
2560
2561 2004-05-02 Romain Francoise <romain@orebokech.com>
2562
2563 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
2564 with continuation lines, too.
2565
2566 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
2567
2568 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
2569
2570 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
2571
2572 * xdisp.c (calc_line_height_property): YAILOM (yet another
2573 int/Lisp_Object mixup).
2574
2575 2004-05-01 Eli Zaretskii <eliz@gnu.org>
2576
2577 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
2578 undo bad effect of pack(4) in some versions of system headers.
2579
2580 2004-05-01 Jason Rumney <jasonr@gnu.org>
2581
2582 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
2583
2584 2004-04-30 Kim F. Storm <storm@cua.dk>
2585
2586 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
2587 (syms_of_buffer) <cursor-type>: Doc fix.
2588
2589 * dispextern.h (struct it): Remove member use_default_face.
2590 Add members override_ascent, override_descent, override_boff.
2591
2592 * xdisp.c (init_iterator): Handle line-spacing float value.
2593 Initialize override_ascent member.
2594 (append_space_for_newline): Reset override_ascent.
2595 Remove use_default_face.
2596 (calc_line_height_property): New function to calculate value of
2597 line-height and line-spacing properties. Look at overlays, too.
2598 Set override_ascent, override_descent, override_boff members when
2599 using another face than the current face. Float values are now
2600 relative to the frame default font, by default; accept a cons
2601 of ratio and face name to specify value relative to a specific face.
2602 (x_produce_glyphs): Use calc_line_height_property.
2603 Use override_ascent etc. when set to handle different face heights.
2604 A negative line-spacing property value is interpreted as a total
2605 line height, rather than inter-line spacing.
2606 (note_mouse_highlight): Allocate room for 40 overlays initially.
2607
2608 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
2609
2610 * data.c (Fsubr_name): New fun.
2611 (syms_of_data): Defsubr it.
2612
2613 2004-04-29 Kim F. Storm <storm@cua.dk>
2614
2615 * xdisp.c (null_glyph_slice): New var.
2616 (append_glyph, append_composite_glyph, append_stretch_glyph):
2617 Use it to initialize glyph slice.
2618
2619 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
2620
2621 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
2622 (on_hot_spot_p): Make sure we always return a value.
2623 (Flookup_image_map): Remove unused var ix and iy.
2624 (note_mode_line_or_margin_highlight): Remove unused var `image'.
2625
2626 2004-04-27 Eli Zaretskii <eliz@gnu.org>
2627
2628 * msdos.c (init_environment): If one of the TMP... environment
2629 variables is set to a drive letter without a trailing slash,
2630 append a slash.
2631
2632 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
2633
2634 * editfns.c (lisp_time_argument): Provide externally.
2635
2636 * fileio.c (Fset_file_times): New function.
2637 (syms_of_fileio): Intern and staticpro it.
2638
2639 2004-04-27 Kim F. Storm <storm@cua.dk>
2640
2641 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
2642 header line strings.
2643
2644 * dispextern.h (struct it): New member use_default_face.
2645
2646 * xdisp.c (Qline_height): New variable.
2647 (syms_of_xdisp): Intern and staticpro it.
2648 (append_space_for_newline): Partially undo 2004-04-25 change;
2649 add default_face_p arg, and restore callers.
2650 Clear it->use_default_face after use.
2651 (x_produce_glyphs): Set default font for ascii char if
2652 it->use_default_font is set. Change line-spacing property to set
2653 just extra line spacing. Handle new line-height property.
2654
2655 2004-04-26 Andreas Schwab <schwab@suse.de>
2656
2657 * print.c (print_object): Print non-ascii characters in bool
2658 vector representation as octal escapes.
2659
2660 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
2661 * print.c (print_object): Use it instead of BITS_PER_CHAR for
2662 bool vectors.
2663 * lread.c (read1): Likewise.
2664 * alloc.c (Fmake_bool_vector): Likewise.
2665 * data.c (Faref, Faset): Likewise.
2666 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
2667 (mapcar1): Likewise.
2668
2669 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2670
2671 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
2672
2673 2004-04-26 Miles Bader <miles@gnu.org>
2674
2675 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
2676
2677 2004-04-26 Juanma Barranquero <lektu@terra.es>
2678
2679 * buffer.c (Fpop_to_buffer): Fix docstring.
2680
2681 2004-04-26 Steven Tamm <steventamm@mac.com>
2682
2683 * lread.c (init_lread): Don't display missing lisp directory
2684 warnings with Carbon Emacs because self-contained bundled Emacs
2685 may be built without correct installation path.
2686
2687 2004-04-25 Kim F. Storm <storm@cua.dk>
2688
2689 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2690
2691 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2692
2693 * xdisp.c (append_space_for_newline): Rename from append_space.
2694 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2695 (x_produce_glyphs): Handle line-spacing property on newline char.
2696 If value is t, adjust ascent and descent to fit current row height.
2697 If value is an integer or float, set extra_line_spacing to integer
2698 value, or to float value x current line height.
2699
2700 2004-04-23 Kenichi Handa <handa@m17n.org>
2701
2702 * fontset.c (Finternal_char_font): If POSITION is nil, return
2703 font for displaying CH with the default face.
2704
2705 2004-04-23 Juanma Barranquero <lektu@terra.es>
2706
2707 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2708
2709 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2710
2711 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2712 Don't make assumptions about the relative place of i and val.
2713 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2714
2715 2004-04-21 Kim F. Storm <storm@cua.dk>
2716
2717 * dispextern.h (struct glyph_slice): New struct.
2718 (struct glyph): New member slice.
2719 (GLYPH_SLICE_EQUAL_P): New macro.
2720 (GLYPH_EQUAL_P): Use it.
2721 (struct glyph_string): New member slice.
2722 (struct it_slice): New struct.
2723 (struct it): New member slice, add member to stack too.
2724 New member constrain_row_ascent_descent_p.
2725 (image_ascent): Add prototype.
2726
2727 * dispnew.c (buffer_posn_from_coords): Return full image width
2728 and height even for image slices (posn is relative to full image).
2729 (marginal_area_string): Adjust x0,y0 for image slice.
2730
2731 * image.c (image_ascent): Add slice arg; calculate ascent for
2732 image slice (or full image).
2733
2734 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2735 (syms_of_keyboard): Defsubr them.
2736
2737 * lisp.h (pos_visible_p): Fix prototype.
2738
2739 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2740 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2741 (x_draw_image_foreground, x_draw_image_relief)
2742 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2743 Draw sliced images.
2744
2745 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2746 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2747 (x_draw_image_foreground, x_draw_image_relief)
2748 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2749 Draw sliced images.
2750
2751 * w32term.h (image_ascent): Remove prototype.
2752
2753 * window.c (Fpos_visible_in_window_p): Return pixel position if
2754 PARTIALLY arg is non-nil. Simplify. Doc fix.
2755 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2756 to return/set vscroll in pixels.
2757
2758 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2759
2760 * xdisp.c (Qslice): New variable.
2761 (syms_of_xdisp): Intern and staticpro it.
2762 (pos_visible_p): Return pixel position in new x and y args.
2763 (init_iterator): Reset it->slice info.
2764 (handle_display_prop): Parse (slice ...) property.
2765 (push_it, pop_it): Save/restore slice info.
2766 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2767 force repositioning of tall row if window is vscrolled, as that
2768 would reset vscroll.
2769 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2770 increasing row height if row is non-empty.
2771 (fill_image_glyph_string): Copy slice info.
2772 (take_vertical_position_into_account): Simplify.
2773 (produce_image_glyph): Handle iterator slice info, setup glyph
2774 slice info. Do not force minimum line height.
2775 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2776 do not increase height (ascent/descent) of non-empty row when
2777 adding normal character glyph; instead reduce glyph ascent/descent
2778 appropriately; if row is higher than current glyph, adjust glyph
2779 descent/ascent to reposition glyph within the existing row.
2780 Likewise, when char is newline, only set ascent/descent if row is
2781 currently empty.
2782 (note_mouse_highlight): Handle hotspots with sliced image.
2783
2784 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2785 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2786 (x_draw_image_foreground, x_draw_image_relief)
2787 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2788 Draw sliced images.
2789
2790 * xterm.h (image_ascent): Remove prototype.
2791
2792 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2793
2794 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2795
2796 2004-04-20 John Paul Wallington <jpw@gnu.org>
2797
2798 * fns.c (Fassoc, Feql): Fix indentation.
2799
2800 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
2801
2802 2004-04-19 John Paul Wallington <jpw@gnu.org>
2803
2804 * fns.c (Feql): New function.
2805 (syms_of_fns): Defsubr it.
2806
2807 2004-04-18 Jason Rumney <jasonr@gnu.org>
2808
2809 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2810 after closing the clipboard.
2811
2812 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2813
2814 * buffer.c (Fbuffer_base_buffer): Doc fix.
2815
2816 2004-04-17 Kim F. Storm <storm@cua.dk>
2817
2818 * keymap.c (Fkey_description): Add optional PREFIX arg.
2819 Combine prefix with KEYS to make up the full key sequence to describe.
2820 Correlate meta_prefix_char and following (simple) key to describe
2821 as meta modifier. All callers changed.
2822 (describe_map): Rename arg `keys' to `prefix'. Remove local
2823 `elt_prefix' var. Use Fkey_description with prefix instead of
2824 elt_prefix combined with Fsingle_key_description.
2825 (describe_vector): Declare static. Replace arg `elt_prefix' with
2826 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2827 if !KEYMAP_P. Use Fkey_description with prefix instead of
2828 Fsingle_key_description.
2829
2830 * keymap.h (Fkey_description): Fix prototype.
2831 (describe_vector): Remove prototype.
2832
2833 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2834
2835 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2836 (png_load): Fix calculation of transparent background color on X
2837 and W32 platforms.
2838
2839 2004-04-16 Juanma Barranquero <lektu@terra.es>
2840
2841 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2842 not too large before computing how much to scroll.
2843
2844 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2845
2846 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2847
2848 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2849
2850 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2851 Add hyperlink to Elisp manual to the docstring.
2852
2853 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2854
2855 * callint.c (fix_command): Use XDCR.
2856
2857 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
2858
2859 * window.c (Fget_lru_window): Doc fix.
2860
2861 2004-04-14 Kim F. Storm <storm@cua.dk>
2862
2863 * editfns.c (Fformat): Fix allocation size of precision array.
2864
2865 * dispnew.c (update_window): Only set changed_p if
2866 scrolling_window actually did scroll.
2867 (scrolling_window): Only return 1 if we actually did scroll.
2868
2869 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2870 height to glyph height when cursor row is not fully visible.
2871 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2872 failure in case row is higher than window. Callers changed.
2873 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2874 Try to scroll partially visible, higher-than-window cursor row.
2875 (redisplay_window): Always try to scroll partially visible,
2876 higher-than-window cursor row - both initially and again with
2877 centering_position = 0.
2878 Clear desired matrix before retrying with centering_position = 0.
2879
2880 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2881
2882 * syntax.c (scan_lists): Simplify backward string scan.
2883 Fix off-by-one boundary check for string and comment fences.
2884
2885 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
2886
2887 * sheap.c, unexcw.c: New files.
2888
2889 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
2890
2891 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
2892 base buffer has been killed. Correct the error message if the
2893 base buffer does not exist.
2894
2895 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
2896
2897 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
2898 Cygwin itself. Add support for Xaw3d scrollbars.
2899
2900 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2901
2902 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2903
2904 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2905 before Cygwin unexec.
2906
2907 * Makefile.in: Link changes for Cygwin unexec() support.
2908
2909 2004-04-12 Andreas Schwab <schwab@suse.de>
2910
2911 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2912
2913 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2914
2915 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2916 IGNORE argument equals NAME. Doc fix.
2917
2918 2004-04-11 Masatake YAMATO <jet@gyve.org>
2919
2920 * buffer.c (fix_start_end_in_overlays): Make overlays
2921 empty if they are backwards.
2922
2923 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2924
2925 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2926
2927 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2928
2929 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2930
2931 2004-04-06 Kim F. Storm <storm@cua.dk>
2932
2933 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2934 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2935
2936 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2937 clearing highlight.
2938
2939 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2940
2941 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2942 clearing highlight.
2943
2944 * indent.c (vmotion): Do not reserve one column for continuation
2945 marks on window frames.
2946
2947 2004-04-04 Eli Zaretskii <eliz@gnu.org>
2948
2949 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2950 from GCC.
2951
2952 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2953
2954 * .gdbinit-union: Remove.
2955
2956 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2957 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2958 ($nonvalbits): Remove.
2959 ($valmask): Set it by calling xreload to avoid redundancy.
2960
2961 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2962 (gdb_emacs_intbits): Remove.
2963
2964 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2965
2966 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
2967
2968 2004-03-30 Kenichi Handa <handa@m17n.org>
2969
2970 * editfns.c (Fformat): Fix initialization of the array info.
2971
2972 2004-03-30 Kim F. Storm <storm@cua.dk>
2973
2974 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2975 (syms_of_xterm): DEFVAR_BOOL it.
2976 (ignore_next_mouse_click_timeout): New var.
2977 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2978 Use it to filter mouse clicks following focus event.
2979
2980 2004-03-29 David Ponce <david@dponce.com>
2981
2982 * callint.c (Fcall_interactively): Fix last change.
2983
2984 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2985
2986 * eval.c (Fcommandp): Simplify.
2987
2988 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2989 Extend to handle all kinds of functions.
2990
2991 * lisp.h (Finteractive_form): Declare.
2992
2993 * callint.c (Fcall_interactively): Use it.
2994
2995 2004-03-26 Kim F. Storm <storm@cua.dk>
2996
2997 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2998 to catch errors in calc_pixel_width_or_height during redisplay.
2999
3000 2004-03-26 Masatake YAMATO <jet@gyve.org>
3001
3002 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
3003
3004 * lisp.h (fix_start_end_in_overlays): Likewise.
3005
3006 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
3007
3008 * editfns.c (Ftranspose_regions): Likewise.
3009
3010 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3011
3012 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
3013
3014 2004-03-19 Richard M. Stallman <rms@gnu.org>
3015
3016 * s/sol2-6.h: Delete previous change.
3017
3018 2004-03-19 Kim F. Storm <storm@cua.dk>
3019
3020 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
3021 to_charpos corresponds to newline in right fringe. Use local
3022 BUFFER_POS_REACHED_P macro.
3023
3024 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3025
3026 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
3027 to compile on non-window system.
3028
3029 2004-03-19 Kim F. Storm <storm@cua.dk>
3030
3031 * dispextern.h (calc_pixel_width_or_height): Add prototype.
3032
3033 * image.c (Qcenter): Move to xdisp.c.
3034
3035 * xdisp.c (Qcenter): Declare here.
3036 (syms_of_xdisp): Intern and staticpro it.
3037 (handle_single_display_prop): Allow space display property on all
3038 platforms.
3039 (display_mode_line): Set mode_line_p before displaying line.
3040 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
3041 handling. Remove complex cases for fringes and scroll-bars.
3042 Add left, right, and center alignment positions. Add text (area)
3043 width/height. Return width or height for image specs.
3044 (produce_stretch_glyph): Improve handling of :align-to. Is now
3045 relative to left of text area by default, but other base offsets
3046 can be specified -- also for text lines.
3047
3048 * term.c (produce_glyphs): Handle IT_STRETCH.
3049 (produce_stretch_glyph): New function to handle space width and
3050 align-to display properties on non-window systems.
3051
3052 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3053
3054 * fileio.c (Fread_file_name): Set completion-ignore-case for
3055 case-insensitive systems.
3056
3057 2004-03-14 Masatake YAMATO <jet@gyve.org>
3058
3059 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
3060 when keymap and cursor are setup.
3061
3062 2004-03-14 Steven Tamm <steventamm@mac.com>
3063
3064 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
3065
3066 2004-03-14 Kim F. Storm <storm@cua.dk>
3067
3068 * dispextern.h (x_find_image_file): Add prototype.
3069
3070 * image.c (x_find_image_file): Make extern.
3071
3072 * xfns.c (x_find_image_file): Remove prototype.
3073
3074 2004-03-13 Eli Zaretskii <eliz@gnu.org>
3075
3076 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
3077
3078 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
3079
3080 2004-03-12 Richard M. Stallman <rms@gnu.org>
3081
3082 * fns.c (internal_equal): New arg PROPS controls comparing
3083 text properties. All callers changed.
3084 (Fequal_including_properties): New function.
3085 (syms_of_fns): defsubr it.
3086
3087 2004-03-12 Kim F. Storm <storm@cua.dk>
3088
3089 Fix image support on MAC. From YAMAMOTO Mitsuharu.
3090
3091 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
3092 (image_background, image_background_transparent): Fix prototypes.
3093
3094 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
3095
3096 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
3097 (x_query_font, x_find_ccl_program, x_set_window_size)
3098 (x_make_frame_visible, mac_initialize, XCreatePixmap)
3099 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
3100 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
3101
3102 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
3103 (x_query_font, x_find_ccl_program, x_set_window_size)
3104 (x_make_frame_visible, mac_initialize, XCreatePixmap)
3105 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
3106 (mac_draw_line_to_pixmap): Add prototypes.
3107
3108 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3109
3110 * macterm.c (XTread_socket): Fix mouse click on tool bar.
3111
3112 2004-03-11 Kim F. Storm <storm@cua.dk>
3113
3114 * dispextern.h: Move image related prototypes from xfns.c section
3115 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
3116 HAVE_X_WINDOWS.
3117
3118 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
3119 Move gtkutil.o to new GTK_OBJ list.
3120 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
3121 (GTK_OBJ) [USE_GTK]: New declaration.
3122 (obj): Add $(GTK_OBJ) to list.
3123
3124 2004-03-11 Steven Tamm <steventamm@mac.com>
3125
3126 * image.c [MAC_OSX]: Include sys/stat.h
3127
3128 * macfns.c (syms_of_macfns): Remove definitions of things now
3129 defined in image.c
3130
3131 2004-03-11 Kim F. Storm <storm@cua.dk>
3132
3133 The following changes consolidates the identical/similar image
3134 support code previously found in xfns.c, w32fns.c, and macfns.c
3135 into a new file image.c.
3136
3137 * makefile.w32-in (OBJ1): Add image.o.
3138 ($(BLD)/image.$(O)): Add dependencies.
3139
3140 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
3141 (image.o): Add dependencies.
3142
3143 * image.c: New file with consolidated image support code.
3144 (COLOR_TABLE_SUPPORT): New define to control whether
3145 color table support is available (X only).
3146 (Bitmap_Record): Common name for x_bitmap_record,
3147 w32_bitmap_record, and mac_bitmap_record.
3148 (XImagePtr): Common name for pointer to XImage or equivalent.
3149 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
3150 to XImagePtr on X+MAC, and to HDC on W32.
3151 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
3152 (NO_PIXMAP): Common name for "None" or equivalent.
3153 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
3154 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
3155 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
3156 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
3157 Define with suitable equivalents on W32 and MAC for code sharing.
3158 (XDrawLine): Define on MAC for code sharing.
3159 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
3160 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
3161 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3162 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3163 (x_reference_bitmap, x_create_bitmap_from_data)
3164 (x_create_bitmap_from_file, x_destroy_bitmap)
3165 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3166 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3167 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3168 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3169 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3170 (define_image_type, lookup_image_type, valid_image_p)
3171 (image_error, enum image_value_type, struct image_keyword)
3172 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3173 (make_image, free_image, prepare_image_for_display, image_ascent)
3174 (four_corners_best, image_background, image_background_transparent)
3175 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3176 (make_image_cache, free_image_cache, clear_image_cache)
3177 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3178 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3179 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3180 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3181 (init_image_func_pointer, image_load_quartz2d)
3182 (struct ct_color, init_color_table, free_color_table)
3183 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3184 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3185 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3186 (x_disable_image, x_build_heuristic_mask)
3187 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3188 (TIFF support, GIF support, Ghostscript support): Consolidate image
3189 code from xfns.c, w32fns.c, and macfns.c.
3190 (syms_of_image): Consolidate image related symbol setup here.
3191 (init_image): Consolidate image related initializations here.
3192
3193 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
3194 and init_image. Remove call to init_xfns.
3195
3196 * macterm.h (struct mac_bitmap_record): Add file member.
3197 Not currently used, but simplifies code sharing.
3198
3199 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3200 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3201 (x_reference_bitmap, x_create_bitmap_from_data)
3202 (x_create_bitmap_from_file, x_destroy_bitmap)
3203 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3204 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3205 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3206 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3207 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3208 (define_image_type, lookup_image_type, valid_image_p)
3209 (image_error, enum image_value_type, struct image_keyword)
3210 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3211 (make_image, free_image, prepare_image_for_display, image_ascent)
3212 (four_corners_best, image_background, image_background_transparent)
3213 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3214 (make_image_cache, free_image_cache, clear_image_cache)
3215 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3216 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3217 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3218 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3219 (init_image_func_pointer, image_load_quartz2d)
3220 (struct ct_color, init_color_table, free_color_table)
3221 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3222 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3223 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3224 (x_disable_image, x_build_heuristic_mask)
3225 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3226 (TIFF support, GIF support, Ghostscript support): Merge with image
3227 code from xfns.c and macfns.c into image.c.
3228 (syms_of_xfns): Move image related symbols to image.c.
3229 (init_external_image_libraries, init_xfns): Remove; initialization
3230 moved to init_image in image.c.
3231
3232 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3233 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3234 (x_reference_bitmap, x_create_bitmap_from_data)
3235 (x_create_bitmap_from_file, x_destroy_bitmap)
3236 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3237 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3238 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3239 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3240 (define_image_type, lookup_image_type, valid_image_p)
3241 (image_error, enum image_value_type, struct image_keyword)
3242 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3243 (make_image, free_image, prepare_image_for_display, image_ascent)
3244 (four_corners_best, image_background, image_background_transparent)
3245 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3246 (make_image_cache, free_image_cache, clear_image_cache)
3247 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3248 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3249 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3250 (struct ct_color, init_color_table, free_color_table)
3251 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3252 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3253 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3254 (x_disable_image, x_build_heuristic_mask)
3255 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3256 (TIFF support, GIF support, Ghostscript support): Merge with image
3257 code from xfns.c and macfns.c into image.c.
3258 (syms_of_xfns): Move image related symbols to image.c.
3259 (init_external_image_libraries, init_xfns): Remove; initialization
3260 moved to init_image in image.c.
3261
3262 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3263 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3264 (x_reference_bitmap, x_create_bitmap_from_data)
3265 (x_create_bitmap_from_file, x_destroy_bitmap)
3266 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3267 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3268 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3269 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3270 (define_image_type, lookup_image_type, valid_image_p)
3271 (image_error, enum image_value_type, struct image_keyword)
3272 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3273 (make_image, free_image, prepare_image_for_display, image_ascent)
3274 (four_corners_best, image_background, image_background_transparent)
3275 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3276 (make_image_cache, free_image_cache, clear_image_cache)
3277 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3278 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3279 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3280 (struct ct_color, init_color_table, free_color_table)
3281 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3282 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3283 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3284 (x_disable_image, x_build_heuristic_mask)
3285 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3286 (TIFF support, GIF support, Ghostscript support): Merge with
3287 w32fns.c and macfns.c image code into image.c.
3288 (syms_of_xfns): Move image related symbols to image.c.
3289 (init_xfns): Remove; initialization moved to init_image in image.c.
3290
3291 * lisp.h (syms_of_image, init_image): Add protoypes.
3292 (init_xfns): Remove prototype.
3293
3294 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3295 (x_reference_bitmap, x_create_bitmap_from_data)
3296 (x_create_bitmap_from_file, x_destroy_bitmap)
3297 (x_create_bitmap_mask): Move prototypes from dispextern.h.
3298 (gamma_correct) [MAC_OS]: Add prototype.
3299
3300 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3301 (x_reference_bitmap, x_create_bitmap_from_data)
3302 (x_create_bitmap_from_file, x_destroy_bitmap)
3303 (x_create_bitmap_mask): Move prototypes to dispextern.h.
3304
3305 2004-03-09 Kenichi Handa <handa@etlken2>
3306
3307 * coding.c (decode_coding_emacs_mule): Handle insufficent source
3308 correctly.
3309
3310 2004-03-04 Richard M. Stallman <rms@gnu.org>
3311
3312 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
3313
3314 * window.c (Fdisplay_buffer): Doc fix.
3315
3316 * buffer.c (Fpop_to_buffer): Doc fix.
3317
3318 2004-03-03 Kim F. Storm <storm@cua.dk>
3319
3320 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
3321
3322 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
3323
3324 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
3325
3326 2004-03-02 Richard M. Stallman <rms@gnu.org>
3327
3328 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
3329
3330 2004-03-02 Kenichi Handa <handa@m17n.org>
3331
3332 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
3333
3334 2004-03-02 Kim F. Storm <storm@cua.dk>
3335
3336 * window.h (struct window): New member overlay_arrow_bitmap.
3337
3338 * window.c (make_window): Initialize overlay_arrow_bitmap.
3339
3340 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
3341 implement and integrate multiple overlay arrows with redisplay.
3342 (syms_of_xdisp): DEFVAR_LISP and initialize it.
3343 (last_arrow_position, last_arrow_string): Replace by properties.
3344 (Qlast_arrow_position, Qlast_arrow_string)
3345 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
3346 (syms_of_xdisp): Intern and staticpro them.
3347 (overlay_arrow_string_or_property, update_overlay_arrows)
3348 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
3349 (overlay_arrow_at_row): New functions for multiple overlay arrows.
3350 (redisplay_internal): Use them instead of directly accessing
3351 Voverlay_arrow_position etc. for multiple overlay arrows.
3352 (mark_window_display_accurate): Use update_overlay_arrows.
3353 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
3354 (try_window_id): Use overlay_arrows_changed_p.
3355 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
3356 (display_line): Use overlay_arrow_at_row to check multiple
3357 overlay arrows, and get relevant overlay-arrow-string and
3358 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
3359 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
3360 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
3361
3362 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
3363 (update_window_fringes): Remove unused code.
3364
3365 2004-03-01 Jason Rumney <jasonr@gnu.org>
3366
3367 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
3368
3369 2004-03-01 Juanma Barranquero <lektu@terra.es>
3370
3371 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
3372
3373 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
3374
3375 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3376
3377 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
3378 how many colors can be displayed.
3379
3380 2004-03-01 Kenichi Handa <handa@m17n.org>
3381
3382 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
3383 correctly.
3384
3385 2004-02-28 Kim F. Storm <storm@cua.dk>
3386
3387 * dispnew.c (update_window): Update header line also if there are
3388 no other changes in window (move code after set_cursor label).
3389
3390 * lisp.h (mark_window_display_accurate): Remove prototype.
3391
3392 * window.c (window_loop, Fforce_window_update): Force mode line
3393 updates by setting prevent_redisplay_optimizations_p and
3394 update_mode_lines.
3395
3396 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3397
3398 * xfns.c (x_window): Fix indentation.
3399
3400 * xterm.c (x_calc_absolute_position): Call x_real_positions
3401 to get WM window sizes and use those to calculate position.
3402 (x_set_offset): Remove code commented out.
3403
3404 2004-02-28 Miles Bader <miles@gnu.org>
3405
3406 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
3407
3408 2004-02-28 Kim F. Storm <storm@cua.dk>
3409
3410 * keyboard.c (kbd_buffer_store_event_hold): New function to store
3411 an event into kbd fifo, but with special handling of quit event;
3412 a quit event is saved for later, and further events are discarded
3413 until the saved quit event has been processed.
3414 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
3415 (gen_help_event): Store help event in kbd fifo.
3416 (NREAD_INPUT_EVENTS): Remove.
3417 (read_avail_input): Adapt to new read_socket_hook interface.
3418 Remove allocation and initialization of local input_event buffer,
3419 as read_socket_hook stores events directly in fifo. Allocate and
3420 initialize local hold_quit event to handle postponed quit event
3421 (and store it if set by kbd_buffer_store_event_hold).
3422
3423 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
3424 (gen_help_event): Fix prototype.
3425
3426 * macterm.c (XTread_socket): Remove bufp_r and
3427 numcharsp args. Add hold_quit arg.
3428 Rework to use just one, local, inev input_event. Store inev
3429 directly in fifo using kbd_buffer_store_event_hold.
3430
3431 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
3432 (read_input_waiting): Adapt to new read_socket_hook interface.
3433 Remove allocation and initialization of local input_event buffer,
3434 as read_socket_hook stores events directly in fifo. Allocate and
3435 initialize local hold_quit event to handle postponed quit event
3436 (and store it if set by kbd_buffer_store_event_hold).
3437
3438 * term.c (read_socket_hook): Fix arg list.
3439
3440 * termhooks.h (read_socket_hook): Fix prototype.
3441
3442 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
3443 numcharsp args. Add hold_quit arg.
3444 Rework to use just one, local, inev input_event. Store inev
3445 directly in fifo using kbd_buffer_store_event_hold.
3446
3447 * w32inevt.h (w32_console_mouse_position): Fix prototype.
3448
3449 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
3450 Add hold_quit arg. Rework to use just one, local, inev
3451 input_event. Store inev directly in fifo using
3452 kbd_buffer_store_event_hold. Update count in one place.
3453 Postpone call to gen_help_event until inev is stored; use new
3454 local do_help for this.
3455 Remove local emacs_event in handing of ButtonPress event; just use
3456 inev instead (so no reason to copy it later).
3457
3458 * xsmfns.c (x_session_check_input): Remove numchars arg.
3459
3460 * xterm.c (x_focus_changed, x_detect_focus_change):
3461 Remove numchars arg. Always store event into bufp arg.
3462 Return nothing. Callers changed accordingly.
3463 (glyph_rect): Simplify.
3464 (STORE_KEYSYM_FOR_DEBUG): New macro.
3465 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
3466 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
3467 (current_hold_quit) [USE_GTK]: Add.
3468 (event_handler_gdk): Adapt to new handle_one_xevent.
3469 (handle_one_xevent): Remove bufp_r and numcharsp args.
3470 Add hold_quit arg. Rework to use just one, local, inev
3471 input_event. Store inev directly in fifo using
3472 kbd_buffer_store_event_hold. Update count in one place.
3473 Postpone call to gen_help_event until inev is stored; use new
3474 local do_help for this.
3475 Simplify handling of keysyms (consolidate common code). Fix bug
3476 where count was updated with nchars instead of nbytes.
3477 Remove local emacs_event in handing of ButtonPress event; just use
3478 inev instead (so no reason to copy it later).
3479 Remove `out' label. Rename label `ret' to `done'; add various
3480 `goto done' to clarify code flow in deeply nested blocks.
3481 (x_dispatch_event): Simplify as handle_one_xevent now calls
3482 kbd_buffer_store_event itself.
3483 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3484 arg. Call handle_one_xevent with new arglist. Store event from
3485 x_session_check_input in fifo.
3486 [USE_GTK]: Setup current_hold_quit.
3487 Decrement handling_signal before unblocking input.
3488 (x_initialize) [USE_GTK]: Initialize current_count.
3489
3490 * xterm.h (x_session_check_input): Fix prototype.
3491
3492 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3493
3494 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
3495
3496 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
3497 macgui.h).
3498
3499 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
3500
3501 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
3502 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
3503 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
3504 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
3505 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
3506 (Bitmap): Remove typedef.
3507 (Pixmap): Change int to GWorldPtr.
3508
3509 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3510
3511 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3512 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
3513 New #define to extract 16-bit depth color components from unsigned
3514 long representation.
3515 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
3516 colors used for masks.
3517 (struct mac_display_info): Add color_p. Remove n_cbits.
3518
3519 * macfns.c: Include sys/types.h and sys/stat.h.
3520 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
3521 Include QuickTime/QuickTime.h.
3522 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
3523 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
3524 functions defined in macterm.c.
3525 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
3526 (ZPixmap): New #define for compatibility with xfns.c.
3527 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3528 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
3529 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
3530 New functions.
3531 (four_corners_best, x_create_x_image_and_pixmap)
3532 (x_destroy_x_image, unwind_create_frame, x_disable_image)
3533 (x_edge_detection, init_color_table, colors_in_color_table)
3534 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
3535 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
3536 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
3537 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
3538 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
3539 long mixup.
3540 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
3541 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
3542 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
3543 (x_set_cursor_type, Fxw_color_values, valid_image_p)
3544 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
3545 (x_alloc_image_color, clear_image_cache, lookup_image)
3546 (x_find_image_file, xbm_read_bitmap_file_data)
3547 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
3548 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
3549 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
3550 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
3551 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
3552 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
3553 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
3554 #if 0.
3555 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
3556 #if 0. Free white_relief.gc and black_relief.gc.
3557 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
3558 New functions (from xfns.c).
3559 (Fx_create_frame): Record unwind_create_frame.
3560 (Fxw_display_color_p): Use dpyinfo->color_p.
3561 (Fx_display_grayscale_p, Fx_display_planes): Don't use
3562 dpyinfo->n_cbits.
3563 (Fx_display_color_cells): Use dpyinfo->n_planes;
3564 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
3565 (Qheuristic, cross_disabled_images, emboss_matrix)
3566 (laplace_matrix): New variables (from xfns.c).
3567 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
3568 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
3569 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
3570 (image_background_transparent): New function (from xfns.c).
3571 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3572 (image_load_quicktime): Add declaration.
3573 [MAC_OSX] (image_load_quartz2d): Likewise.
3574 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
3575 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
3576 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
3577 (xbm_load_image_from_file, x_laplace_read_row)
3578 (x_laplace_write_row, pbm_read_file): Remove functions.
3579 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
3580 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
3581 (colors_in_color_table): Sync with xfns.c (although not used).
3582 (lookup_rgb_color): Don't lookup color table. Just do gamma
3583 correction.
3584 (COLOR_INTENSITY): New #define (from xfns.c).
3585 (x_disable_image): New function (from xfns.c).
3586 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3587 (x_build_heuristic_mask): Sync with xfns.c.
3588 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3589 (HAVE_PBM): Remove #ifdef.
3590 (pbm_load): Sync with xfns.c. Set img->width and img->height
3591 before IMAGE_BACKGROUND.
3592 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
3593 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
3594 Don't enclose with #if HAVE_PNG.
3595 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
3596 symbol _CGImageCreateWithPNGDataProvider is defined.
3597 Otherwise use image_load_quicktime.
3598 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
3599 [HAVE_PNG] (png_load): Sync with xfns.c.
3600 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3601 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
3602 HAVE_JPEG.
3603 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
3604 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
3605 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
3606 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
3607 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
3608 (tiff_image_p, tiff_load): Don't enclose declarations with #if
3609 HAVE_TIFF.
3610 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
3611 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
3612 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
3613 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
3614 New functions (from xfns.c).
3615 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
3616 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
3617 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
3618 Don't enclose with #if HAVE_GIF.
3619 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
3620 animated gif. Otherwise use image_load_quicktime.
3621 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
3622 gif_DrawText to avoid conflict with QuickdrawText.h.
3623 [HAVE_GIF] (gif_load): Sync with xfns.c.
3624 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
3625 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
3626 Ghostscript is not supported yet).
3627 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
3628 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
3629 cross_disabled_images (from xfns.c). Remove #if 0 for supported
3630 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3631 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
3632 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3633 HAVE_PNG. Call EnterMovies to support animated gifs.
3634 Call init_image_func_pointer to bind a symbol
3635 _CGImageCreateWithPNGDataProvider if it is defined.
3636
3637 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3638 (x_draw_bar_cursor): Sync declaration with xterm.c.
3639 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
3640 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
3641 graphics).
3642 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
3643 (mac_draw_line_to_pixmap, XCreatePixmap)
3644 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
3645 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
3646 New functions.
3647 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
3648 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3649 Cast bits to char *.
3650 (reflect_byte): New function (from w32fns.c).
3651 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
3652 due to byte alignment.
3653 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
3654 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3655 (XSetForeground): Remove static (now used in macfns.c).
3656 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
3657 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
3658 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
3659 (x_draw_glyph_string_box, x_draw_image_foreground)
3660 (x_draw_image_foreground_1, x_draw_image_glyph_string)
3661 (x_draw_stretch_glyph_string, x_draw_glyph_string)
3662 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
3663 Sync with xterm.c.
3664 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
3665 than the xterm.c version when a strictly horizontal or vertical
3666 line is drawn.
3667 (XTset_terminal_window): Add static.
3668 (x_make_frame_visible): Add UNBLOCK_INPUT.
3669 (x_free_frame_resources): New funcion (from xterm.c).
3670 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
3671 occurs in tool bar area.
3672 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
3673 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
3674 Initialize image cache.
3675 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
3676 Enclose unused functions with #if 0.
3677 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
3678 (decode_mac_font_name): New function to apply code conversions
3679 from a mac font name to an XLFD font name according to its script code.
3680 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
3681 font name to a mac font name according to REGISTRY and ENCODING fields.
3682 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
3683 whose name starts with `.'.
3684 (init_font_name_table): Use decode_mac_font_name. Add both
3685 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
3686 of a font is smJapanese.
3687 (mac_do_list_fonts): New function to list fonts that match a given
3688 pattern.
3689 (x_list_fonts, XLoadQueryFont): Use it.
3690 (XLoadQueryFont): Set rbearing field for each variable width
3691 character to avoid needless redraw.
3692 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3693
3694 2004-02-26 Kim F. Storm <storm@cua.dk>
3695
3696 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3697 as read_socket_hook handler on X aborts if buffer is too small
3698 and W32 handler doesn't always check buffer limit.
3699
3700 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3701 right-fringe similar to a display margin image. Specifically,
3702 the characters having the fringe prop are no longer shown, and
3703 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3704 do this. Set fringe bitmap face_id in it->face_id.
3705 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3706 still realize it->face (i.e. the fringe bitmap face).
3707
3708 2004-02-25 Miles Bader <miles@gnu.org>
3709
3710 * xdisp.c (check_it): Check string/string_pos consistency.
3711 (init_iterator): Initialize string-related fields properly.
3712
3713 2004-02-11 Miles Bader <miles@gnu.org>
3714
3715 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3716
3717 2004-02-10 Miles Bader <miles@gnu.org>
3718
3719 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3720 BLOCK_INPUT can be nested, so it doesn't make much sense.
3721
3722 2004-02-24 Michael Mauger <mmaug@yahoo.com>
3723
3724 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3725 (xbm_read_bitmap_data): Use unsigned char for image data.
3726
3727 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3728
3729 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3730
3731 2004-02-22 Jason Rumney <jasonr@gnu.org>
3732
3733 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3734 correctly over other bitmaps.
3735
3736 2004-02-21 Eli Zaretskii <eliz@gnu.org>
3737
3738 * emacs.c (USAGE1): Split into two halves.
3739 (USAGE2): Second half of the old USAGE1.
3740 (USAGE3): Rename from USAGE2.
3741 (USAGE4): Rename from USAGE3.
3742
3743 2004-02-21 Juri Linkov <juri@jurta.org>
3744
3745 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3746 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3747 --file. Fix -f, -l. Sort options. Untabify.
3748 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3749
3750 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3751
3752 * category.c (Fdefine_category, Fcategory_docstring)
3753 (Fget_unused_category, Fset_category_table)
3754 (Fcategory_set_mnemonics): Doc fixes.
3755
3756 2004-02-20 Kim F. Storm <storm@cua.dk>
3757
3758 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3759 The following changes are relative to the 2004-01-21 revision.
3760 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3761 in one call to read_socket_hook. Value is 8.
3762 (read_avail_input): Separate and rework handling of read_socket_hook
3763 and non-read_socket_hook cases. Use smaller input_event buffer
3764 in read_socket_hook case, and repeat if full buffer is read.
3765 Use new local variable 'discard' to skip input after C-g.
3766 In non-read_socket_hook case, just use a single input_event, and
3767 call kbd_buffer_store_event on the fly for each character.
3768
3769 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3770
3771 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3772 Remove unused `gu' alternative.
3773
3774 2004-02-19 Andreas Schwab <schwab@suse.de>
3775
3776 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3777 warning.
3778
3779 2004-02-18 Kim F. Storm <storm@cua.dk>
3780
3781 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3782 Fix last change.
3783
3784 2004-02-17 Kim F. Storm <storm@cua.dk>
3785
3786 * xdisp.c (fast_find_position): Fix return value of new version;
3787 it was inverted compared to the 21.1 version.
3788 (get_window_cursor_type): Don't look at glyph if NULL.
3789 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
3790
3791 * keyboard.c: Rework previous change; it didn't consider that the
3792 buf array was allocated on the stack.
3793 (prev_read): Remove variable.
3794 (read_avail_input_buf): New static event buffer array.
3795 (in_read_avail_input): New static variable to handle re-entrancy.
3796 (read_avail_input): Change buf to pinter to read_avail_input_buf.
3797 Use in_read_avail_input to handle re-entrance; when re-entered,
3798 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3799 Do not initialize read_avail_input_buf in full here; instead assume it
3800 is always cleared on entry. To ensure that, we clear (just) the
3801 entries that were used before we return.
3802 (init_keyboard): Initialize read_avail_input_buf here.
3803
3804 2004-02-16 Jesper Harder <harder@ifa.au.dk>
3805
3806 * cmds.c (Fend_of_line): Doc fix.
3807
3808 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3809
3810 * keyboard.c (prev_read): New static variable.
3811 (read_avail_input): Use it to zero out only those slots in buf[]
3812 that were used last time we were called.
3813
3814 2004-02-16 Eli Zaretskii <eliz@gnu.org>
3815
3816 * Makefile.in (obj): Move fringe.o from here...
3817 (XOBJ, MAC_OBJ): ...to here.
3818
3819 2004-02-16 Stephen Eglen <stephen@gnu.org>
3820
3821 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3822
3823 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3824
3825 * data.c (Fbyteorder):
3826 * fringe.c (Fdefine_fringe_bitmap):
3827 * xdisp.c (handle_single_display_prop):
3828 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3829
3830 2004-02-16 Jason Rumney <jasonr@gnu.org>
3831
3832 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3833
3834 2004-02-15 Steven Tamm <steventamm@mac.com>
3835
3836 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3837 controlling emulation of a three button mouse with option and
3838 command keys.
3839 (Qreverse, mac_get_enumlated_btn): Handle the emulation
3840 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
3841
3842 2004-02-15 Kim F. Storm <storm@cua.dk>
3843
3844 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3845
3846 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3847 Perform byte-swapping.
3848
3849 2004-02-14 Kim F. Storm <storm@cua.dk>
3850
3851 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3852 bits from char to short to facilitate wider bitmaps.
3853 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3854 member.
3855
3856 * fringe.c (struct fringe_bitmap): Change member bits from char to
3857 short to facilitate 16 bits wide bitmaps. Modify all standard
3858 bitmaps accordingly.
3859 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3860 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3861 (draw_fringe_bitmap): Ditto.
3862 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3863 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3864 handle up to 16 bits wide bitmaps.
3865 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
3866 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
3867
3868 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3869 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3870 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3871
3872 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3873 so it is no longer necessary to expand them here.
3874
3875 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3876
3877 2004-02-12 Kim F. Storm <storm@cua.dk>
3878
3879 * window.c (Fwindow_fringes): Doc fix.
3880
3881 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3882
3883 * xselect.c (x_get_foreign_selection): Add new optional parameter
3884 time_stamp.
3885 (Fx_get_selection_internal): Ditto, pass time_stamp to
3886 x_get_foreign_selection.
3887
3888 * data.c (Fbyteorder): New function.
3889
3890 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3891
3892 * atimer.c: Move include stdio.h to same place as in other files.
3893
3894 * region-cache.c: Ditto.
3895
3896 * sysdep.c: Ditto.
3897
3898 * xfaces.c: Ditto.
3899
3900 2004-02-09 Sam Steingold <sds@gnu.org>
3901
3902 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
3903
3904 2004-02-09 Kim F. Storm <storm@cua.dk>
3905
3906 * fringe.c: New file. Move original fringe related declarations
3907 and code from dispextern.h and xdisp.c here.
3908 Rework code to support user defined fringe bitmaps, redefining
3909 standard bitmaps, ability to overlay user defined bitmap with
3910 overlay arrow bitmap, and add faces to bitmaps.
3911 (Voverflow_newline_into_fringe): Declare here.
3912 (enum fringe_bitmap_align): New enum.
3913 (..._bits): All bitmaps are now defined without bitswapping; that
3914 is now done in init_fringe_once (if necessary).
3915 (standard_bitmaps): New array with specifications for the
3916 standard fringe bitmaps.
3917 (fringe_faces): New array.
3918 (valid_fringe_bitmap_id_p): New function.
3919 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3920 (draw_fringe_bitmap): New function which draws fringe bitmap,
3921 possibly overlaying bitmap with cursor in right fringe or the
3922 overlay arrow in the left fringe.
3923 (update_window_fringes): Do not handle overlay arrow here.
3924 Compare and copy fringe bitmap faces.
3925 (init_fringe_bitmap): New function.
3926 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3927 define and destroy user defined fringe bitmaps.
3928 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3929 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3930 (syms_of_fringe): New function. Defsubr new DEFUNs.
3931 DEFVAR_LISP Voverflow_newline_into_fringe.
3932 (init_fringe_once, init_fringe): New functions.
3933 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
3934
3935 * Makefile.in (obj): Add fringe.o.
3936 (fringe.o): New dependencies.
3937
3938 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3939 bits allocated to hold a fringe number. Increase number of bits
3940 from 4 to 8 to allow user defined fringe bitmaps.
3941 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3942 left_user_fringe_face_id, right_user_fringe_bitmap,
3943 right_user_fringe_face_id.
3944 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3945 Move to new file fringe.c.
3946 (MAX_FRINGE_BITMAPS): Define here.
3947 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3948 and overlay_p. Change member which to int.
3949 (struct redisplay_interface): New members define_fringe_bitmap
3950 and destroy_fringe_bitmap.
3951 (valid_fringe_bitmap_id_p): Add prototype.
3952 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3953
3954 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3955 arrows.
3956 (update_frame): Do flush_display if force_flush_display_p to
3957 ensure display (specifically fringes) are updated in a timely
3958 manner when resizing the frame by dragging the mouse.
3959 (update_window_line): Update row if overlay arrow changed.
3960 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3961 or overlay arrow changed.
3962
3963 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3964 syms_of_fringe, and init_fringe.
3965
3966 * frame.h (struct frame): New member force_flush_display_p.
3967
3968 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3969 Add prototypes.
3970
3971 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
3972 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
3973 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3974 Use cursor color for displaying cursor in fringe.
3975 (x_redisplay_interface): Add null handlers for
3976 define_fringe_bitmap and destroy_fringe_bitmap functions.
3977
3978 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3979 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3980 for displaying cursor in fringe.
3981 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3982 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3983 (w32_redisplay_interface): Add them to redisplay_interface.
3984 (w32_term_init): Call w32_init_fringe instead of explicitly
3985 defining fringe bitmaps in fringe_bmp array.
3986 (x_delete_display): Call w32_reset_fringes instead of explicitly
3987 destroying fringe bitmaps in fringe_bmp array.
3988
3989 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3990 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3991 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3992 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3993 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3994 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3995 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3996 Move fringe handling vars and code to new file fringe.c.
3997 (handle_display_prop): Handle left-fringe and right-fringe
3998 display properties; store user fringe bitmaps in iterator.
3999 (move_it_in_display_line_to): Handle cursor in fringe at eob.
4000 (clear_garbaged_frames): Set force_flush_display_p if resized.
4001 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
4002 (display_line): Handle cursor in fringe at eob.
4003 (display_line): Set row user fringe bitmaps from iterator.
4004
4005 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
4006 Use cursor color for displaying cursor in fringe.
4007 (x_redisplay_interface): Add null handlers for
4008 define_fringe_bitmap and destroy_fringe_bitmap functions.
4009
4010 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4011
4012 * macfns.c (Fx_change_window_property): Make doc string and
4013 parameters same as for X version.
4014
4015 * w32fns.c (Fx_change_window_property): Ditto.
4016
4017 2004-02-07 Kim F. Storm <storm@cua.dk>
4018
4019 * xdisp.c (hscroll_window_tree): Position cursor near to right
4020 margin in hscrolled window when jumping to end of line (rather
4021 than centering cursor).
4022
4023 * process.c (wait_reading_process_input): Don't do adaptive read
4024 buffering if waiting for a specific process.
4025
4026 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
4027
4028 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
4029 (Fread_minibuffer, Feval_minibuffer)
4030 (Fread_string, Fread_no_blanks_input)
4031 (Fcompleting_read): Doc fixes.
4032 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
4033 completion-regexp-list. Define Qcase_fold_search and staticpro it.
4034 (read_minibuf): Fix initial comment.
4035 (Ftry_completion, Fall_completions, Ftest_completion): Bind
4036 case-fold-search to the value of completion-ignore-case when
4037 checking completion-regexp-list.
4038 (Fdisplay_completion_list): Make it handle arguments that are
4039 symbols. Doc fix.
4040
4041 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4042
4043 * xterm.h: Add declaration of free_frame_menubar.
4044
4045 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
4046 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
4047 (Fx_change_window_property): Add declaration of parameters type and
4048 format. Remove unused variable cons.
4049
4050 * xselect.c: Include stdio,h.
4051
4052 2004-02-05 Kenichi Handa <handa@m17n.org>
4053
4054 * fns.c (Fset_char_table_range): Fix previous change.
4055
4056 * buffer.c (Fset_buffer_multibyte): Fix docstring.
4057
4058 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
4059
4060 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
4061
4062 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
4063
4064 * keymap.c (Vmouse_events): Rename from Vmenu_events.
4065 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
4066
4067 2004-02-04 Kenichi Handa <handa@m17n.org>
4068
4069 * fns.c (Fset_char_table_range): Handle charsets ascii,
4070 eight-bit-control, and eight-bit-graphic correctly.
4071
4072 2004-02-03 Jason Rumney <jasonr@gnu.org>
4073
4074 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
4075
4076 * w32fns.c (x_to_w32_font): Likewise.
4077
4078 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4079
4080 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
4081 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
4082
4083 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
4084 ClientMessages.
4085
4086 * xselect.c: Include termhooks.h and X11/Xproto.h
4087 (x_check_property_data, x_fill_property_data)
4088 (x_property_data_to_lisp, mouse_position_for_drop)
4089 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
4090 (Fx_send_client_event): Move here from xfns.c.
4091 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
4092
4093 * xfns.c (x-send-client-message): Move to xselect.c
4094 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
4095 OUTER_P.
4096 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
4097 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
4098 if vector_ret_p is true.
4099 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
4100
4101 2004-02-02 Eli Zaretskii <eliz@gnu.org>
4102
4103 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
4104 basename of FILE relative to it, not FILE itself.
4105
4106 2004-02-02 Kenichi Handa <handa@m17n.org>
4107
4108 * coding.c (coding_restore_composition): Check invalid
4109 composition data more rigidly.
4110
4111 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
4112
4113 * fileio.c (Fread_file_name_internal): Correctly handle the case
4114 where insert-default-directory is nil.
4115 (Fread_file_name): Always return an empty string if the user exits
4116 with an empty minibuffer. Adapt the docstring accordingly.
4117 (syms_of_fileio): Adapt the docstring of insert-default-directory
4118 to the change in Fread_file_name.
4119
4120 2004-01-29 Eli Zaretskii <eliz@gnu.org>
4121
4122 * alloca.c [!alloca]: Fix the prototype for xfree.
4123
4124 2004-01-29 Kenichi Handa <handa@m17n.org>
4125
4126 * fns.c (string_char_to_byte): Optimize for ASCII only string.
4127 (string_byte_to_char): Likewise.
4128
4129 2004-01-28 Peter Runestig <peter@runestig.com>
4130
4131 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
4132
4133 2004-01-27 Steven Tamm <steventamm@mac.com>
4134
4135 * unexmacosx.c (unexec_copy): Do not copy more than was
4136 requested to prevent overwriting during unexec.
4137
4138 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4139
4140 * process.c (sigchld_handler): Add comment about not calling malloc.
4141
4142 * process.h: Add extern to synch_process_termsig.
4143
4144 2004-01-27 Steven Tamm <steventamm@mac.com>
4145
4146 * macterm.c (make_mac_frame, make_mac_terminal_frame):
4147 Move setting of scroll bars from make_mac_frame to
4148 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
4149
4150 2004-01-26 Richard M. Stallman <rms@gnu.org>
4151
4152 * search.c (Freplace_match): Handle nonexistent
4153 back-references properly.
4154
4155 2004-01-03 Richard M. Stallman <rms@gnu.org>
4156
4157 * window.c (decode_any_window): New function.
4158 (Fwindow_height, Fwindow_width, Fwindow_edges)
4159 (Fwindow_pixel_edges, Fwindow_inside_edges)
4160 (Fwindow_inside_pixel_edges): Use decode_any_window.
4161
4162 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4163
4164 * process.h: synch_process_termsig new variable.
4165
4166 * callproc.c: Define synch_process_termsig.
4167 (Fcall_process): Initiate synch_process_termsig to zero and
4168 check if non-zero and get signal name after subprocess has ended.
4169
4170 * process.c (sigchld_handler): Set synch_process_termsig
4171 if terminated by a signal. synch_process_death setting removed.
4172
4173 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
4174
4175 2004-01-26 Andreas Schwab <schwab@suse.de>
4176
4177 * print.c (print_preprocess): Declare size as EMACS_INT to not
4178 lose bits.
4179 (print_object): Likewise.
4180 * alloc.c (Fpurecopy): Likewise.
4181
4182 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
4183
4184 * window.c (Fwindow_minibuffer_p): Doc fix.
4185
4186 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
4187
4188 * editfns.c (Fformat): Make both passes accept the same set of flags.
4189
4190 2004-01-23 Kenichi Handa <handa@m17n.org>
4191
4192 * fns.c (Fmd5): If OBJECT is a buffer different from the current
4193 one, set buffer to OBJECT temporarily.
4194
4195 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4196
4197 * keyboard.c (kbd_buffer_gcpro): Remove.
4198 (kbd_buffer_store_event, clear_event, Fdiscard_input)
4199 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
4200 Don't initialize and/or maintain the variable any more. It was made
4201 redundant by my commit of 2003-06-15.
4202
4203 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
4204
4205 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4206
4207 * lisp.h: Add undef DECL_ALIGN.
4208
4209 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4210
4211 * process.c (wait_reading_process_input) [SYNC_INPUT]:
4212 Check interrupt_input_pending explicitly.
4213
4214 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
4215
4216 * keyboard.c (handle_async_input): New fun,
4217 extracted from input_available_signal.
4218 (input_available_signal, reinvoke_input_signal): Use it.
4219
4220 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
4221
4222 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
4223
4224 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
4225 manipulation macros for when tags are in the lower bits.
4226 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
4227 (DECL_ALIGN): New macro.
4228 (DEFUN): Use it.
4229
4230 * lisp.h [ENABLE_CHECKING]: Don't force union type.
4231
4232 * s/darwin.h (__attribute__): Remove outdated workaround.
4233
4234 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
4235
4236 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
4237 Don't check range of malloc address.
4238 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
4239
4240 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
4241
4242 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
4243
4244 2004-01-19 Kenichi Handa <handa@m17n.org>
4245
4246 * fontset.c (fontset_font_pattern): Fix previous change.
4247
4248 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
4249
4250 * xdisp.c (Voverflow_newline_into_fringe)
4251 (move_it_in_display_line_to, redisplay_internal)
4252 (update_window_fringes, redisplay_window, display_line, window):
4253 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
4254 that it compiles without a window-system.
4255 * dispnew.c (direct_output_for_insert, update_window): Likewise.
4256
4257 2004-01-16 Kim F. Storm <storm@cua.dk>
4258
4259 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
4260
4261 * buffer.c (init_buffer_once): Set buffer_defaults and
4262 buffer_local_flags for indicate_buffer_boundaries.
4263 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
4264 default- variable for it.
4265
4266 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
4267 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
4268 New members exact_window_width_line_p and cursor_in_fringe_p for
4269 overflowing newlines into right fringe.
4270 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
4271 and indicate_bottom_line_p for buffer boundaries and scrolling.
4272 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
4273 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
4274 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
4275 and HOLLOW_SQUARE_BITMAP.
4276 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
4277 Add prototypes.
4278
4279 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
4280 instead of related indicator fields.
4281 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
4282 (direct_output_for_insert): Handle exact width lines like
4283 contined lines. Call update_window_fringes.
4284 (update_window): Call update_window_fringes.
4285 (scrolling_window): Don't skip desired rows with changed bitmaps.
4286 Check if fringe bitmaps changes when assigning scrolled rows.
4287
4288 * xdisp.c (Voverflow_newline_into_fringe): New variable.
4289 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
4290 (move_it_in_display_line_to): Overflow newline into fringe for
4291 rows that are exactly as wide as the window.
4292 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
4293 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
4294 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
4295 (fringe_bitmaps): Add new bitmaps.
4296 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
4297 Select proper bitmap for cursor in fringe when appropriate.
4298 Handle alignment of bitmap to top or bottom of row.
4299 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
4300 done by update_window_fringes.
4301 (update_window_fringes, draw_window_fringes): New functions.
4302 (redisplay_internal): Call update_window_fringes in case only
4303 cursor row is updated.
4304 (redisplay_window): Call update_window_fringes.
4305 Explicitly call draw_window_fringes if redisplay was done using
4306 the current matrix or the overlay arrow is in the window.
4307 (try_window_reusing_current_matrix): Mark scrolled rows for
4308 fringe update (to update buffer-boundaries / scrolling icons).
4309 (find_last_unchanged_at_beg_row): Handle exact width lines line
4310 continued lines.
4311 (display_line): Overflow newline into fringe for rows that are
4312 exactly as wide as the window. Don't append space for newline
4313 in this case.
4314 (notice_overwritten_cursor): Explicitly clear cursor bitmap
4315 in fringe as if it had been overwritten.
4316 (erase_phys_cursor): Erase cursor bitmap in fringe.
4317 (syms_of_xdisp): Mark show-trailing-whitespace and
4318 void-text-area-pointer as user options.
4319 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
4320
4321 * xterm.c (x_update_window_end): Call draw_window_fringes.
4322 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4323 in row instead of actually drawing fringe bitmaps.
4324 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4325 (x_draw_window_cursor): Draw cursor in fringe.
4326
4327 * w32term.c (x_update_window_end): Call draw_window_fringes.
4328 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4329 in row instead of actually drawing fringe bitmaps.
4330 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4331 (w32_draw_window_cursor): Draw cursor in fringe.
4332
4333 * macterm.c (x_update_window_end): Call draw_window_fringes.
4334 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4335 in row instead of actually drawing fringe bitmaps.
4336 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4337 (mac_draw_window_cursor): Draw cursor in fringe.
4338
4339 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4340
4341 * xterm.c (handle_one_xevent): Don't handle characters that are part
4342 of an old style (XLookupString) compose sequence.
4343
4344 2004-01-15 Kenichi Handa <handa@m17n.org>
4345
4346 * search.c (Freplace_match): Use make_multibyte_string or
4347 make_unibyte_string according to the buffer multibyteness.
4348
4349 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
4350
4351 * alloc.c (struct interval_block, struct string_block)
4352 (struct symbol_block, struct marker_block, live_string_p)
4353 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
4354 Better preserve alignment for objects in blocks.
4355 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
4356
4357 * lread.c (defvar_per_buffer): Remove dead declaration.
4358
4359 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
4360 space size.
4361
4362 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4363
4364 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
4365 if a key press should pop down. Only pop down if a key is pressed
4366 outside the menu/dialog.
4367 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
4368 popup_get_selection.
4369 (create_and_show_dialog): Pass 1 for down_on_keypress to
4370 popup_get_selection.
4371
4372 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4373
4374 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
4375 BLOCK/UNBLOCK_INPUT.
4376
4377 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4378
4379 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
4380 specified.
4381
4382 2004-01-08 Kenichi Handa <handa@m17n.org>
4383
4384 * editfns.c (Fformat): Fix '&' to '&&'.
4385
4386 2004-01-08 Andreas Schwab <schwab@suse.de>
4387
4388 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
4389 size if PSEUDOVECTOR_FLAG is set.
4390
4391 2004-01-07 Kenichi Handa <handa@m17n.org>
4392
4393 * charset.c (Fdeclare_equiv_charset): Fix docstring.
4394
4395 * fontset.c (fontset_ref_via_base): Fix previous change.
4396
4397 2004-01-07 Kim F. Storm <storm@cua.dk>
4398
4399 * process.c (read_process_output): Only activate adaptive
4400 buffering if we read less than 256 bytes at a time.
4401
4402 2004-01-06 Kim F. Storm <storm@cua.dk>
4403
4404 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
4405 object and image object. Return glyph width and height.
4406 (mode_line_string, marginal_area_string): Ditto.
4407
4408 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4409 (marginal_area_string): Fix prototypes.
4410
4411 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
4412 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
4413 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
4414
4415 * keyboard.c (make_lispy_position): Use modified mode_line_string,
4416 buffer_posn_from_coords, and marginal_area_string functions to
4417 include both string object and image object in the lispy position.
4418 Also add actual glyph width and height to position.
4419 (read_key_sequence): Use real buffer position from mouse
4420 event to find keymap property even when click is in marginal area.
4421
4422 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
4423 mode_line_string and marginal_area_string functions to handle
4424 both string object and image object properties.
4425
4426 2004-01-06 Andreas Schwab <schwab@suse.de>
4427
4428 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
4429 character.
4430
4431 2004-01-02 Andreas Schwab <schwab@suse.de>
4432
4433 * macterm.c (emacs_options, x_initialized, same_x_server):
4434 Remove unused (and duplicated) definitions.
4435
4436 2004-01-02 Kim F. Storm <storm@cua.dk>
4437
4438 * process.h (struct Lisp_Process): New members for adaptive read
4439 buffering: adaptive_read_buffering, read_output_delay, and
4440 read_output_skip.
4441
4442 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
4443 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
4444 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
4445 (process_output_delay_count, process_output_skip): New vars.
4446 (Vprocess_adaptive_read_buffering): New variable.
4447 (make_process): Initialize adaptive read buffering members.
4448 (Fstart_process): Set adaptive_read_buffering member.
4449 (deactivate_process): Cleanup adaptive read buffering.
4450 (wait_reading_process_input): Temporarily omit delayed
4451 subprocesses from the set of file descriptors to read from;
4452 adjust the select timeout if we skipped any subprocesses.
4453 (read_process_output): Increase adaptive read buffering delay if
4454 we read less than a full buffer; reduce delay when we read a
4455 full buffer.
4456 (send_process): Simplify using local Lisp_Process var.
4457 Reset adaptive read buffering delay after write.
4458 (init_process): Initialize process_output_delay_count and
4459 process_output_skip.
4460 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
4461
4462 2004-01-01 Jason Rumney <jasonr@gnu.org>
4463
4464 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
4465
4466 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
4467
4468 * print.c (Ferror_message_string): Add hyperlink in the docstring
4469 to the definition of `signal' in the Elisp manual.
4470 * eval.c (Fsignal): Ditto.
4471
4472 2003-12-29 James Clark <jjc@jclark.com>
4473
4474 * fns.c (internal_equal): Return t for two NaN arguments.
4475
4476 2003-12-29 Richard M. Stallman <rms@gnu.org>
4477
4478 * data.c (store_symval_forwarding): Handle setting
4479 default-fill-column, etc., by changing the value in
4480 buffers that use the default.
4481
4482 * minibuf.c (Fset_minibuffer_window): Doc fix.
4483
4484 * fileio.c (choose_write_coding_system): Ignore auto_saving
4485 if using the visited file for auto saves.
4486 (Fwrite_region): Don't update SAVE_MODIFF
4487 if auto-saving in visited file.
4488
4489 2003-12-29 Kenichi Handa <handa@m17n.org>
4490
4491 * dispextern.h (face_font_available_p): Extern it.
4492
4493 * fontset.c (Voverriding_fontspec_alist): New variable.
4494 (lookup_overriding_fontspec): New function.
4495 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
4496 (fontset_font_pattern): Likewise.
4497 (regulalize_fontname): New function.
4498 (Fset_fontset_font): Call regulalize_fontname.
4499 (Fset_overriding_fontspec_internal): New function.
4500 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
4501 Defsubr Sset_overriding_fontspec_internal.
4502
4503 * xfaces.c (face_font_available_p): New function.
4504
4505 2003-12-28 Richard M. Stallman <rms@gnu.org>
4506
4507 * buffer.c (Fother_buffer): Don't crash if BUF is nil
4508 or if its name is nil.
4509
4510 * buffer.c (Fkill_buffer): Don't delete auto-save file
4511 if it's the same as the visited file.
4512
4513 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
4514
4515 * coding.c (Fcheck_coding_system): Doc fix.
4516
4517 2003-12-28 Kim F. Storm <storm@cua.dk>
4518
4519 * Makefile.in (eval.o): Depend on dispextern.h.
4520
4521 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
4522 image glyph using image's ascent.
4523 (mode_line_string): Return image glyph as object clicked on.
4524 Adjust y0 for image glyph using image's ascent.
4525
4526 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
4527 (struct glyph): New members, ascent and descent. Used to save
4528 this glyph's ascent and descent, instead of having.
4529 (struct glyph): Declare member face_id using FACE_ID_BITS.
4530 (find_hot_spot): Add prototype.
4531
4532 * keyboard.c (Qimage): Remove extern (now in lisp.h).
4533 (QCmap): Declare extern.
4534 (make_lispy_position): When position is inside image hot-spot,
4535 use hot-spot element's id as posn element.
4536
4537 * lisp.h (IMAGEP): New macro to test for image object type.
4538 (Qimage): Declare extern.
4539
4540 * macfns.c (Qimage): Remove extern (now in lisp.h).
4541 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4542
4543 * macterm.c (Qface, Qmouse_face): Remove unused externs.
4544
4545 * w32fns.c (Qimage): Remove extern (now in lisp.h).
4546 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4547
4548 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
4549
4550 * w32term.c (Qface, Qmouse_face): Remove unused externs.
4551
4552 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
4553 pointer types.
4554 (Qrelative_width, Qalign_to): Remove unused variables.
4555 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
4556 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
4557 image maps.
4558 (x_y_to_hpos_vpos): Return glyph relative coordinates through
4559 new dx and dy args.
4560 Remove buffer_only_p arg (always 0). Simplify code accordingly.
4561 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
4562 than row's ascent and height, to get sensible height on tall rows.
4563 (build_desired_tool_bar_string): Remove Qimage extern.
4564 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
4565 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
4566 image glyph is alone on the last line.
4567 (append_glyph, append_composite_glyph, produce_image_glyph)
4568 (append_stretch_glyph): Set glyph's ascent and descent.
4569 (on_hot_spot_p): New function to check if position is inside an
4570 rectangular, circular, or polygon-shaped image hot-spot,
4571 (find_hot_spot): New function to search for image hot-spot.
4572 (Flookup_image_map): New defun to search for image hot-spot.
4573 (define_frame_cursor1): New aux function to determine frame pointer.
4574 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4575 Handle `pointer' text property and :pointer image property to
4576 control frame pointer shape. Detect image hot-spots for pointer
4577 and help_echo properties. Use define_frame_cursor1.
4578 (note_mouse_highlight): Use Vvoid_text_area_pointer.
4579 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
4580 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
4581
4582 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
4583
4584 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
4585 (Qimage): Remove extern (now in lisp.h).
4586 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4587
4588 * xmenu.c (show_help_event): Remove unused code.
4589
4590 * xterm.c (Qface, Qmouse_face): Remove unused externs.
4591 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
4592 row's ascent and descent, to get a sensible height on tall rows.
4593
4594 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
4595
4596 * minibuf.c (Fcompleting_read): Undo previous change.
4597
4598 2003-12-25 Lars Hansen <larsh@math.ku.dk>
4599
4600 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
4601 Arguments GCPRO'ed in call to file name handler.
4602
4603 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
4604
4605 * termcap.c (tgetst1): Scan for "%pN"; if all
4606 N are continuous in [1,9], remove all "%pN".
4607
4608 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4609
4610 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
4611
4612 * xfaces.c (lface_fully_specified_p): Take into account that
4613 MAC OS always have unspecified stipple.
4614
4615 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4616
4617 * tparam.c (tparam1): Add handling for `%pN', which
4618 means use param N for the next substitution.
4619
4620 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4621
4622 * xfaces.c (Fcolor_gray_p): Fix omission bug:
4623 In case `frame' is nil, consult the selected frame.
4624 (Fcolor_supported_p): Likewise.
4625
4626 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
4627
4628 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
4629 Doc fixes.
4630
4631 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
4632 and an integer. Adapt the introductory comment accordingly.
4633 (Fread_from_minibuffer): Delete code moved into read_minibuf.
4634 Doc fix.
4635 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
4636 read_minibuf.
4637 (Fcompleting_read): Delete code moved into read_minibuf.
4638 (Ftest_completion): Make it handle obarrays and hash tables correctly.
4639
4640 2003-12-03 Kenichi Handa <handa@m17n.org>
4641
4642 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
4643 encoding sequence.
4644
4645 2003-12-01 Kenichi Handa <handa@m17n.org>
4646
4647 * composite.c (syms_of_composite): Don't make the compostion hash
4648 table week.
4649
4650 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
4651
4652 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
4653 * textprop.c (Fget_char_property_and_overlay): New function.
4654 (syms_of_textprop): Defsubr it.
4655
4656 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4657
4658 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
4659 to compile on terminal configuration.
4660
4661 * fileio.c (Fread_file_name): Check use_file_dialog also before
4662 calling Fx_file_dialog.
4663
4664 * fns.c: use_file_dialog: New variable.
4665 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
4666
4667 2003-11-29 Kim F. Storm <storm@cua.dk>
4668
4669 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
4670 (syms_of_msdos): Don't intern and staticpro them.
4671
4672 2003-11-27 Kim F. Storm <storm@cua.dk>
4673
4674 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
4675 coordinates relative to glyph at posn. If glyph is an image,
4676 return that as object at posn. Callers changed.
4677 (mode_line_string, marginal_area_string): Calculate and return
4678 pixel coordinates relative to glyph. Callers changed.
4679
4680 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4681 (marginal_area_string): Fix prototypes.
4682 (window_box_left_offset, window_box_right_offset): Add prototypes.
4683
4684 * frame.h (get_specified_cursor_type, get_window_cursor_type):
4685 Remove prototypes.
4686
4687 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
4688
4689 * keyboard.c (make_lispy_position): Add x and y coordinates
4690 relative to the current glyph as 7th element of position.
4691 If glyph is an image, return it in the object element.
4692 (read_key_sequence): Skip checks for keymap property in cases
4693 where POSN_STRING is not a string (e.g. an image).
4694
4695 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4696 (Vshow_text_cursor_in_void): New variable.
4697 (glyph_to_pixel_coords): Don't use negative hpos.
4698 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4699 (append_stretch_glyph): Change ascent arg to be actual value
4700 in pixels rather than ratio to height. Callers changed.
4701 (calc_pixel_width_or_height): New aux function, implementing
4702 pixel based artihmetic for glyph widths and heights.
4703 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4704 :width, :height, :align-to, and :ascent, thus allowing these to
4705 be specified in pixels as well as multiples of characters.
4706 Don't produce stretch glyphs with zero width or height.
4707 (get_specified_cursor_type): Declare static.
4708 (get_window_cursor_type): Declare static. Add glyph arg to be
4709 able to know when cursor is on an image; always substitute
4710 hollow-box cursor for filled-box cursor on images, to avoid
4711 negative images and flicker when blinking the cursor.
4712 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4713 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4714 than vertical scroll-bar cursor in display margins.
4715 (note_mouse_highlight): Use non-text cursor rather than text
4716 cursor in fringes and over images in the text area.
4717 Use non-text cursor when mouse pointer is outside editable text,
4718 i.e. in the void after end-of-line or end-of-buffer; this was
4719 already done for W32, but is now standard for all systems --
4720 user can toggle show-text-cursor-in-void to get old behaviour.
4721 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4722 Vdisplay_pixels_per_inch.
4723
4724 2003-11-25 Andreas Schwab <schwab@suse.de>
4725
4726 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4727 EMACS_INT to not lose bits.
4728 (Ffillarray): Don't set bits beyond the size of a bool vector.
4729
4730 2003-11-25 Kim F. Storm <storm@cua.dk>
4731
4732 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4733 define this defun on systems that cannot use stderr as lvalue.
4734
4735 2003-11-24 Gerd Moellmann <gerd@gnu.org>
4736
4737 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4738 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4739 ld's default is incompatible with unexec.
4740
4741 2003-11-23 Kim F. Storm <storm@cua.dk>
4742
4743 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4744 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4745 (Fforce_window_update): New defun.
4746 (syms_of_window): Defsubr it.
4747 (Fset_window_margins, Fset_window_fringes): Doc fix.
4748
4749 * print.c (Fredirect_debugging_output): New defun.
4750 (syms_of_print): Defsubr it.
4751
4752 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4753
4754 * fns.c (Fset_char_table_parent): Doc fix.
4755
4756 2003-11-22 Kim F. Storm <storm@cua.dk>
4757
4758 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4759 for glyph clicked on, rather than (unused) pixel positions.
4760 (mode_line_string, marginal_area_string): Change X and Y args to
4761 pointers for returning actual row/column for glyph clicked on.
4762 Simplify and optimize loops.
4763
4764 * dispextern.h (mode_line_string, marginal_area_string):
4765 Update prototypes.
4766
4767 * keyboard.c (make_lispy_position): New function for generating
4768 mouse click positions from frame and pixel coordinates.
4769 Enhanced to return buffer position and actual row/column for
4770 events outside the text area using updated mode_line_string and
4771 marginal_area_string functions.
4772 Return left-fringe and right-fringe clicks as such, rather than
4773 clicks in text area.
4774 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4775 pixel_to_glyph_coords, as we never use the results.
4776 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4777 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4778 Eliminate unused code in WHEEL_EVENT handling.
4779 (make_lispy_movement): Use make_lispy_position.
4780
4781 * window.c (coordinates_in_window): Remove redundant tests.
4782 Fix returned X pixel value for left-margin.
4783
4784 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4785 mode_line_string and marginal_area_string parameters.
4786
4787 2003-11-22 Lars Hansen <larsh@math.ku.dk>
4788
4789 * w32.c (struct the_group, getgrgid): Add.
4790 * mac.c (struct my_group, getgrgid): Add.
4791
4792 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4793
4794 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4795
4796 2003-11-21 Lars Hansen <larsh@math.ku.dk>
4797
4798 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4799 include in call to file name handler. Optionally translate numeric
4800 UID and GID to strings. Update docstring.
4801 (directory_files_internal): Add parameter ID-FORMAT.
4802 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4803 include in call to file name handler and call to
4804 directory_files_internal. Update Docstring.
4805 (Fdirectory_files): Add dummy parameter in call to
4806 directory_files_internal.
4807 * lisp.h (Qinteger): Add.
4808 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4809 (Ffile_attributes): Add parameter.
4810 * data.c (Qinteger): Export.
4811
4812 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4813
4814 * fns.c (Freverse, Fnreverse): Doc fixes.
4815
4816 2003-11-19 Kim F. Storm <storm@cua.dk>
4817
4818 * xdisp.c (init_iterator): Initialize it->start to position
4819 before reseating (in case start position is invisible).
4820 (init_to_row_start): Set it->start to row-start.
4821 (redisplay_window): Accept optional_new_start if start position
4822 is invisible (in which case IT_CHARPOS overshoots PT).
4823 (display_line): Setup row->start from it->start (rather than
4824 it->current which is wrong if first char on line is invisible).
4825 When done, reseat it->start to it->current (= start of next row).
4826 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4827 is only partially visible.
4828
4829 * dispextern.h (struct it): New member start.
4830
4831 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4832
4833 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4834 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4835 of block_index outside of the macro call.
4836 (Fgarbage_collect): Remove null code.
4837
4838 * m/amdx86-64.h: Don't redefine XPNTR.
4839
4840 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4841 of VALMASK.
4842
4843 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4844 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4845 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4846
4847 * lisp.h (VALMASK): Only define for non-union type.
4848 (MARKBIT): Remove.
4849 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4850 (XTYPE): Define unconditionally.
4851 (XSETTYPE): Remove one more remnant.
4852 (EQ): Define differently for the union and non-union cases.
4853 (INTMASK): New bit mask.
4854 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4855 (GC_EQ): Delegate to EQ.
4856
4857 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4858
4859 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4860
4861 * xterm.c (x_window_to_scroll_bar): Move check of display to
4862 where window_id is compared.
4863
4864 2003-11-17 Kim F. Storm <storm@cua.dk>
4865
4866 * dispextern.h (struct it): New member first_vpos.
4867
4868 * xdisp.c (start_display): Set it->first_vpos.
4869 (try_window_id): Use first_vpos to start display in first _text_
4870 line if no reusable lines at start of window with header line.
4871
4872 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4873
4874 * w32fns.c (XPutPixel):
4875 * w32bdf.c (w32_init_bdf_font):
4876 * sunfns.c (sel_read):
4877 * process.c (Fmake_network_process):
4878 * frame.c (store_frame_param):
4879 * fontset.c (Fset_fontset_font):
4880 * emacs.c (shut_down_emacs):
4881 * ccl.c (ccl_driver): Remove period at end of error message.
4882
4883 * config.in: Regenerate.
4884
4885 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4886 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4887 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
4888 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
4889 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
4890
4891 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
4892
4893 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
4894 (XTmouse_position, handle_one_xevent): Pass Display* to
4895 x_window_to_scroll_bar.
4896 (x_window_to_scroll_bar): Take a Display* argument.
4897 Check that display for frame is equal to Display* argument.
4898 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
4899 x_display_info_for_display instead. Use Display in xev instead
4900 of GDK_DISPLAY.
4901 (x_dispatch_event): Call x_display_info_for_display.
4902 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
4903 (x_connection_closed): Call xg_display_close for GTK.
4904 (x_term_init): Call xg_display_open for additional displays.
4905 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4906 for GTK.
4907
4908 * xmenu.c (single_menu_item, mouse_position_for_popup)
4909 (x_activate_menubar): Formatting adjustments.
4910
4911 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4912 adjustments.
4913
4914 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4915 (xg_display_close, xg_create_default_cursor)
4916 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4917 handling.
4918 (xg_left_ptr_cursor): Remove.
4919 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
4920 cursor here.
4921 (xg_win_to_widget): Take Display* argument, call
4922 gdk_xid_table_lookup_for_display.
4923 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4924 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4925 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4926 in FRAME_X_DISPLAY_INFO.
4927 (xg_get_scroll_id_for_window): Take Display* argument.
4928 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
4929 (xg_initialize): Remove xg_left_ptr_cursor.
4930
4931 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4932 Display* argument also. Declare xg_display_open,
4933 xg_display_close, xg_create_default_cursor.
4934
4935 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4936
4937 * xterm.c (x_detect_focus_change): Do not change focus frame for
4938 Enter/LeaveNotify if the current focus frame has explicit focus.
4939
4940 2003-11-14 Kim F. Storm <storm@cua.dk>
4941
4942 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4943 is active and first glyph is only partially visible.
4944
4945 2003-11-13 Kenichi Handa <handa@m17n.org>
4946
4947 * xdisp.c (select_frame_for_redisplay): New function.
4948 (redisplay_internal): Record also selected_frame for
4949 unwind_redisplay. Call select_frame_for_redisplay before
4950 redrawing each frame.
4951 (unwind_redisplay): Argument changed to a cons.
4952
4953 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4954
4955 * fns.c (Fstring_to_multibyte): Doc fix.
4956
4957 2003-11-11 Kenichi Handa <handa@m17n.org>
4958
4959 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4960
4961 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4962
4963 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4964 program specified positions.
4965
4966 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4967
4968 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4969
4970 2003-11-08 Kenichi Handa <handa@m17n.org>
4971
4972 * Makefile.in (lisp): Add kannada.el.
4973 (shortlisp): Likewise.
4974
4975 2003-11-07 Kenichi Handa <handa@m17n.org>
4976
4977 * coding.c (coding_allocate_composition_data):
4978 Reset coding->composing to COMPOSITION_NO.
4979 (coding_restore_composition): Detect invalid composition data.
4980 Give Fstring and Fvector a Lispy integer, not C int.
4981
4982 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4983
4984 * floatfns.c (Flogb): Don't use VALMASK.
4985
4986 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4987 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4988
4989 * lisp.h (XINT): Move the cast to clarify what is going on.
4990 (GCTYPEMASK, XSETTYPE): Remove.
4991 (XGCTYPE): Make it an alias of XTYPE.
4992
4993 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4994
4995 * xterm.c (x_term_init): Fix formatting.
4996
4997 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4998
4999 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
5000 and xg_did_tearoff.
5001
5002 * gtkutil.c: Remove variable xg_did_tearoff.
5003 (xg_have_tear_offs): New function.
5004 (tearoff_remove): Just decrease xg_detached_menus.
5005 (tearoff_activate): Increase xg_detached_menus and call
5006 tearoff_remove when tearoff is removed.
5007 (xg_keep_popup): Remove function.
5008 (create_menus): Give add_tearoff_p as argument to recursive
5009 call to create_menus.
5010 (xg_create_widget): Use variables instead of multiple
5011 strcmp. Tell create_menus to create tear off only for
5012 menu bar menus.
5013 (xg_update_menubar): Change title for a detached menu also.
5014 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
5015 of deep_p.
5016 (xg_initialize): Initialize xg_detached_menus, remove
5017 initialization of xg_did_tearoff.
5018
5019 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
5020 xg_have_tear_offs returns non-zero.
5021 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
5022 call to xg_keep_popup.
5023
5024 2003-11-01 Andrew Choi <akochoi@shaw.ca>
5025
5026 * macterm.c (XTread_socket): Handle menubar selection and grow
5027 window only for mouseDown events.
5028
5029 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5030
5031 * xterm.c (x_term_init): For GTK part, increase x_initialized
5032 to check for more than one display. Use error instead of return 0.
5033
5034 2003-10-31 Andrew Choi <akochoi@shaw.ca>
5035
5036 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
5037 (copy_dysymtab): Call it.
5038
5039 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
5040
5041 * eval.c (Fdefvaralias): Doc fix.
5042
5043 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
5044
5045 * data.c (Fsetplist): Doc fix.
5046
5047 2003-10-14 Lute Kamstra <lute@gnu.org>
5048
5049 * window.c (Fset_window_fringes): Clarify docstring.
5050
5051 2003-10-14 Kim F. Storm <storm@cua.dk>
5052
5053 * window.c (Fset_window_margins): Simplify arg checking.
5054
5055 2003-10-13 Richard M. Stallman <rms@gnu.org>
5056
5057 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
5058 (print_partial_compiled_pattern): Replace assert with a printout.
5059 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
5060
5061 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
5062
5063 * window.c (Fset_window_margins): Allow only integers as args.
5064 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
5065 Doc fixes.
5066
5067 2003-10-13 Lute Kamstra <lute@gnu.org>
5068
5069 * window.c (Fset_window_fringes): Elaborate docstring.
5070
5071 2003-10-12 Andrew Choi <akochoi@shaw.ca>
5072
5073 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
5074
5075 * s/darwin.h (GC_MARK_STACK): Define.
5076
5077 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5078
5079 * window.c (shrink_windows): New function.
5080 (size_window): Call shrink_windows to calculate window sizes when
5081 shrinking frame with more than one window.
5082
5083 2003-10-12 Kim F. Storm <storm@cua.dk>
5084
5085 * xdisp.c (compute_fringe_widths): Doc fix.
5086
5087 2003-10-08 Kenichi Handa <handa@m17n.org>
5088
5089 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
5090
5091 2003-10-07 Kenichi Handa <handa@m17n.org>
5092
5093 * coding.c (Qcoding_system_define_form): New variable.
5094 (syms_of_coding): Intern and staticpro it.
5095 (Fcheck_coding_system): Try to autoload the definition of
5096 CODING-SYSTEM.
5097
5098 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
5099
5100 * fns.c (Frequire): Doc fix.
5101
5102 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5103
5104 * xfns.c (Fx_send_client_event): New function as a base for
5105 manipulating extended window manager hints.
5106 (Fx_send_client_event): Remove unused variable s.
5107
5108 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
5109 that function is removed.
5110
5111 * xterm.c (x_set_offset): Use move_offset_left/top instead of
5112 x/y_pixels_outer_diff.
5113 (x_check_expected_move): Calculate move_offset_left/top.
5114
5115 * xterm.h (struct x_output): New members: move_offset_top/left.
5116
5117 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
5118 call x_set_offset directly.
5119
5120 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
5121
5122 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
5123
5124 * xterm.c (x_delete_display): Free font names and font_encoder
5125 in dpyinfo->font_table.
5126
5127 * xfns.c (Fx_close_connection): Only call XFreeFont here.
5128 Move xfree of font names to x_delete_display.
5129
5130 * xterm.h (struct x_display_info): New member, wm_type.
5131 (struct x_output): New members, expected_top/left and
5132 check_expected_move.
5133
5134 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
5135 is received.
5136 (handle_one_xevent): Rename x_check_expected_move from
5137 x_check_fullscreen_move.
5138 (x_set_offset): Only add WM decoration sizes to modified_top/left
5139 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
5140 (x_check_expected_move): Rename from x_check_fullscreen_move.
5141 Removed fullscreen specific code. Use check_expected_move,
5142 expected_left/top instead. Also, set wm_type.
5143 (x_term_init): Initialize wm_type to unknown.
5144
5145 * frame.c (x_fullscreen_move): Remove addition of WM decoration
5146 sizes to move_x/y.
5147
5148 2003-10-03 Kenichi Handa <handa@m17n.org>
5149
5150 * macterm.c (x_load_font): Clear all members of FONTP before start
5151 filling them.
5152
5153 2003-10-02 Kenichi Handa <handa@m17n.org>
5154
5155 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
5156 before calling find_ccl_program_func. Call find_ccl_program_func
5157 only when fontp->font_encoder is not NULL.
5158
5159 * xterm.c (x_load_font): Clear all members of FONTP before start
5160 filling them.
5161
5162 2003-10-03 John Paul Wallington <jpw@gnu.org>
5163
5164 * keymap.c (map_keymap): Don't abort when binding is a vector.
5165
5166 2003-10-02 Jason Rumney <jasonr@gnu.org>
5167
5168 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
5169 Sync dependencies with Makefile.in.
5170 (alloca.o): Remove.
5171
5172 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
5173 filling them.
5174
5175 * w32bdf.c (w32_load_bdf_font): Likewise.
5176
5177 2003-09-30 Richard M. Stallman <rms@gnu.org>
5178
5179 * term.c (set_tty_color_mode): Calculate current_mode_spec
5180 regardless of value of VAL.
5181
5182 * intervals.c (graft_intervals_into_buffer):
5183 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
5184 Handle over_used when splitting UNDER.
5185
5186 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5187
5188 * regex.c (regex_compile): Free the stack when returning from function.
5189
5190 2003-09-28 Kenichi Handa <handa@m17n.org>
5191
5192 * fontset.c (Finternal_char_font): Change return value to
5193 cons (FONT-NAME . GLYPH-CODE).
5194
5195 2003-09-28 Eli Zaretskii <eliz@gnu.org>
5196
5197 * term.c (tty_setup_colors): Treat any negative argument as -1.
5198
5199 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
5200
5201 * process.c (send_process): Delete unused temp_buf.
5202
5203 2003-09-26 Dave Love <fx@gnu.org>
5204
5205 * xterm.c (x_bitmap_mask): Declare.
5206
5207 2003-09-25 Dave Love <fx@gnu.org>
5208
5209 * Makefile.in (fns.o): Depend on md5.h.
5210
5211 2003-09-25 Kim F. Storm <storm@cua.dk>
5212
5213 * window.c (set_window_buffer): Fix redisplay problems when
5214 switching between buffers with different display margin widths.
5215
5216 2003-09-23 Kim F. Storm <storm@cua.dk>
5217
5218 * process.c (set_socket_option): Fix :bindtodevice option.
5219 (Fset_network_process_option): Update process contact list when
5220 setting option succeeds.
5221 (Fmake_network_process): Doc fix.
5222
5223 2003-09-23 Dave Love <fx@gnu.org>
5224
5225 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
5226
5227 2003-09-22 Eli Zaretskii <eliz@gnu.org>
5228
5229 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
5230 color mode is an integer number (it could be -1).
5231
5232 2003-09-22 Richard M. Stallman <rms@gnu.org>
5233
5234 * intervals.c (graft_intervals_into_buffer): Correct the main loop
5235 in the case where OVER is longer than UNDER.
5236
5237 2003-09-22 Masatake YAMATO <jet@gyve.org>
5238
5239 * window.c (Fset_window_scroll_bars): Validate the value of
5240 `vertical_type'.
5241
5242 2003-09-21 Kim F. Storm <storm@cua.dk>
5243
5244 * frame.c (Vdefault_frame_scroll_bars): New variable.
5245 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
5246 (syms_of_frame): DEFVAR_LISP it, and initialize according to
5247 window-system default scroll bar position.
5248
5249 * window.c (Fwindow_scroll_bars): Doc fix.
5250
5251 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5252
5253 * xterm.c (x_set_offset): Take window manager decorations into account.
5254
5255 2003-09-19 Richard M. Stallman <rms@gnu.org>
5256
5257 * atimer.h: Don't include lisp.h.
5258 (P_): Define it here (as well as elsewhere).
5259
5260 * print.c (Fprin1_to_string): Move the PRINTPREPARE
5261 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
5262
5263 * data.c (Fvariable_binding_locus): New function.
5264 (syms_of_data): defsubr it.
5265 (Flocal_variable_p): Delete duplicate call to indirect_variable.
5266
5267 2003-09-18 Dave Love <fx@gnu.org>
5268
5269 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
5270
5271 * process.c (Fnetwork_interface_info): Fix type error.
5272 (Fnetwork_interface_list): Doc fix.
5273 (read_process_output, read_process_output): Delete unused var.
5274
5275 2003-09-17 Kim F. Storm <storm@cua.dk>
5276
5277 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
5278 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
5279 (Fnetwork_interface_info): Check that ifreq struct has required
5280 fields before accessing them; this requires that those fields are
5281 defined as macros, which may be too restrictive on some platforms,
5282 but it is better than failing on other platforms.
5283 (syms_of_process): Only defsubr above fns when included.
5284
5285 2003-09-17 Dave Love <fx@gnu.org>
5286
5287 * unexalpha.c: Don't include varargs.h.
5288
5289 2003-09-17 Kim F. Storm <storm@cua.dk>
5290
5291 * process.c (Fset_process_sentinel): Add sentinel to childp plist
5292 for network process.
5293 (socket_options): Add `:' prefix to option names. Add optbit field.
5294 (set_socket_option): Remove no_error arg and special handling of s < 0.
5295 Return 1<<optbit for known option, 0 for unknown.
5296 Do not interpret 0 as false for boolean option (only nil).
5297 Pass failed option and value to report_file_error.
5298 (Fset_network_process_options): Replace by Fset_network_process_option.
5299 (Fset_network_process_option): New function to set just one option.
5300 (Fmake_network_process): Allow :coding arg to be a cons.
5301 Allow :server arg to be an integer specifying backlog size.
5302 Remove :options arg, and allow options to be specified directly
5303 as :KEY, VALUE pairs. Parse these options before binding socket.
5304 As before, :reuseaddr t is default for a server process, but this
5305 can now be disabled by specifying :reuseaddr nil.
5306 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
5307 (init_process): Availability of network options is now checked with
5308 simpler syntax (featurep 'make-network-process :OPTION); use loop to
5309 setup features.
5310 (syms_of_process): Fix defsubr's for the replaced functions.
5311
5312 2003-09-16 Dave Love <fx@gnu.org>
5313
5314 * Makefile.in: Depend on coding.h.
5315
5316 2003-09-14 Kim F. Storm <storm@cua.dk>
5317
5318 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
5319 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
5320 (syms_of_process): Defsubr them.
5321
5322 * config.in: Regenerate.
5323
5324 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5325
5326 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
5327 * m/news-r6.h (XUNMARK): Remove.
5328 * m/mips.h (XUNMARK): Remove.
5329 * m/mips-siemens.h (XUNMARK): Remove.
5330 * m/iris4d.h (XUNMARK): Remove.
5331 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
5332
5333 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5334
5335 * lisp.h (VALBITS): Don't remove 1 for the markbit.
5336 (union Lisp_Object): Use unsigned int for types. Remove markbit.
5337 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
5338 (XTYPE): Use unsigned right-shift.
5339 (XMARKBIT, XMARK, XUNMARK): Remove.
5340
5341 * alloc.c (init_intervals, init_symbol, init_marker):
5342 Don't preallocate anything.
5343 (Fgarbage_collect, mark_object): Ignore the markbit.
5344
5345 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
5346
5347 2003-09-08 Lute Kamstra <lute@gnu.org>
5348
5349 * xdisp.c (pint2hrstr): New function.
5350 (decode_mode_spec): Add `%i' and `%I' specs.
5351 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
5352 for `mode-line-format'.
5353
5354 2003-09-07 Andreas Schwab <schwab@suse.de>
5355
5356 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
5357 avoid warning.
5358
5359 2003-09-07 Eli Zaretskii <eliz@gnu.org>
5360
5361 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
5362
5363 2003-09-03 Kim F. Storm <storm@cua.dk>
5364
5365 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
5366 change (superseded by 2002-08-30 change); the default blink-off
5367 cursor is now again "no cursor".
5368
5369 2003-09-01 Jason Rumney <jasonr@gnu.org>
5370
5371 * makefile.w32-in (alloca.o): Remove.
5372 (coding.o): Depend on intervals.h
5373 (emacs.o, bytecode.o): Depend on window.h
5374
5375 2003-09-01 Dave Love <fx@gnu.org>
5376
5377 * Makefile.in (alloca.o): Remove commands.
5378 (coding.o): Depend on intervals.h composite.h window.h.
5379 (emacs.o): Depend on window.h keyboard.h keymap.h.
5380 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
5381 (bytecode.o): Depend on window.h.
5382
5383 2003-08-31 Jason Rumney <jasonr@gnu.org>
5384
5385 * w32term.c (w32_per_char_metric): Allow cached metrics to be
5386 returned even when font_type is unknown.
5387
5388 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
5389
5390 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5391
5392 * xterm.c (x_term_init): Initialize new fields in x_display_info.
5393
5394 * xterm.h (struct x_display_info): Add red/green/blue_bits and
5395 *_offset.
5396
5397 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
5398 calculate pixel value.
5399
5400 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
5401
5402 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
5403 Don't tell redisplay display is accurate when it's actually been
5404 paused for pending input.
5405
5406 2003-08-29 Richard M. Stallman <rms@gnu.org>
5407
5408 * dispnew.c (adjust_glyph_matrix): Call window_box
5409 whenever W is nonzero.
5410
5411 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5412 (Fkill_local_variable, Fmake_variable_frame_local)
5413 (Flocal_variable_p, Flocal_variable_if_set_p):
5414 Use indirect_variable to trace thru variable aliases.
5415
5416 * config.in: Updated.
5417
5418 * callint.c (Fcall_interactively): Save and restore
5419 Vthis_command, Vthis_original_command, real_this_command,
5420 and current_kboard->Vlast_command.
5421
5422 * abbrev.c (Fexpand_abbrev): Insert before deleting.
5423
5424 2003-08-29 Gerd Moellmann <gerd@gnu.org>
5425
5426 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
5427
5428 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
5429
5430 * coding.c (decode_coding_iso2022): Initialize local variable c2.
5431 (decode_coding_sjis_big5): Likewise.
5432
5433 2003-08-27 Jason Rumney <jasonr@gnu.org>
5434
5435 * w32.c (sys_pipe): Protect against file descriptor overflow.
5436
5437 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
5438
5439 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
5440
5441 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
5442
5443 * xfns.c (Vgtk_version_string): New variable.
5444 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
5445
5446 2003-08-24 Eli Zaretskii <eliz@gnu.org>
5447
5448 * term.c (term_init): Remove `const' from buffer_size's declaration.
5449
5450 * Makefile.in (msdos.o): Depend on intervals.h.
5451
5452 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5453
5454 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5455
5456 * xterm.h (struct x_display_info): New fields: client_leader_window
5457 and Xatom_wm_client_leader.
5458
5459 * xterm.c (x_initialize): Move call to x_session_initialize to ...
5460 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
5461
5462 * xsmfns.c (create_client_leader_window): New function.
5463 (x_session_initialize): Call create_client_leader_window, take
5464 dpyinfo as argument.
5465
5466 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
5467
5468 * Makefile.in (xsmfns.o): Add more depenedencies.
5469
5470 2003-08-21 Dave Love <fx@gnu.org>
5471
5472 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
5473
5474 2003-08-21 Kenichi Handa <handa@m17n.org>
5475
5476 * term.c (term_init): Fix previous change; don't rely on the
5477 length of `buffer' if TERMINFO is defined.
5478
5479 2003-08-20 Dave Love <fx@gnu.org>
5480
5481 * atimer.h: Include lisp.h.
5482
5483 * lisp.h (EMACS_LISP_H): New.
5484 (popup_activated_flag): Don't declare.
5485
5486 * alloca.c: Some merging with gnulib. Change logic and doc
5487 concerning (x)malloc/(x)free -- no longer Emacs-specific.
5488 [DO_BLOCK_INPUT]: Don't include lisp.h.
5489 (xmalloc, xfree): Declare.
5490 (malloc): Don't declare.
5491
5492 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
5493 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
5494 atimer.h, blockinput.h.
5495
5496 * alloc.c (lisp_align_malloc): Change type of `aligned'.
5497
5498 * alloca.s: Removed.
5499
5500 2003-08-19 Gerd Moellmann <gerd@gnu.org>
5501
5502 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
5503 use -lncurses.
5504
5505 * term.c (term_init): Use a buffer of size 4096 for tgetent since
5506 FreeBSD returns something longer than 2044. Abort if the end of
5507 the buffer is overwritten.
5508
5509 2003-08-19 Miles Bader <miles@gnu.org>
5510
5511 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
5512
5513 2003-08-19 Gerd Moellmann <gerd@gnu.org>
5514
5515 * alloc.c (lisp_align_malloc): Check for memory full when
5516 allocating ablocks, which also avoids freeing a pointer into an
5517 ablocks structure.
5518
5519 * puresize.h (BASE_PURESIZE): Increase to 1100000.
5520
5521 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
5522
5523 2003-08-16 Richard M. Stallman <rms@gnu.org>
5524
5525 * editfns.c (Fencode_time): Doc fix.
5526
5527 2003-08-16 David Ponce <david@dponce.com>
5528
5529 * fileio.c (Fwrite_region): Fix conditional expression to issue
5530 the right message.
5531
5532 2003-08-16 Juri Linkov <juri@jurta.org>
5533
5534 * syntax.c (Fforward_word): Argument changed to optional.
5535 Set default value to 1.
5536
5537 2003-08-15 Kenichi Handa <handa@m17n.org>
5538
5539 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
5540 what autoscaled.
5541 (best_matching_font): Once we find a better scalable font, set
5542 non_scalable_has_exact_height_p to 1.
5543 (try_font_list): Call try_alternative_families to try any family
5544 with the given registry.
5545
5546 2003-08-09 Andreas Schwab <schwab@suse.de>
5547
5548 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
5549
5550 * print.c (print_string): Fix printing of multibyte string with
5551 nontrivial printcharfun.
5552
5553 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5554
5555 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
5556
5557 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
5558
5559 2003-07-31 Kenichi Handa <handa@m17n.org>
5560
5561 * process.c (read_process_output): Return the actually read bytes
5562 instead of the result of decoding.
5563
5564 2003-07-31 Kenichi Handa <handa@m17n.org>
5565
5566 * xterm.h (struct x_bitmap_record): New member have_mask.
5567
5568 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
5569 to 0.
5570 (x_create_bitmap_from_file): Likewise.
5571 (x_destroy_bitmap): Check have_mask member before freeing a mask.
5572 (x_destroy_all_bitmaps): Likewise.
5573 (x_create_bitmap_mask): Set have_mask member to 1.
5574
5575 2003-07-30 Richard M. Stallman <rms@gnu.org>
5576
5577 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
5578
5579 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5580
5581 * gtkutil.c (xg_mark_data): Update calls to mark_object.
5582
5583 2003-07-29 Richard M. Stallman <rms@gnu.org>
5584
5585 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
5586 Conditionalize XIM code on HAVE_XIM.
5587
5588 * fns.c (Fclear_string): New function.
5589 (syms_of_fns): defsubr it.
5590
5591 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5592
5593 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
5594
5595 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
5596
5597 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
5598
5599 * buffer.c (delete_all_overlays): New function.
5600 * buffer.h (delete_all_overlays): Declare.
5601 * coding.c (run_pre_post_conversion_on_str):
5602 * print.c (temp_output_buffer_setup):
5603 * fileio.c (Finsert_file_contents):
5604 * minibuf.c (get_minibuffer): Use it.
5605
5606 2003-07-22 Andrew Choi <akochoi@shaw.ca>
5607
5608 * unexmacosx.c (unexec_regions_sort_compare):
5609 (unexec_regions_merge): New functions. Sort and merge unexec
5610 regions before dumping them.
5611
5612 2003-07-22 Dave Love <fx@gnu.org>
5613
5614 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
5615
5616 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
5617
5618 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
5619 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
5620 MARKBIT as the gcmarkbit for strings.
5621
5622 2003-07-21 Richard M. Stallman <rms@gnu.org>
5623
5624 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
5625
5626 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
5627 (syms_of_fns): Corresponding change.
5628
5629 * alloc.c (syms_of_alloc): Doc fixes.
5630
5631 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
5632
5633 * s/netbsd.h: Use -Wl syntax.
5634
5635 2003-07-17 Richard M. Stallman <rms@gnu.org>
5636
5637 * xterm.c (xim_initialize): Redo 6/24 change.
5638
5639 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
5640
5641 * buffer.c (copy_overlays): Use EMACS_INT for positions.
5642 (Fswitch_to_buffer): Don't signal an error when switching to the same
5643 buffer in a dedicated window.
5644
5645 * alloc.c: Use bitmaps for cons, as was done for floats.
5646 (init_float, init_cons): Let the normal code allocate the first block.
5647 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
5648 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
5649 New macros.
5650 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
5651 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
5652 (live_cons_p): Check the pointer is not past the `conses' array.
5653 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
5654 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
5655 (survives_gc_p): Use CONS_MARKED_P and simplify.
5656 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
5657
5658 2003-07-13 Paul Eggert <eggert@twinsun.com>
5659
5660 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
5661 puts it into BSS instead, at least on Solaris 8 and 9.
5662 This is a valid optimization, and it may occur on other platforms,
5663 so Emacs should not assume that initializing a static variable to
5664 zero puts it into data.
5665 * alloc.c (pure, staticvec):
5666 Initialize these arrays to nonzero, so that they're not
5667 put into BSS by that optimization.
5668
5669 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
5670
5671 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
5672 (lisp_align_malloc): Use posix_memalign is available.
5673 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
5674 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
5675 for consistency. Update users.
5676
5677 2003-07-13 Richard M. Stallman <rms@gnu.org>
5678
5679 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
5680
5681 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
5682
5683 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
5684 and use the Gtk+ function gtk_window_icon_from_file if available.
5685
5686 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
5687 handle mask of bitmaps.
5688 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
5689 mask property.
5690 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
5691
5692 * xterm.h (xg_set_icon): New function.
5693
5694 2003-07-12 Paul Eggert <eggert@twinsun.com>
5695
5696 * unexelf.c (unexec): Consider a section to precede the .bss
5697 section if its addresses overlap that of .bss.
5698
5699 2003-07-12 Richard M. Stallman <rms@gnu.org>
5700
5701 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5702
5703 * config.in (HAVE_CRTIN): Add #undef.
5704 (INLINE): Really inline only if OPTIMIZE is defined.
5705
5706 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5707 END_FILES_1.
5708 (START_FILES_1, END_FILES_1): New macros (conditional).
5709 (LD_SWITCH_SYSTEM_TEMACS): Define.
5710
5711 * s/openbsd.h: Don't include bsd4-3.h.
5712 (TERMINFO): Define.
5713 (LIBS_TERMCAP): Define.
5714 (LD_SWITCH_SYSTEM): Define (two definitions).
5715
5716 * xfns.c: Include libpng/png.h instead of png.h.
5717
5718 2003-07-11 Andreas Schwab <schwab@suse.de>
5719
5720 * buffer.c (modify_overlay): Update prototype.
5721 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5722 Likewise.
5723
5724 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5725
5726 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5727 (struct interval): Move to intervals.h.
5728 (struct Lisp_Marker): Use EMACS_INT for position info.
5729 (forward_point): Remove prototype of defunct function.
5730 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5731 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5732 (syms_of_textprop, set_text_properties): Remove prototypes that are
5733 already in intervals.h.
5734
5735 * intervals.h (struct interval): Move from lisp.h.
5736 Use EMACS_INT for position and size info.
5737
5738 * coding.c: Include intervals.h for Fset_text_properties.
5739
5740 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5741 position and length information.
5742
5743 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5744
5745 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5746 position and length information.
5747
5748 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5749
5750 Change overlays_after and overlays_before so the overlays themselves
5751 are linked into lists, rather than using cons cells. After all each
5752 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5753 Lisp_Overlay for free and save up one cons cell per overlay (not
5754 to mention one indirection when traversing the list of overlay).
5755
5756 * lisp.h (struct Lisp_Overlay): New field `next'.
5757
5758 * buffer.h (struct buffer): Change overlays_before and overlays_after
5759 from Lisp lists of overlays to pointers to overlays.
5760
5761 * buffer.c (overlay_strings, recenter_overlay_lists):
5762 Fix typo in eassert in last commit.
5763 (unchain_overlay): New function.
5764 (add_overlay_mod_hooklist): Use AREF.
5765 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5766 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5767 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5768 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5769 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5770 Adjust to new type of overlays_(before|after).
5771
5772 * alloc.c (mark_object): Mark the new `next' field of overlays.
5773 (mark_buffer): Manually mark the overlays_(after|before) fields.
5774
5775 * coding.c (run_pre_post_conversion_on_str):
5776 * editfns.c (overlays_around):
5777 * xdisp.c (load_overlay_strings):
5778 * fileio.c (Finsert_file_contents):
5779 * indent.c (current_column):
5780 * insdel.c (signal_before_change, signal_after_change):
5781 * intervals.c (set_point_both):
5782 * print.c (temp_output_buffer_setup): Use new type for
5783 overlays_(before|after).
5784
5785 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5786
5787 * buffer.c (report_overlay_modification): Don't run hooks while
5788 traversing the list of overlays.
5789
5790 * buffer.h (struct buffer): Use an int for overlay_center.
5791 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5792 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5793
5794 * buffer.c (reset_buffer, recenter_overlay_lists)
5795 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5796 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5797 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5798 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5799 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5800
5801 * xdisp.c (fast_find_position): Remove unused var.
5802
5803 * cmds.c (Qexpand_abbrev): New sym.
5804 (syms_of_cmds): Initialize it.
5805 (internal_self_insert): Use it to call expand-abbrev.
5806
5807 2003-07-09 Kim F. Storm <storm@cua.dk>
5808
5809 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
5810 was configured with --without-xim.
5811 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
5812
5813 2003-07-07 Richard M. Stallman <rms@gnu.org>
5814
5815 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5816
5817 * alloc.c (Fgarbage_collect): Doc fix.
5818
5819 2003-07-07 Nozomu Ando <nand@mac.com>
5820
5821 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5822
5823 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5824
5825 * minibuf.c (read_minibuf): UNGCPRO before returning.
5826 (Ftry_completion, Fall_completions): Doc fix.
5827
5828 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5829 now that `floats' is not the last element of the struct any more.
5830
5831 2003-07-06 Jason Rumney <jasonr@gnu.org>
5832
5833 * w32term.h (ClipboardSequence_Proc): New type.
5834
5835 * w32fns.c (clipboard_sequence_fn): New variable.
5836 (globals_of_w32fns): Initialize it.
5837
5838 * w32select.c (last_clipboard_sequence_number): New variable.
5839 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5840 number if possible.
5841
5842 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5843
5844 * m/amdx86-64.h (MARKBIT):
5845 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5846 MARKBIT and ARRAY_MARK_FLAG any more.
5847
5848 * m/hp800.h (XSETMARKBIT):
5849 * m/sr2k.h (XSETMARKBIT):
5850 * lisp.h (XSETMARKBIT): Remove unused macro.
5851
5852 * lisp.h (mark_object): Change prototype.
5853
5854 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5855 (last_marked): Change accordingly.
5856 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5857 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5858 (mark_buffer): Update calls to mark_object.
5859
5860 * bytecode.c (mark_byte_stack):
5861 * fns.c (sweep_weak_table):
5862 * keyboard.c (mark_kboards): Update calls to mark_object.
5863
5864 2003-07-06 Jason Rumney <jasonr@gnu.org>
5865
5866 * alloc.c (struct ablock): Only include padding when there is some.
5867
5868 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5869
5870 * alloc.c (ALIGN): Add casts to simplify usage.
5871 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5872 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5873 (struct ablock, struct ablocks): New types.
5874 (free_ablock): New global var.
5875 (lisp_align_malloc, lisp_align_free): New functions.
5876 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5877 (struct float_block): Reorder and add gcmarkbits.
5878 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5879 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5880 (init_float, make_float): Use lisp_align_malloc.
5881 (free_float, live_float_p): Don't use `type' any more.
5882 (make_float): Use FLOAT_UNMARK to access to mark bit.
5883 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
5884 Use FLOAT_MARKED_P to access the mark bit.
5885 (pure_alloc): Simplify use of ALIGN.
5886 (mark_object): Use FLOAT_MARK to access the mark bit.
5887 (gc_sweep): Use new macros to access the float's mark bit.
5888 (init_alloc_once): Init free_ablock.
5889
5890 * lisp.h (struct Lisp_Float): Remove unused field `type'.
5891
5892 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
5893
5894 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
5895 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
5896 (allocate_buffer): Move.
5897 (string_bytes): Don't mask markbit of `size_byte'.
5898 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5899 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5900 Use the `size' field of buffers (rather than the `name' field) for
5901 the mark bit, as is done for all other vectorlike objects.
5902 Use the new macros to access the mark bit of vectorlike objects.
5903
5904 2003-06-26 Richard M. Stallman <rms@gnu.org>
5905
5906 * puresize.h (BASE_PURESIZE): Increment base size.
5907
5908 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5909
5910 * xterm.c (xim_initialize): Undo previous change.
5911
5912 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5913
5914 * alloc.c (survives_gc_p): Simplify.
5915
5916 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5917
5918 * window.c (Fset_window_dedicated_p): Simplify.
5919 (display_buffer_1): Don't raise the win from which minibuf was entered.
5920 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5921 (Fminibuffer_selected_window): Simplify.
5922
5923 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5924
5925 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5926 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5927
5928 * insdel.c (check_markers, adjust_markers_for_delete)
5929 (adjust_markers_for_insert, adjust_markers_for_replace)
5930 (prepare_to_modify_buffer, RESTORE_VALUE):
5931 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5932 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5933 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5934 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5935 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5936 * editfns.c (save_excursion_restore, transpose_markers):
5937 * window.c (delete_window):
5938 * xdisp.c (message_dolog): Update for new types.
5939
5940 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5941
5942 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5943 (realize_default_face): Use default_face_done_p for the force_p
5944 argument to set_lface_from_font_name. Set default_face_done_p to one.
5945
5946 * frame.c (make_frame): Initialize default_face_done_p.
5947
5948 * frame.h (struct frame): Add default_face_done_p.
5949
5950 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5951 will be defined.
5952
5953 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5954
5955 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5956 Initialize the new field `gcmarkbit'.
5957 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5958 (mark_interval_tree): Don't mark the tree separately from the nodes.
5959 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5960 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5961 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5962
5963 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5964 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5965 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5966 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5967 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5968
5969 2003-06-24 Dave Love <fx@gnu.org>
5970
5971 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5972
5973 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5974 from gnulib.
5975
5976 2003-06-21 Richard M. Stallman <rms@gnu.org>
5977
5978 * fileio.c (Fwrite_region): Alternate messages
5979 for append and partial write.
5980
5981 * keyboard.c (read_key_sequence): When converting upcase fn key to
5982 downcase, update fkey and keytran so `backspace' gets translated.
5983
5984 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5985
5986 * process.c (wait_reading_process_input): Don't signal SIGIO
5987 in batch mode.
5988
5989 2003-06-17 Kenichi Handa <handa@m17n.org>
5990
5991 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5992 composite.h.
5993
5994 * xselect.c: Don't include charset.h, coding.h, composite.h.
5995 (Qforeign_selection): New variable.
5996 (syms_of_xselect): Intern and static it.
5997 (selection_data_to_lisp_data): Return a unibyte string made from
5998 data with `foreign-selection' text property.
5999
6000 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
6001
6002 * termhooks.h (EVENT_INIT): New macro.
6003
6004 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
6005
6006 * alloc.c (mark_kboards): Move to keyboard.c.
6007
6008 * keyboard.c (record_asynch_buffer_change, read_avail_input):
6009 * xterm.c (x_dispatch_event):
6010 * xmenu.c (find_and_call_menu_selection):
6011 * xdisp.c (handle_tool_bar_click):
6012 * w32menu.c (menubar_selection_callback):
6013 * sysdep.c (kbd_input_ast, read_input_waiting):
6014 * msdos.c (dos_rawgetc):
6015 * macterm.c (mac_check_for_quit_char):
6016 * macmenu.c (menubar_selection_callback):
6017 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
6018 data to kbd_buffer_store_event.
6019
6020 2003-06-15 Kim F. Storm <storm@cua.dk>
6021
6022 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6023 to fix redisplay problem with tall characters (such as \e,AC\e(B).
6024
6025 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6026
6027 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
6028
6029 2003-06-12 Kenichi Handa <handa@m17n.org>
6030
6031 * fileio.c (Fwrite_region): Save and restore restriction.
6032
6033 2003-06-12 Dave Love <fx@gnu.org>
6034
6035 * alloca.c (alloca): Declare arg as size_t.
6036
6037 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
6038 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
6039
6040 2003-06-11 Dave Love <fx@gnu.org>
6041
6042 * search.c (shrink_regexp_cache): Use xrealloc.
6043 (syms_of_search): Use xmalloc.
6044
6045 2003-06-10 Kim F. Storm <storm@cua.dk>
6046
6047 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
6048 Adjust phys_cursor.x to be relative to window box, rather than
6049 text area before checking -- to ensure cursor is redrawn when
6050 exposing window.
6051 Note: This also fixes a similar (older) bug if display margins
6052 are present.
6053
6054 2003-06-06 Kenichi Handa <handa@m17n.org>
6055
6056 * coding.c (encoding_buffer_size): If coding->type is
6057 coding_type_ccl, double magnification on CRLF encoding.
6058
6059 2003-06-06 Jason Rumney <jasonr@gnu.org>
6060
6061 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
6062 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
6063
6064 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
6065 Mac too.
6066
6067 2003-06-05 Dave Love <fx@gnu.org>
6068
6069 * strftime.c: Merge changes from gnulib.
6070
6071 * mktime.c (__mktime_internal): Merge changes from gnulib
6072 involving year 69 and dst2.
6073
6074 Changes to merge with gnulib version and be consistent with the
6075 autoconf test:
6076
6077 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
6078 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
6079 [HAVE_LOCALE_H]: Include locale.h.
6080 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
6081
6082 2003-06-05 Kim F. Storm <storm@cua.dk>
6083
6084 * window.c (coordinates_in_window): Convert X and Y to window
6085 relative coordinates inside mode-line and header-line parts.
6086 Convert X and Y to margin area relative coordinates inside left
6087 and right display margin parts.
6088
6089 2003-06-05 Jason Rumney <jasonr@gnu.org>
6090
6091 * w32fns.c (add_system_logical_colors_to_map): New function.
6092 (Fx_open_connection): Use it.
6093
6094 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
6095
6096 * process.c (allocate_pty): Revert part of the previous patch.
6097 (Faccept_process_output): Simplify.
6098
6099 2003-06-04 Jason Rumney <jasonr@gnu.org>
6100
6101 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
6102
6103 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
6104 (lispy_mouse_wheel_names): Remove.
6105 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
6106 Always define drag_and_drop_syms.
6107
6108 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
6109 WHEEL_EVENT events.
6110
6111 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
6112
6113 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
6114
6115 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
6116
6117 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6118
6119 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
6120 menu item label.
6121
6122 2003-06-03 Richard M. Stallman <rms@gnu.org>
6123
6124 * window.c (Fwindow_edges): Doc fix.
6125 (Fwindow_pixel_edges, Fwindow_inside_edges)
6126 (Fwindow_inside_pixel_edges): New functions.
6127 (syms_of_window): defsubr them.
6128
6129 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
6130 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
6131
6132 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
6133
6134 * dispnew.c (Fsit_for): Don't lie about the number of args.
6135
6136 2003-06-02 Dave Love <fx@gnu.org>
6137
6138 * callproc.c: Use HAVE_FCNTL_H, not USG5.
6139 (syms_of_callproc) <process-environment>: Doc fix.
6140
6141 * doc.c: Use HAVE_FCNTL_H, not USG5.
6142
6143 * xfaces.c (font_rescale_ratio): Fix for K&R.
6144
6145 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
6146
6147 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
6148
6149 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
6150
6151 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
6152 (xg_create_frame_widgets): Use ENCODE_UTF_8.
6153
6154 * xterm.c (Qutf_8): Move to coding.c
6155
6156 * xmenu.c (ENCODE_MENU_STRING): New.
6157 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
6158 Use it.
6159
6160 * coding.h (ENCODE_UTF_8): New.
6161 (Qutf_8): Declare.
6162
6163 * coding.c (Qutf_8): New.
6164 (syms_of_coding): Intern it.
6165
6166 * fns.c: Doc fixes.
6167
6168 2003-06-02 Kenichi Handa <handa@m17n.org>
6169
6170 * buffer.c (Fset_buffer_multibyte): Fix previous change.
6171
6172 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
6173
6174 * lread.c (openp): Make sure STR is a string.
6175
6176 2003-06-01 David Ponce <david@dponce.com>
6177
6178 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
6179 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
6180
6181 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
6182 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
6183 (discard_mouse_events): Discard WHEEL_EVENT events too.
6184 (lispy_wheel_names, wheel_syms): New.
6185 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
6186 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
6187 defined.
6188 (make_lispy_event): Add WHEEL_EVENT handler.
6189
6190 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
6191 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6192 WHEEL_EVENT events.
6193
6194 2003-05-31 John Paul Wallington <jpw@gnu.org>
6195
6196 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
6197 timer are in lisp/emacs-lisp.
6198
6199 2003-05-31 Kenichi Handa <handa@m17n.org>
6200
6201 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
6202 region when a buffer is changed to unibyte.
6203
6204 * charset.h (VALID_LEADING_CODE_P): New macro.
6205 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
6206
6207 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
6208 is nonzero, accept multibyte form of eight-bit-control chars.
6209 (decode_composition_emacs_mule): Likewise.
6210 (decode_coding_emacs_mule): Likewise.
6211 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
6212 multibyte form of eight-bit-control chars.
6213
6214 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
6215 (Finsert_file_contents): If coding-system-for-read is bound to
6216 Qauto_save_coding, use the coding system emacs-mule with special
6217 setting for recovering a file.
6218 (choose_write_coding_system): On auto saving, use the coding
6219 system emacs-mule with special setting for auto saving.
6220 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
6221
6222 2003-05-30 Kenichi Handa <handa@m17n.org>
6223
6224 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
6225 properly before calling ccl_driver.
6226
6227 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
6228
6229 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
6230 nonzero.
6231 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
6232 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
6233
6234 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
6235
6236 * xfaces.c (realize_default_face): Do not abort if lface is
6237 non-existent - reverts change from 2003-05-19.
6238
6239 2003-05-29 Kenichi Handa <handa@m17n.org>
6240
6241 * coding.c (decode_coding_iso2022): Pay attention to the byte
6242 sequence of CTEXT extended segment, and retain those bytes as is.
6243
6244 2003-05-28 Kenichi Handa <handa@m17n.org>
6245
6246 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
6247 of CODING_REPLACEMENT_CHARACTER.
6248 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
6249 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
6250 check this flag on encoding.
6251 (encode_coding_sjis_big5): Check
6252 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
6253 (Fset_terminal_coding_system_internal): Set
6254 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
6255 instead of setting CODING_FLAG_ISO_SAFE flag in
6256 terminal_coding.flags.
6257
6258 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
6259 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
6260 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
6261
6262 2003-05-28 Richard M. Stallman <rms@gnu.org>
6263
6264 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
6265
6266 * eval.c (unbind_to): Move init of this_binding to separate statement.
6267
6268 2003-05-28 Kim F. Storm <storm@cua.dk>
6269
6270 * xdisp.c (expose_window): Fix error in calculation of
6271 window relative coordinates of area to redisplay.
6272
6273 2003-05-27 Jason Rumney <jasonr@gnu.org>
6274
6275 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
6276
6277 2003-05-27 David Ponce <david@dponce.com>
6278
6279 Handle W32 mouse wheel events as mouse click events, like in X.
6280
6281 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
6282 MOUSE_WHEEL_EVENT anymore.
6283
6284 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
6285 Scrolling down/up the mouse wheel is respectively mapped to mouse
6286 button 4 and 5.
6287 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6288 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
6289 WM_MOUSEWHEEL events.
6290
6291 2003-05-27 Andreas Schwab <schwab@suse.de>
6292
6293 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
6294
6295 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
6296 partially visible line.
6297
6298 * alloc.c (Fgarbage_collect): Fix last change.
6299
6300 2003-05-26 John Paul Wallington <jpw@gnu.org>
6301
6302 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
6303
6304 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
6305
6306 * window.c (Fset_window_buffer): Add type of `keep_margins'.
6307 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
6308
6309 * window.h (window_box_text_cols): Declare.
6310
6311 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
6312 (x_draw_vertical_border): Remove unused var `f'.
6313
6314 * xfaces.c (build_scalable_font_name): Remove `unused var
6315 pixel_size' warning.
6316
6317 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
6318
6319 * unexelf.c (unexec): Remove `unused var n' warning.
6320
6321 * strftime.c (my_strftime_localtime_r): Remove `defined but
6322 unused' warning.
6323
6324 * process.c (allocate_pty): Remove `unused var stb' and
6325 `cp might be used uninitialized' warnings.
6326
6327 * dispnew.c (mode_line_string): Remove unused var `f'.
6328
6329 * coding.c (find_safe_codings): Remove unused var `i'.
6330
6331 * bytecode.c (Fbyte_code): Remove `unused val' warning.
6332
6333 * buffer.c (Fkill_buffer): Remove unused var `list'.
6334
6335 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
6336
6337 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6338
6339 * frame.c (make_frame): Condition want_fullscreen with
6340 HAVE_WINDOW_SYSTEM.
6341
6342 2003-05-25 Juanma Barranquero <lektu@terra.es>
6343
6344 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
6345 (Fwindow_scroll_bars): Fix typo in docstring.
6346
6347 2003-05-24 Kim F. Storm <storm@cua.dk>
6348
6349 The following changes serve several purposes:
6350
6351 1) Swap the position of fringes and display margins in windows, i.e.
6352 the fringes are now displayed between the margins and the text area
6353 (by default).
6354
6355 2) Allow fringe and scroll bar parameters to be set per-buffer and
6356 per-window (like display margins). Such settings are now stored
6357 in window configurations, preserved when frames are resized, and
6358 copied when windows are split vertically or horizontally.
6359 Several bugs related to display margins have been fixed.
6360
6361 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
6362
6363 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
6364 rather than FRAME_WIDTH (FRAME_FONT (f)).
6365
6366 5) Introduce a consistent naming of variables, members and macros
6367 depending on whether their value is measured in pixels or in
6368 canonical columns/lines. Pixel dimensions are named *_width and
6369 *_height, while canonical columns/lines are named *_cols and
6370 *_lines. Pixel positions are named *_x and *_y, while column/line
6371 positions are named *_col and *_line.
6372
6373 6) Consolidate more of the X, W32, and MAC gui code by moving
6374 common data into struct frame, and generalize it for the non-gui
6375 case by using suitable defaults.
6376
6377 7) Cleanup and consolidate the macros controlling frame and window
6378 layout into frame.h and window.h, and generalize the use of the
6379 various window_box_* functions (enhanced to handle the new fringe
6380 position and the per-window fringe and scroll bar settings).
6381
6382 * frame.h (struct frame): Rename members height to text_lines,
6383 width to text_cols, window_height to total_lines, window_width to
6384 total_cols, new_height to new_text_lines, new_width to
6385 new_text_cols. All uses changed.
6386 (struct frame): New members which consolidate common members of
6387 x_output, w32_output, and mac_output structures: left_pos,
6388 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
6389 win_gravity, size_hint_flags, border_width, internal_border_width,
6390 line_height, fringe_cols, left_fringe_width, right_fringe_width,
6391 want_fullscreen. All uses changed.
6392 (struct frame): New member column_width contaning the canonical
6393 column width, analogue to line_height. All uses changed.
6394 (struct frame): Rename members scroll_bar_pixel_width to
6395 config_scroll_bar_width, and scroll_bar_cols to
6396 config_scroll_bar_cols. All uses changed.
6397 (struct frame): New member scroll_bar_actual_width which
6398 consolidates and renames the vertical_scroll_bar_extra member of
6399 x_output, w32_output, and mac_output structures. All uses changed.
6400 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
6401 from x/w32/macterm.h files. All uses changed. Also change code
6402 which referred to f->output_data...->pixel_height.
6403 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
6404 from x/w32/macterm.h files. All uses changed. Also change code
6405 which referred to f->output_data...->pixel_width.
6406 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
6407 Also change code which referred to f->height.
6408 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
6409 Also change code which referred to f->width.
6410 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
6411 to update new_text_lines and new_text_cols members directly.
6412 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
6413 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
6414 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
6415 FRAME_SCROLL_BAR_COLS. All uses changed.
6416 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
6417 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
6418 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
6419 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
6420 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
6421 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
6422 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
6423 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
6424 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
6425 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
6426 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
6427 return line_height member (it now has proper value also for
6428 non-window frames).
6429 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
6430 return new column_width member (rather than the default font width).
6431 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
6432 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
6433 from x/w32/macterm.h files. Unconditionally return corresponding
6434 member of frame structure (they now have proper values also for
6435 non-window frames).
6436 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
6437 Calculate return value from left and right widths.
6438 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
6439 internal_border_width member (has proper value for non-window frame).
6440 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
6441 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
6442 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
6443 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
6444 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
6445 consolidated from xterm.h, macterm.h, and w32term.h.
6446 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
6447 consolidated from xterm.h, macterm.h, and w32term.h.
6448 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
6449 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
6450 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
6451 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
6452 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
6453 consolidated from x/mac/w32term.h.
6454 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
6455 consolidated from x/mac/w32term.h.
6456 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
6457 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
6458 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
6459 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
6460
6461 * window.h (struct window): Rename members left to left_col,
6462 top to top_line, height to total_lines, width to total_cols,
6463 left_margin_width to left_margin_cols, right_margin_width to
6464 right_margin_cols, orig_height to orig_total_lines, orig_top to
6465 orig_top_line. All uses changed.
6466 (struct window): New members left_fringe_width, right_fringe_width,
6467 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
6468 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
6469 New macros primarily used to simplify other macros.
6470 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
6471 referred to XINT (w->width).
6472 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
6473 referred to XINT (w->height).
6474 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
6475 referred to XINT (w->width) * canon_x_unit.
6476 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
6477 referred to XINT (w->height) * canon_y_unit.
6478 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
6479 referred to XINT (w->left).
6480 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
6481 all uses and code that referred to XINT (w->left) + XINT (w->width).
6482 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
6483 referred to XINT (w->top).
6484 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
6485 referred to XINT (w->top) + XINT (w->height).
6486 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
6487 referred to XINT (w->left) * canon_x_unit.
6488 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
6489 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
6490 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
6491 referred to XINT (w->top) * canon_y_unit.
6492 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
6493 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
6494 (WINDOW_LEFTMOST_P): New macro.
6495 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
6496 All uses changed.
6497 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
6498 All uses changed.
6499 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
6500 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
6501 Do not exclude left fringe width.
6502 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
6503 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
6504 Do not exclude fringe widths.
6505 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
6506 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
6507 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
6508 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
6509 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
6510 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
6511 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
6512 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
6513 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
6514 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
6515 New macros. Change code which referenced corresponding
6516 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
6517 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
6518 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
6519 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
6520 allow per-window scroll-bar settings.
6521 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
6522 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
6523 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
6524 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
6525 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
6526 FRAME_SCROLL_BAR_WIDTH.
6527 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
6528 (WINDOW_SCROLL_BAR_AREA_X): New macros.
6529 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
6530 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
6531 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
6532 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
6533 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
6534 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
6535 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6536 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6537 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
6538 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
6539 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6540 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
6541 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6542 (window_from_coordinates): Update prototype.
6543 (Fset_window_buffer): Update EXFUN.
6544 (set_window_buffer): Update prototype.
6545
6546 * dispextern.h (struct glyph_matrix): Rename members window_left_x
6547 to window_left_col, window_top_y to window_top_line. All uses
6548 changed.
6549 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
6550 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
6551 internal_border_width is now set to 0 for non-window frames.
6552 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
6553 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
6554 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
6555 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
6556 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
6557 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6558 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6559 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
6560 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
6561 Move to window.h and renamed [see window.h changes].
6562 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
6563 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
6564 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
6565 Use WINDOW_TOTAL_LINES.
6566 (frame_update_line_height): Remove prototype.
6567
6568 * buffer.h (struct buffer): Rename members measured in columns:
6569 left_margin_width to left_margin_cols, right_margin_width to
6570 right_margin_cols. All uses changed.
6571 New members left_fringe_width, right_fringe_width,
6572 fringes_outside_margins for per-buffer fringe settings.
6573 New members scroll_bar_width and vertical_scroll_bar_type for
6574 per-buffer scroll bar settings.
6575
6576 * buffer.c (init_buffer_once): Set buffer_defaults and
6577 buffer_local_flags for new buffer-local variables
6578 left_fringe_width, right_fringe_width, fringes_outside_margins,
6579 scroll_bar_width, and vertical_scroll_bar_type.
6580 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
6581 default-* variables for them.
6582
6583 * dispnew.c: Make (many) trivial substitutions for renamed and
6584 new macros in dispextern.h, frame.h and window.h.
6585 (mode_line_string): No need to adjust width for mode lines, as it
6586 is already adjusted by the caller.
6587 (marginal_area_string): Handle fringes inside/outside margins.
6588
6589 * frame.c: Make (many) trivial substitutions for renamed and
6590 new macros in dispextern.h, frame.h and window.h.
6591 (make_frame): Initialize left_fringe_width, right_fringe_width,
6592 fringe_cols, scroll_bar_actual_width, border_width,
6593 internal_border_width, column_width, line_height, x_pixels_diff,
6594 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
6595 members with values suitable for a non-window frames.
6596
6597 * gtkutil.c: Make (many) trivial substitutions for renamed and
6598 new macros in dispextern.h, frame.h and window.h.
6599
6600 * indent.c: Make (few) trivial substitutions for renamed and
6601 new macros in dispextern.h, frame.h and window.h.
6602
6603 * keyboard.c: Make (many) trivial substitutions for renamed and
6604 new macros in dispextern.h, frame.h and window.h.
6605 (make_lispy_event): Use window positions returned from
6606 window_from_coordinates when constructing the lisp event for
6607 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
6608 (incorrect) values locally.
6609 (make_lispy_movement): Use window positions returned from
6610 window_from_coordinates when constructing the lisp event, rather
6611 than calculating (incorrect) values locally.
6612
6613 * scroll.c: Make (some) trivial substitutions for renamed and
6614 new macros in dispextern.h, frame.h and window.h.
6615
6616 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
6617 scroll-bars.
6618
6619 * sysdep.c: Make (few) trivial substitutions for renamed and
6620 new macros in dispextern.h, frame.h and window.h.
6621
6622 * term.c: Make (some) trivial substitutions for renamed and
6623 new macros in dispextern.h, frame.h and window.h.
6624
6625 * widget.c: Make (few) trivial substitutions for renamed and
6626 new macros in dispextern.h, frame.h and window.h.
6627
6628 * window.c: Make (many) trivial substitutions for renamed and
6629 new macros in dispextern.h, frame.h and window.h.
6630 (make_window): Initialize new members
6631 left_margin_cols, right_margin_cols, left_fringe_width,
6632 right_fringe_width, fringes_outside_margins, scroll_bar_width,
6633 and vertical_scroll_bar_type.
6634 (coordinates_in_window): Adapted to new fringe/margin positions
6635 and per-window fringes and scroll-bars.
6636 Fix bug related to incorrectly adjusting coordinates by
6637 frame's internal_border_width (the effect normally negible since
6638 the internal_border_width is typically 0 or 1 pixel, but very
6639 noticeable for an internal_border_width of e.g. 25 pixels).
6640 Upon successful return (other than ON_NOTHING), the coordinates
6641 are now always properly converted to window relative for the
6642 given display element.
6643 (window_from_coordinates): Add new parameters wx and wy to
6644 return the window relative x and y position in the returned
6645 window and part. A null arg means, don't return the position.
6646 All callers changed.
6647 (adjust_window_margins): New function which may reduce the width
6648 of the display margins if a window's text area is too small after
6649 resizing or splitting windows.
6650 (size_window): Fix bug that did not account for display margin
6651 widths when checking the minimum width of a window; use
6652 adjust_window_margins.
6653 (set_window_buffer): Call Fset_window_fringes and
6654 Fset_window_scroll_bars to setup per-window elements.
6655 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
6656 existing display margin, fringe widths, and scroll bar settings
6657 (e.g. after splitting a window or resizing the frame).
6658 All callers changed.
6659 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
6660 (Fsplit_window): Duplicate original window's display margin,
6661 fringe, and scroll-bar settings; then call Fset_window_buffer with
6662 KEEP_MARGINS non-nil. This fixes a bug which caused a split
6663 window to only preserve the display margins in one of the windows.
6664 When splitting horizontally, call adjust_window_margins on both
6665 windows to ensure that the text area of the new windows is non too
6666 narrow. This fixes a bug which could cause Emacs to trap if the
6667 width of the split window was less than the width of the display
6668 margins.
6669 (window_box_text_cols): Renamed from window_internal_width.
6670 All uses changed. Adapt to per-window fringes and scroll bars.
6671 Fix bug that caused vertical separator to be subtracted also on
6672 window frames. Fix another bug that did not reduce the returned
6673 value by the columns used for display margins.
6674 (window_scroll_line_based): Fix bug related to scrolling too much
6675 when display margins are present (implicitly fixed by the fix to
6676 window_box_text_cols).
6677 (scroll_left, scroll_right): Fix bug related to scrolling too far
6678 by default when display margins are present (implicitly fixed by
6679 the fix to window_box_text_cols).
6680 (struct saved_window): Rename members left to left_col, top to
6681 top_line, width to total_cols, height to total_lines, orig_top to
6682 orig_top_line, orig_height to orig_total_lines. All uses changed.
6683 New members left_margin_cols, right_margin_cols,
6684 left_fringe_width, right_fringe_width, fringes_outside_margins,
6685 scroll_bar_width, and vertical_scroll_bar_type for saving
6686 per-window display elements.
6687 (Fset_window_configuration): Restore display margins, fringes,
6688 and scroll bar settings. This fixes a bug which caused display
6689 margins to be discarded when saving and restoring a window
6690 configuration.
6691 (save_window_save): Save display margins, fringes, and scroll bar
6692 settings. This fixes a bug which caused display margins to be
6693 discarded when saving and restoring a window configuration.
6694 (Fset_window_margins): Do nothing if display margins are not
6695 really changed. Otherwise, call adjust_window_margins to ensure
6696 the text area doesn't get too narrow. This fixes a bug which
6697 could cause Emacs to trap if setting display margins wider than
6698 the width of the window.
6699 (Fset_window_fringes): New defun to allow user to specifically set
6700 this window's fringe widths and position vs. display margins.
6701 (Fwindow_fringes): New defun to return window's actual fringe
6702 settings.
6703 (Fset_window_scroll_bars): New defun to allow user to specifically
6704 set this window's scroll bar width and position.
6705 (Fwindow_scroll_bars): New defun to return window's actual scroll
6706 bar settings.
6707 (compare_window_configurations): Also compare display margins,
6708 fringes, and scroll bar settings.
6709 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6710
6711 * xdisp.c: Make (many) trivial substitutions for renamed and
6712 new macros in dispextern.h, frame.h and window.h.
6713 (window_box_width): Adapt to per-window fringes and scroll bars,
6714 and new fringe vs. display margin position. Note that returned
6715 value is no longer guaranteed to be a whole multiple of the frame
6716 column width, since per-window fringes may now be any width.
6717 (window_box_left_offset): New function like window_box_left, but
6718 value is relative to left border of window (rather than frame).
6719 (window_box_right_offset): New function like window_box_right,
6720 but value is relative to left border of window.
6721 (window_box_left): Adapt to per-window fringes and scroll bars,
6722 and new fringe vs. display margin position. Simplify by using
6723 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6724 (window_box): Allow null args for unnecessary return values;
6725 change/simplify relevant callers.
6726 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
6727 and new fringe vs. display margin position.
6728 Use window_box_left_offset and window_box_right_offset
6729 (get_glyph_string_clip_rect): Adapt to per-window fringes and
6730 scroll bars, and new fringe vs. display margin position.
6731 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
6732 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6733 fringe vs. display margin position.
6734 (hscroll_window_tree): Use window_box_width instead of window_box.
6735 (redisplay_window): Adapt to per-window scroll bars.
6736 (draw_glyphs): Rework to handle per-window fringes and scroll
6737 bars, and new fringe vs. display margin position.
6738 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
6739 (x_clear_end_of_line): Adapt to per-window fringes and scroll
6740 bars, and new fringe vs. display margin position. Fix bug which
6741 increased total width of full_width rows by width of scroll bars
6742 although window's total width already includes that.
6743 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6744 (expose_area): Simplify using window_box_left_offset.
6745 (x_draw_vertical_border): Handle per-window scroll bar settings,
6746 mixing windows with left, right and no scroll bars.
6747
6748 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6749 where it's used in x_list_fonts (for clarity).
6750 (frame_update_line_height): Remove unused function; functionality
6751 is now done directly when setting the default font in x_set_font.
6752
6753 * xfns.c: Make (many) trivial substitutions for renamed and
6754 new macros in dispextern.h, frame.h and window.h.
6755
6756 * xmenu.c: Make (some) trivial substitutions for renamed and
6757 new macros in dispextern.h, frame.h and window.h.
6758
6759 * xterm.h (struct x_output): Move members left_pos, top_pos,
6760 border_width, pixel_height, pixel_width, line_height,
6761 internal_border_width, vertical_scroll_bar_extra,
6762 left_fringe_width, right_fringe_width, fringe_cols,
6763 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6764 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6765 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6766 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6767 (PIXEL_WIDTH, PIXEL_HEIGHT)
6768 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6769 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6770 frame.h and renamed [see frame.h changes].
6771 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6772 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6773 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6774 and renamed [see frame.h changes].
6775
6776 * xterm.c: Make (several) trivial substitutions for renamed and
6777 new macros in dispextern.h, frame.h and window.h.
6778 (x_draw_glyph_string_box): Adapt to per-window fringes and
6779 scroll-bars.
6780 (scroll_run): Adapt to new fringe position.
6781 (glyph_rect): Use window coordinates returned from
6782 window_from_coordinates rather than frame_to_window_pixel_xy.
6783 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6784 scroll-bars.
6785 (handle_one_xevent): Simplify a USE_GTK conditional.
6786 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6787 (fringes are now inside margins, i.e. always in the clipping area).
6788 All callers changed.
6789 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6790 directly, then call compute_fringe_widths. Don't call
6791 frame_update_line_height.
6792
6793 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6794 border_width, pixel_height, pixel_width, line_height,
6795 internal_border_width, vertical_scroll_bar_extra,
6796 left_fringe_width, right_fringe_width, fringe_cols,
6797 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6798 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6799 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6800 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6801 (PIXEL_WIDTH, PIXEL_HEIGHT)
6802 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6803 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6804 frame.h and renamed [see frame.h changes].
6805 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6806 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6807 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6808 and renamed [see frame.h changes].
6809
6810 * w32term.c: Make (several) trivial substitutions for renamed and
6811 new macros in dispextern.h, frame.h and window.h.
6812 (x_draw_glyph_string_box): Adapt to per-window fringes and
6813 scroll-bars.
6814 (glyph_rect): Use window coordinates returned from
6815 window_from_coordinates rather than frame_to_window_pixel_xy.
6816 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6817 scroll-bars.
6818 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6819 (fringes are now inside margins, i.e. always in the clipping area).
6820 All callers changed.
6821 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6822 directly, then call compute_fringe_widths. Don't call
6823 frame_update_line_height.
6824
6825 * w32console.c: Make (few) trivial substitutions for renamed and
6826 new macros in dispextern.h, frame.h and window.h.
6827
6828 * w32fns.c: Make (many) trivial substitutions for renamed and
6829 new macros in dispextern.h, frame.h and window.h.
6830
6831 * w32menu.c: Make (few) trivial substitutions for renamed and
6832 new macros in dispextern.h, frame.h and window.h.
6833
6834 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6835 border_width, pixel_height, pixel_width, line_height,
6836 internal_border_width, vertical_scroll_bar_extra,
6837 left_fringe_width, right_fringe_width, fringe_cols,
6838 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6839 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6840 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6841 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6842 (PIXEL_WIDTH, PIXEL_HEIGHT)
6843 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6844 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6845 frame.h and renamed [see frame.h changes].
6846 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6847 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6848 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6849 and renamed [see frame.h changes].
6850
6851 * macterm.c: Make (several) trivial substitutions for renamed and
6852 new macros in dispextern.h, frame.h and window.h.
6853 (x_draw_glyph_string_box): Adapt to per-window fringes and
6854 scroll-bars.
6855 (glyph_rect): Use window coordinates returned from
6856 window_from_coordinates rather than frame_to_window_pixel_xy.
6857 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6858 scroll-bars.
6859 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6860 (fringes are now inside margins, i.e. always in the clipping area).
6861 All callers changed.
6862 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6863 directly, then call compute_fringe_widths. Don't call
6864 frame_update_line_height.
6865
6866 * macfns.c: Make (several) trivial substitutions for renamed and
6867 new macros in dispextern.h, frame.h and window.h.
6868 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
6869
6870 * macmenu.c: Make (few) trivial substitutions for renamed and
6871 new macros in dispextern.h, frame.h and window.h.
6872
6873 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6874 and line_height, and use corresponding new members in struct
6875 frame. All uses changed.
6876 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6877 superseeded by corresponding macros in frame.h.
6878
6879 * msdos.c: Make (several) trivial substitutions for renamed and
6880 new macros in dispextern.h, frame.h and window.h.
6881 (IT_note_mouse_highlight): Use updated window coordinates returned
6882 by window_from_coordinates, rather than adjusting them locally.
6883 (internal_terminal_init): No need to initialize line_height here;
6884 it now defaults to 1.
6885
6886 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
6887
6888 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
6889 dropping `down' events.
6890
6891 2003-05-24 Andreas Schwab <schwab@suse.de>
6892
6893 * coding.c (find_safe_codings): Fix last change.
6894
6895 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
6896
6897 * xfns.c (x_window): Fix typo from 2003-05-21 change.
6898
6899 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6900
6901 * xdisp.c (display_mode_element): Increase max depth.
6902 Simplify the error handling code. Use a different error string
6903 for the case where we hit the depth limit.
6904
6905 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6906
6907 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6908
6909 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6910
6911 * intervals.c (get_local_map): Don't get char-property of previous
6912 point any more: get_pos_property already does it and better.
6913
6914 2003-05-21 Dave Love <fx@gnu.org>
6915
6916 [Merged from unicode branch.]
6917
6918 * xfns.c (x_window, x_window): Use use_xim.
6919
6920 * xterm.c (use_xim): Initialize.
6921 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6922 (x_term_init): Maybe set use_xim.
6923
6924 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6925
6926 2003-05-21 Jason Rumney <jasonr@gnu.org>
6927
6928 * unexw32.c (_start): Remove _fmode initialization.
6929
6930 * emacs.c (main) [WINDOWSNT]: Move it here.
6931
6932 2003-05-20 Dave Love <fx@gnu.org>
6933
6934 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6935
6936 2003-05-19 Richard M. Stallman <rms@gnu.org>
6937
6938 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6939 as value for QCfont attribute.
6940 (realize_default_face): lface should already exist; crash if not.
6941 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6942
6943 * frame.c (Fignore_event): Doc fix.
6944
6945 2003-05-19 Kenichi Handa <handa@m17n.org>
6946
6947 * coding.c (decode_coding_string): Handle post-read-conversion
6948 even if the coding doesn't require decoding.
6949
6950 2003-05-18 Richard M. Stallman <rms@gnu.org>
6951
6952 * callproc.c (Fcall_process_region): Doc fix.
6953
6954 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6955
6956 * lread.c (Fload): Print a message if package is obsolete.
6957
6958 * window.c (Fselect_window): Add optional `norecord' arg.
6959 (select_window_1): Fold into Fselect_window.
6960 (select_window_norecord): New function.
6961 (temp_output_buffer_show): Use it. Preserve current buffer.
6962
6963 * window.h (Fselect_window): Update declaration.
6964
6965 * window.c (delete_window, Fother_window, Fset_window_configuration):
6966 * minibuf.c (read_minibuf):
6967 * macterm.c (x_new_focus_frame):
6968 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6969 * callint.c (Fcall_interactively):
6970 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6971
6972 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6973
6974 2003-05-17 David Kastrup <dak@gnu.org>
6975
6976 * process.c (read_process_output): Back out change from 2003-03-09.
6977
6978 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6979
6980 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6981
6982 * textprop.c (text_property_stickiness): New arg `buffer'.
6983
6984 * intervals.h (text_property_stickiness): New arg `buffer'.
6985 (get_pos_property): Declare.
6986
6987 * intervals.c (get_local_map): Use get_pos_property, to obey
6988 stickiness and empty overlays.
6989 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6990 (merge_properties, intervals_equal, merge_properties_sticky):
6991 Use XCAR, XCDR.
6992 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6993
6994 2003-05-17 Richard M. Stallman <rms@gnu.org>
6995
6996 * minibuf.c (read_minibuf): If buffer is empty, record the default
6997 in the history.
6998 (Fminibuffer_complete_word): When deleting the overlap, take account
6999 of its real position.
7000
7001 * fns.c (map_char_table): Fix previous change.
7002
7003 * syntax.c (find_defun_start):
7004 When open_paren_in_column_0_is_defun_start,
7005 return beginning of buffer.
7006
7007 * lisp.h (map_char_table): Declare added arg.
7008
7009 * fns.c (map_char_table): New arg TABLE gets the master table.
7010 All calls changed.
7011 Process default and inheritance, resorting to Faref if necessary.
7012
7013 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
7014 (Faccessible_keymaps): Pass new arg to map_char_table.
7015
7016 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
7017
7018 * casetab.c (set_case_table): Pass new arg to map_char_table.
7019
7020 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
7021
7022 * lisp.h (specbinding_func): New typedef.
7023 (struct specbinding): Use specbinding_func, to put the `volatile'
7024 in the right place.
7025
7026 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
7027 to avoid GCC warning.
7028
7029 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
7030
7031 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
7032
7033 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
7034
7035 * keyboard.c (apply_modifiers): Don't fill the other cache.
7036
7037 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
7038
7039 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
7040
7041 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
7042 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
7043 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
7044 (Fset_window_configuration, Fcurrent_window_configuration)
7045 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
7046 (Fpos_visible_in_window_p, mark_window_cursors_off)
7047 (window_internal_height, window_internal_width, Frecenter)
7048 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
7049 (replace_buffer_in_all_windows, init_window_once, init_window)
7050 (syms_of_window, keys_of_window): Move from lisp.h.
7051 * lisp.h: Move window.c declarations to window.h.
7052
7053 * bytecode.c: Include window.h.
7054 * emacs.c: Include window.h.
7055
7056 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
7057 (keyremap): Add `parent' field.
7058 (keyremap_step): Use it. Remove `parent' argument.
7059 (read_key_sequence): Setup and use the new `parent' field.
7060
7061 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
7062
7063 * keyboard.c (adjust_point_for_property): Ensure termination.
7064
7065 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
7066
7067 * keyboard.c (follow_key): Remove dead variable `did_meta'.
7068 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
7069 duplicated handling of function-key-map and key-translation-map
7070 in read_key_sequence.
7071 (read_key_sequence): Use them.
7072
7073 * keyboard.c (adjust_point_for_property): Try harder to move point
7074 to the non-sticky end of an invisible property.
7075
7076 * xdisp.c (single_display_prop_intangible_p): Make `space' display
7077 property intangible as well.
7078
7079 2003-05-10 Andreas Schwab <schwab@suse.de>
7080
7081 * xmenu.c (single_menu_item): Change last parameter to void* to
7082 avoid warning.
7083
7084 2003-05-09 Richard M. Stallman <rms@gnu.org>
7085
7086 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
7087 Bind Qinhibit_modification_hooks to t so there will be no GC.
7088 Rename local `tem' to `save_deactivate_mark'.
7089
7090 * eval.c (specpdl_ptr): Declare volatile.
7091 (unbind_to): Copy the whole binding and decrement specpdl_ptr
7092 before doing the work of unbinding it.
7093
7094 * lisp.h (struct specbinding): Declare elements volatile.
7095 (specpdl_ptr): Declare volatile.
7096
7097 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
7098
7099 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
7100 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
7101
7102 2003-05-08 Dave Love <fx@gnu.org>
7103
7104 * coding.c (Vlast_coding_system_used): Doc fix.
7105
7106 2003-05-07 Jason Rumney <jasonr@gnu.org>
7107
7108 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
7109 when system does not support them.
7110
7111 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
7112
7113 * fileio.c (Qwrite_region_annotate_functions): New var.
7114 (build_annotations): Use it to process the global part of the hook.
7115 (syms_of_fileio): Init and staticpro it.
7116
7117 * keyboard.c (safe_run_hooks_error): Display a message instead of
7118 silently ignoring the error.
7119
7120 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
7121
7122 * keyboard.c (input_available_signal): Mark static.
7123 (menu_bar_items): Use map_keymap.
7124 (menu_bar_one_keymap): Remove.
7125 (menu_bar_item): Adjust arglist (for use in map_keymap).
7126 Properly hide a second binding when not both are keymaps.
7127
7128 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
7129 (single_keymap_panes): Use it and map_keymap.
7130 (single_menu_item): Use skp as well.
7131
7132 * keymap.h (map_keymap_function_t): New type.
7133 (map_keymap): Declare.
7134
7135 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
7136 (map_keymap_call, Fmap_keymap): New functions.
7137 (syms_of_keymap): Defsubr map-keymap.
7138
7139 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7140
7141 * gtkutil.c (create_dialog, make_widget_for_menu_item)
7142 (make_menu_item, create_menus, xg_update_menu_item): Don't call
7143 ..._with_mnemonic functions for menu items.
7144
7145 2003-05-01 Kenichi Handa <handa@m17n.org>
7146
7147 * coding.c (coding_system_accept_latin_extra_p): Delete this
7148 function.
7149 (find_safe_codings): Pay attention to
7150 the property tranlsation-table-for-encode of each codings.
7151 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
7152
7153 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
7154
7155 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
7156
7157 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
7158
7159 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
7160
7161 * lisp.h (CHECK): Wrap args in parenthesis.
7162 (specbind): Fix doc: symbol = Qnil is not supported any more.
7163
7164 * bytecode.c (Fbyte_code) <unwind-protect>:
7165 Use Fprogn rather than 0 and Qnil.
7166
7167 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
7168 `double', and `triple' modifiers as well.
7169
7170 2003-04-30 Richard M. Stallman <rms@gnu.org>
7171
7172 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
7173
7174 * alloc.c (abort_on_gc): New variable.
7175 (Fgarbage_collect): Abort if abort_on_gc is set.
7176
7177 * lisp.h (abort_on_gc): Add decl.
7178
7179 * eval.c (Fsignal): Clear abort_on_gc.
7180
7181 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
7182 Reinit FORMAT_START and END before second scan.
7183
7184 * xdisp.c (move_it_vertically_backward): Do the final big else
7185 even if nlines is 0.
7186
7187 * xdisp.c (redisplay_internal): Finish the per-frame loop
7188 even if redisplay is suspended by input.
7189
7190 2003-04-24 Andrew Choi <akochoi@shaw.ca>
7191
7192 * macterm.c (x_list_fonts): Return all fonts that match if
7193 maxnames = -1.
7194
7195 2003-04-25 Kenichi Handa <handa@m17n.org>
7196
7197 * syntax.c (skip_chars): Fix previous change.
7198
7199 2003-04-24 Kenichi Handa <handa@m17n.org>
7200
7201 * syntax.c (skip_chars): Make the code faster by using the common
7202 technique of *p, *stop, and *endp.
7203
7204 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7205
7206 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
7207 tool_bar_items so GTK tool bar expose callback does not access items
7208 being updated.
7209
7210 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
7211
7212 * eval.c (Fapply): Undo last change and add a comment about why.
7213
7214 2003-04-18 Miles Bader <miles@gnu.org>
7215
7216 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
7217 pickier PARSE_MULTIBYTE_SEQ.
7218
7219 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
7220
7221 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
7222 Use XCDR, XCAR, CONSP.
7223 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
7224 (Fapply): Remove unnecessary GCPRO.
7225
7226 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
7227
7228 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
7229
7230 * buffer.h: Don't hardcode BEG==1.
7231
7232 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
7233
7234 2003-04-16 Richard M. Stallman <rms@gnu.org>
7235
7236 * xdisp.c (try_window, try_window_reusing_current_matrix):
7237 When at end of window, set window_end_pos to Z-ZV.
7238
7239 * buffer.c (Foverlay_recenter): Doc fix.
7240
7241 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
7242
7243 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
7244
7245 2003-04-14 Andrew Choi <akochoi@shaw.ca>
7246
7247 * macterm.c (mac_check_for_quit_char): Don't check more often than
7248 once a second.
7249
7250 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
7251
7252 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
7253 specially, so that they can't hide an implicit switch-frame event.
7254 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
7255 (head_table): Use switch-frame as event_kind for select-window.
7256 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
7257
7258 * editfns.c (Fformat): Lisp_Object/int mixup.
7259 (format2): Remove unused var numargs.
7260
7261 2003-04-11 Kenichi Handa <handa@m17n.org>
7262
7263 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
7264 (Qafter_insert_file_set_coding): New variable.
7265 (syms_of_fileio): Initialize and staticpro it. Delete declaration
7266 for after-insert-file-adjust-coding-function.
7267 (Finsert_file_contents): Call Qafter_insert_file_set_coding
7268 instead of Vafter_insert_file_adjust_coding_function.
7269
7270 2003-04-11 Kenichi Handa <handa@m17n.org>
7271
7272 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
7273
7274 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
7275 string. Callers changed.
7276
7277 2003-04-10 Kenichi Handa <handa@m17n.org>
7278
7279 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
7280 (syms_of_fileio): Declare it as a lisp variable.
7281 (Finsert_file_contents):
7282 Call Vafter_insert_file_adjust_coding_function before calling
7283 decode-format.
7284
7285 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7286
7287 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
7288 get GtkAdjustment as widget now is a GtkRange.
7289
7290 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
7291 GtkRange to avoid memory leak.
7292
7293 2003-04-09 Kenichi Handa <handa@m17n.org>
7294
7295 * xfaces.c (Vface_font_rescale_alist): New variable.
7296 (struct font_name): New member rescale_ratio.
7297 (font_rescale_ratio): New function.
7298 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
7299 (better_font_p): On comparing point sized, pay attention to
7300 recale_ratio member of fonts.
7301 (build_scalable_font_name): Reflect font->rescale_ratio in the
7302 font name.
7303 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
7304
7305 * lread.c (read1): Before calling index, check if the 2nd
7306 arguemnt is in ASCII range.
7307
7308 2003-04-08 Richard M. Stallman <rms@gnu.org>
7309
7310 * fileio.c (Ffile_symlink_p): Doc fix.
7311
7312 * editfns.c (Fformat): Translate positions of text properties
7313 in the format string to apply them to the result.
7314
7315 * fileio.c (Finsert_file_contents): Doc fix.
7316 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
7317
7318 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
7319
7320 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
7321
7322 2003-04-08 Steven Tamm <steventamm@mac.com>
7323
7324 * mac.c (init_mac_osx_environment): Switch libexec and bin so
7325 that self-contained application finds libexec files.
7326
7327 2003-04-08 Kenichi Handa <handa@m17n.org>
7328
7329 * coding.c (code_convert_region_unwind):
7330 Set Vlast_coding_system_used to the argument.
7331 (code_convert_region): If post-read-conversion function changed
7332 the value of last-coding-sytem, keep the new value in
7333 coding->symbol so that it won't be overridden.
7334 (run_pre_post_conversion_on_str): Likewise.
7335 (coding_system_accept_latin_extra_p): New function.
7336 (find_safe_codings): Pay attention to characters registered in
7337 latin-extra-code-table.
7338
7339 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
7340
7341 * Makefile.in (md5.o): Add missing dependency info.
7342
7343 2003-04-06 Richard M. Stallman <rms@gnu.org>
7344
7345 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
7346
7347 * marker.c (verify_bytepos): New function.
7348
7349 * intervals.c (set_intervals_multibyte_1): When becoming
7350 multibyte, adjust right and left child sizes to a whole set of
7351 characters. If an interval gets zero total-length, delete it.
7352 If an interval consists of just its children, delete one of them.
7353
7354 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
7355 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
7356
7357 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
7358 All calls deleted.
7359 (lisp_malloc): Do the work here directly.
7360
7361 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
7362
7363 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
7364 char tables.
7365
7366 2003-04-04 Kenichi Handa <handa@m17n.org>
7367
7368 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
7369 destructively change "%S" to "%s".
7370
7371 2003-04-03 Miles Bader <miles@gnu.org>
7372
7373 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
7374 always set.
7375
7376 2003-04-01 Dave Love <fx@gnu.org>
7377
7378 * xfns.c (xpm_lookup_color): Grok "opaque".
7379
7380 2003-03-31 Andrew Choi <akochoi@shaw.ca>
7381
7382 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
7383 parent window ID.
7384
7385 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
7386
7387 * macterm.h (struct mac_output): Define x_pixels_diff and
7388 y_pixels_diff.
7389
7390 2003-03-31 Juanma Barranquero <lektu@terra.es>
7391
7392 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
7393 blockinput.h and files included from it.
7394
7395 2003-03-31 Kim F. Storm <storm@cua.dk>
7396
7397 The following changes consolidates the common code related to
7398 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
7399 files into frame.c.
7400
7401 * frame.c: Include blockinput.h.
7402 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
7403 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
7404 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
7405 related vars here.
7406 (struct frame_parm_table, frame_parms): New table for describing
7407 frame parameters and their associated Q-variable.
7408 The order of the parameters corresponds to the sequence of the
7409 frame_parm_handlers table in redisplay_interface.
7410 (x_fullscreen_move, x_set_frame_parameters)
7411 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
7412 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
7413 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7414 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
7415 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
7416 Generic functions for processing of frame parameters.
7417 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
7418 (display_x_get_resource, x_get_resource_string): Functions for
7419 generic access to X resources.
7420 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7421 (x_default_parameter, Fx_parse_geometry): Functions for generic
7422 access to frame parameters.
7423 (x_figure_window_size): Generic calculation of frame size.
7424 Fixed to add space needed for tool bar. Also setup size_hint_flags.
7425 (syms_of_frame): Intern and staticpro frame parameter variables.
7426 Defvar_lisp Vx_resource_class and Vx_resource_name here.
7427 Defsubr Sx_get_resource and Sx_parse_geometry.
7428
7429 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
7430 parameter related vars defined in frame.c.
7431 (EMACS_CLASS): Define here.
7432 (enum FULLSCREEN_*): Define here.
7433 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
7434 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
7435 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
7436 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
7437 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
7438 (x_set_visibility, x_set_autoraise, x_set_autolower)
7439 (x_set_unsplittable, x_set_vertical_scroll_bars)
7440 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
7441 (x_figure_window_size): Add prototypes.
7442
7443 * dispextern.h (frame_parm_handler): New typedef.
7444 (struct redisplay_interface): New member frame_parm_handlers.
7445 (enum resource_types): Move declaration here.
7446 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7447 (x_default_parameter): Add prototypes.
7448
7449 * window.c: Remove extern decl for frame parameter vars.
7450 (change_window_heights): New generic function;
7451 replaces x_change_window_heights. All users changed.
7452
7453 * window.h (change_window_heights): Add prototype.
7454
7455 * xfaces.c: Remove extern decl for frame parameter vars.
7456
7457 * xterm.h (EMACS_CLASS): Remove. Use generic define.
7458 (struct w32_display_info): Fix type of xrdb member.
7459 (enum FULLSCREEN_*): Remove.
7460 Remove prototypes for generic functions (in frame.h).
7461
7462 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7463 parameters now defined in frame.h and frame.c.
7464 (Vx_resource_name): Remove. Use generic var.
7465 (enum x_frame_parms): Remove (bogus, unused enum).
7466 (check_x_display_info): Make non-static (for frame.c).
7467 (struct x_frame_parm_table, x_frame_parms): Remove.
7468 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7469 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7470 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7471 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7472 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7473 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7474 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7475 Remove. Use generic functions instead.
7476 (enum resource_types): Remove.
7477 (x_set_scroll_bar_default_width): New global function (for frame.c).
7478 (Fx_create_frame): Depend on x_figure_window_size to add space for
7479 toolbar and setup size_hint_flags.
7480 (x_frame_parm_handlers): New table for redisplay_interface.
7481 (syms_of_xfns): Don't intern/staticpro removed vars.
7482
7483 * xterm.c: Remove unnecessary extern declarations.
7484 (x_fullscreen_adjust): Remove. Use generic instead.
7485 (x_redisplay_interface): Add x_frame_parm_handlers member.
7486
7487 * w32gui.h (XrmDatabase): New (dummy) typedef.
7488
7489 * w32term.h (EMACS_CLASS): Remove. Use generic define.
7490 (struct w32_display_info): Fix type of xrdb member.
7491 (enum FULLSCREEN_*): Remove.
7492 (x_fullscreen_adjust): Remove prototype.
7493
7494 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7495 parameters now defined in frame.h and frame.c.
7496 (Vx_resource_name): Remove. Use generic var.
7497 (enum x_frame_parms): Remove (bogus, unused enum).
7498 (check_x_display_info): Make non-static (for frame.c).
7499 (struct x_frame_parm_table, x_frame_parms): Remove.
7500 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7501 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7502 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7503 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7504 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7505 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7506 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7507 Remove. Use generic functions instead.
7508 (enum resource_types): Remove.
7509 (x_set_scroll_bar_default_width): New global function (for frame.c).
7510 (Fx_create_frame): Depend on x_figure_window_size to add space for
7511 toolbar and setup size_hint_flags.
7512 (w32_frame_parm_handlers): New table for redisplay_interface.
7513 (syms_of_w32fns): Don't intern/staticpro removed vars.
7514
7515 * w32term.c: Remove unnecessary extern declarations.
7516 (x_fullscreen_adjust): Remove. Use generic instead.
7517 (x_redisplay_interface): Add w32_frame_parm_handlers member.
7518
7519 * w32reg.c (x_get_string_resource): Use XrmDatabase.
7520
7521 * macgui.h (XrmDatabase): New (dummy) typedef.
7522
7523 * macterm.h (EMACS_CLASS): Remove.
7524 (struct mac_display_info): Add xrdb member.
7525 (struct mac_output): Add want_fullscreen member.
7526
7527 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7528 parameters now defined in frame.h and frame.c.
7529 (Vx_resource_name): Remove. Use generic var.
7530 (check_x_display_info): Make non-static (for frame.c).
7531 (struct x_frame_parm_table, x_frame_parms): Remove.
7532 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7533 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7534 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7535 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7536 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7537 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7538 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7539 Remove. Use generic functions instead.
7540 (enum resource_types): Remove.
7541 (x_set_scroll_bar_default_width): New global function (for frame.c).
7542 (mac_frame_parm_handlers): New table for redisplay_interface.
7543 (syms_of_macfns): Don't intern/staticpro removed vars.
7544
7545 * macterm.c: Remove unnecessary extern declarations.
7546 (x_redisplay_interface): Add mac_frame_parm_handlers member.
7547
7548 * Makefile.in (frame.o): Add dependency on blockinput.h and files
7549 included from it (atimer.h and systime.h).
7550
7551 2003-03-30 Andreas Schwab <schwab@suse.de>
7552
7553 * xdisp.c (x_insert_glyphs): Fix swapped width and height
7554 parameters for shift_glyphs_for_insert.
7555
7556 * macterm.c (x_redisplay_interface): Add missing entry for
7557 draw_vertical_window_border.
7558
7559 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7560
7561 * fileio.c (Fexpand_file_name): In the no-handler case, after
7562 expanding, look again for a handler and invoke it. This is needed
7563 for filenames like "/foo/../user@host:/bar/../baz" -- the first
7564 expansion produces "/user@host:/bar/../baz" which needs to be
7565 expanded again for the finame result "/user@host:/baz".
7566
7567 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7568
7569 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
7570 of area to be redrawn for better performance.
7571
7572 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
7573
7574 * xterm.c (take_vertical_position_into_account): Remove.
7575 (xt_action_hook): Call set_vertical_scroll_bar if needed.
7576 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
7577 (xm_scroll_callback, x_create_toolkit_scroll_bar)
7578 (x_set_toolkit_scroll_bar_thumb): Simplify.
7579 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
7580 (XTread_socket): Remove unused var.
7581 (x_make_frame_invisible): Replace goto with else.
7582
7583 * xdisp.c (set_vertical_scroll_bar): New fun.
7584 (redisplay_window): Use it.
7585
7586 2003-03-26 Richard M. Stallman <rms@gnu.org>
7587
7588 * xdisp.c (update_tool_bar): Recompute tool bar if
7589 update_mode_lines is set. Set w->update_mode_line
7590 only if the tool bar contents actually change.
7591 (update_menu_bar): Undo previous change.
7592
7593 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7594
7595 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
7596 (xg_frame_set_char_size): Calculate scroll bar width before frame
7597 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
7598 (xg_separator_p): Check for all documented separator types.
7599 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
7600 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
7601
7602 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
7603 so tool bar gets updated.
7604
7605 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
7606
7607 * data.c (store_symval_forwarding): Re-instate part of the code
7608 that was deleted with too much enthusiasm.
7609
7610 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
7611
7612 * data.c (store_symval_forwarding): Delete special read-only
7613 hack for type == -1, since we now use ->constant instead.
7614 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
7615
7616 * buffer.c (overlays_in): Declare static.
7617 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
7618 `constant' field rather than the variable's `type' field.
7619
7620 2003-03-24 Andrew Choi <akochoi@shaw.ca>
7621
7622 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
7623
7624 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
7625
7626 * fns.c [MAC_OSX]: Do not redefine vector.
7627
7628 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
7629
7630 * macgui.h: Remove definition of No_Cursor.
7631
7632 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
7633
7634 * xdisp.c: Define No_Cursor.
7635 (x_write_glyphs, notice_overwritten_cursor)
7636 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
7637 (note_mouse_highlight): Remove Mac-specific code.
7638 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
7639
7640 2003-03-24 John Paul Wallington <jpw@gnu.org>
7641
7642 * xdisp.c (redisplay_window): If mini window's buffer is not
7643 empty, then redisplay it like other windows.
7644
7645 2003-03-23 Kim F. Storm <storm@cua.dk>
7646
7647 * w32term.c (w32_draw_window_cursor): Fix last change.
7648
7649 2003-03-23 Kenichi Handa <handa@m17n.org>
7650
7651 * alloc.c (make_string_from_bytes, make_specified_string):
7652 Add `const' for the arg CONTENTS.
7653
7654 * lisp.h (make_string_from_bytes, make_specified_string):
7655 Prototypes adjusted.
7656
7657 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7658
7659 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
7660
7661 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
7662 (XG_SB_RANGE): New define.
7663
7664 * gtkutil.c (xg_fixed_handle_expose): New function.
7665 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
7666 expose events.
7667 (xg_update_scrollbar_pos): Take two more arguments, left and width
7668 of scroll bar including borders.
7669 Clear left and right part outside scroll bar separately as some
7670 themes have bars that are not an even number of pixels.
7671 Don't set reallocate_redraws, don't call
7672 gdk_window_process_all_updates.
7673 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
7674 so no need to change it. Calculate size and value with XG_SB_RANGE.
7675
7676 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
7677 Pass left and width of scroll bar including borders to
7678 xg_update_scrollbar_pos.
7679
7680 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
7681
7682 * Makefile.in: Make sure space precedes end-of-line backslashes.
7683
7684 2003-03-22 Kim F. Storm <storm@cua.dk>
7685
7686 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
7687 Add generic versions here. Remove system specific versions
7688 defined elsewhere.
7689
7690 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
7691 Add prototypes.
7692
7693 * xterm.h (STORE_NATIVE_RECT): New macro.
7694
7695 2003-03-21 Kim F. Storm <storm@cua.dk>
7696
7697 * xdisp.c (get_glyph_string_clip_rect):
7698 Use FRAME_INTERNAL_BORDER_WIDTH.
7699
7700 * dispextern.h (struct redisplay_interface): Add active_p
7701 argument to draw_window_cursor member. All uses changed.
7702
7703 2003-03-21 Kim F. Storm <storm@cua.dk>
7704
7705 The following changes consolidate code related to writing and
7706 inserting glyphs, exposing frame, the tool bar, the mouse face,
7707 the output cursor, and help echo from xterm.c, w32term.c and
7708 macterm.c into xdisp.c. It also generalizes the use of the
7709 window_part enum instead of using numeric values throughout.
7710
7711 * xdisp.c: Consolidate gui-independent code here.
7712 Include keymap.h.
7713 (Qhelp_echo): Import.
7714 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7715 (help_echo_string, help_echo_window, help_echo_object)
7716 (previous_help_echo_string, help_echo_pos): Declare here.
7717 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7718 (estimate_mode_line_height): Define here. Handle windowing
7719 systems directly (without using estimate_mode_line_height_hook).
7720 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7721 (update_window_cursor, update_cursor_in_window_tree)
7722 (fast_find_position, fast_find_string_pos)
7723 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7724 (expose_area, expose_line, expose_overlaps, expose_window)
7725 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7726 declared static as they are only used locally in xdisp.c.
7727 (draw_glyphs): Rename from x_draw_glyphs and make static.
7728 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7729 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7730 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
7731 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
7732 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7733 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7734 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7735 (note_mouse_highlight, x_clear_window_mouse_face)
7736 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7737 (x_intersect_rectangles): New generic functions for use by xdisp.c
7738 and GUI front-ends.
7739 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7740 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7741
7742 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7743 (NativeRectangle): Generic typedef for rectangle type.
7744 (enum window_part): Move here from window.c.
7745 (struct redisplay_interface): New members flush_display_optional,
7746 define_frame_cursor, clear_frame_area, draw_window_cursor,
7747 draw_vertical_window_border, shift_glyphs_for_insert.
7748 Rename member clear_mouse_face to clear_window_mouse_face.
7749 (estimate_mode_line_height_hook): Remove hook.
7750 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7751 (tool_bar_item_info): Remove prototype.
7752 (help_echo_string, help_echo_window, help_echo_object)
7753 (previous_help_echo_string, help_echo_pos)
7754 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7755 (x_stretch_cursor_p, output_cursor): Declare extern.
7756 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7757 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7758 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7759 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7760 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7761 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7762 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7763 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7764 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7765 Add prototypes.
7766 (mode_line_string, marginal_area_string): Fix prototypes.
7767
7768 * window.c (enum window_part): Move to dispextern.h.
7769 (coordinates_in_window): Use enum window_part member names
7770 instead of numbers to describe return value.
7771 (struct check_window_data): Change part member to window_part.
7772 (check_window_containing): Return window_part unaltered.
7773 (window_from_coordinates): Change part arg from int to enum
7774 window_part. Allow part arg to be null. All users changed.
7775
7776 * window.h (window_from_coordinates): Fix prototype.
7777
7778 * term.c (estimate_mode_line_height): Move to xdisp.c.
7779
7780 * keyboard.c (make_lispy_event): Use enum window_part.
7781
7782 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7783 window_part instead of int in arg list. Users changed.
7784
7785 * xterm.h (No_Cursor): Declare as None for X.
7786 (struct mac_output): Replace member cross_cursor by hand_cursor.
7787
7788 * xterm.c: Remove consolidated defines and code.
7789 (BETWEEN): Remove unused macro.
7790 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7791 (x_define_frame_cursor, x_clear_frame_area)
7792 (x_draw_window_cursor): New X-specific functions for RIF.
7793 (x_redisplay_interface): Add new members.
7794
7795 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7796
7797 * w32term.h (struct w32_output): Remove cross_cursor member.
7798
7799 * w32term.c: Remove consolidated defines and code.
7800 (BETWEEN): Remove unused macro.
7801 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7802 (w32_define_frame_cursor, w32_clear_frame_area)
7803 (w32_draw_window_cursor): New W32-specific functions for RIF.
7804 (w32_redisplay_interface): Add new members.
7805
7806 * w32gui.h (No_Cursor): Define as 0 for W32.
7807 (XRectangle): Add X compatible rectangle type.
7808 (NativeRectangle): Declare as RECT for W32.
7809 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7810
7811 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7812
7813 * w32console.c: Remove consolidated defines and code.
7814
7815 * msdos.h (Display_Info): Add generic typedef.
7816
7817 * msdos.c: Remove consolidated defines and code.
7818 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7819
7820 * macterm.h (struct mac_output): Replace member cross_cursor by
7821 hand_cursor.
7822 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7823
7824 * macterm.c: Remove consolidated defines and code.
7825 (BETWEEN): Remove unused macro.
7826 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7827 (mac_define_frame_cursor, mac_clear_frame_area)
7828 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7829 (x_redisplay_interface): Add new members.
7830
7831 * macgui.h (No_Cursor): Define as 0 for Mac.
7832 (XRectangle): Add X compatible rectangle type.
7833 (NativeRectangle): Declare as Rect for Mac.
7834 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7835
7836 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7837 (x_set_cursor_color): Use x_display_and_set_cursor.
7838
7839 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
7840 included from it. Add dependency on keymap.h.
7841
7842 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7843
7844 2003-03-21 Kenichi Handa <handa@m17n.org>
7845
7846 * fileio.c (Fexpand_file_name): Fix previous change.
7847
7848 2003-03-19 Kenichi Handa <handa@m17n.org>
7849
7850 * fileio.c (Ffile_name_directory): Reconstruct file name by
7851 make_specified_string.
7852 (Ffile_name_nondirectory, Ffile_name_as_directory)
7853 (Fdirectory_file_name, Fexpand_file_name)
7854 (Fsubstitute_in_file_name): Likewise.
7855 (Fread_file_name): Compare decoded homedir with DIR and
7856 DEFAULT_FILENAME.
7857
7858 * alloc.c (make_specified_string): If NCHARS is negative, count
7859 the number of characters.
7860
7861 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7862
7863 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7864 all widgets.
7865
7866 * gtkutil.h: Removed xg_ignore_next_thumb.
7867
7868 2003-03-18 Kenichi Handa <handa@m17n.org>
7869
7870 * coding.c (Vchar_coding_system_table): Remove this variable.
7871 (Vcoding_system_safe_chars): New variable.
7872 (intersection): Remove this function.
7873 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7874 all codings in SAFE_CODINGS.
7875 (Ffind_coding_systems_region_internal): Adjust for the change of
7876 find_safe_codings. Get generic coding systems from
7877 Vcoding_system_safe_chars.
7878 (Fdefine_coding_system_internal): New function.
7879 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7880 Initialize and staticpro Vcoding_system_safe_chars.
7881
7882 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7883
7884 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
7885 equal old values before updating.
7886
7887 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
7888
7889 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
7890
7891 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7892
7893 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
7894 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
7895 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
7896 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
7897 (xg_create_scroll_bar): Pass bar to button event callback.
7898 (xg_find_top_left_in_fixed): New function.
7899 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7900 whole scroll bar area. Get old position with
7901 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7902 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7903 dragging is in progress. Calculate whole as for Motif.
7904 Remove code that saved last values. Call gtk_range functions to
7905 set scroll bar sizes.
7906
7907 * gtkutil.h: Removed xg_ignore_next_thumb.
7908
7909 2003-03-17 Juanma Barranquero <lektu@terra.es>
7910
7911 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7912 and files included from it.
7913
7914 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7915
7916 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7917 multiple occurrences of the same keymap under different prefixes.
7918 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7919
7920 2003-03-16 Jason Rumney <jasonr@gnu.org>
7921
7922 * w32gui.h: Use HDC for Display.
7923
7924 * w32term.c (w32_encode_char): Prevent double-byte chars from
7925 crashing Emacs.
7926
7927 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7928 as binary.
7929
7930 2003-03-16 Juanma Barranquero <lektu@terra.es>
7931
7932 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7933
7934 2003-03-16 Kim F. Storm <storm@cua.dk>
7935
7936 The following changes consolidate some of the gui-independent
7937 parts of the processing and drawing of "glyph strings" from
7938 xterm.c, w32term.c, and macterm.c into xdisp.c.
7939
7940 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7941 21 bits (this reduces number of faces from 4M to 2M).
7942 Replace W32 specific w32_font_type member (2 bits) by generic
7943 font_type member (3 bits) for portability.
7944 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7945 (enum draw_glyphs_face): Define here.
7946 (struct glyph_string): Define here. Merge W32 and X versions.
7947 (struct redisplay_interface): New members per_char_metric,
7948 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7949 (VCENTER_BASELINE_OFFSET): Define here.
7950 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7951 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7952
7953 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7954 (dump_glyph_string): Moved here.
7955 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7956 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7957 (fill_composite_glyph_string, fill_glyph_string)
7958 (fill_image_glyph_string, fill_stretch_glyph_string)
7959 (left_overwritten, left_overwriting, right_overwritten)
7960 (right_overwriting, get_char_face_and_encoding)
7961 (set_glyph_string_background_width, compute_overhangs_and_x)
7962 (append_glyph, append_composite_glyph, produce_image_glyph)
7963 (take_vertical_position_into_account, append_stretch_glyph)
7964 (produce_stretch_glyph): New generic functions (based on X version).
7965 Call platform specific functions through rif.
7966 (INIT_GLYPH_STRING): New macro, hides W32 details.
7967 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7968 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7969 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7970 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7971 (notice_overwritten_cursor):
7972 Generic functions exported to platform modules. Users changed.
7973
7974 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7975 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7976 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
7977 New macros for consolidated code.
7978
7979 * xterm.c: Remove consolidated defines and code.
7980 (x_per_char_metric, x_encode_char)
7981 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7982 (x_redisplay_interface): Add new members.
7983
7984 * w32gui.h (Display): Add dummy typedef for consolidation.
7985 (XChar2b): Define alias for wchar_t for consolidation.
7986 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7987
7988 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
7989 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
7990 New macros for consolidation.
7991
7992 * w32term.c: Remove consolidated defines and code.
7993 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7994 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7995 (w32_per_char_metric): Change font_type arg to int for RIF.
7996 (w32_encode_char): Return int according to RIF requirements.
7997 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7998 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7999 x_get_glyph_overhangs.
8000 (w32_redisplay_interface): Add new members.
8001
8002 * macgui.h (XChar2b): Move typedef here for consolidation.
8003 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
8004
8005 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
8006 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
8007 consolidation.
8008
8009 * macterm.c: Remove consolidated defines and code.
8010 (mac_per_char_metric): New function for RIF.
8011 (mac_encode_char): Adapt to new RIF requirements.
8012 (mac_compute_glyph_string_overhangs): Adapt for RIF.
8013 (x_redisplay_interface): Add new members.
8014
8015 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
8016
8017 * keymap.c (Vmenu_events): New var.
8018 (syms_of_keymap): Initialize it.
8019 (where_is_internal): Check more carefully what is a menu event.
8020
8021 2003-03-14 Richard M. Stallman <rms@gnu.org>
8022
8023 * lread.c (read1): After #!, exit loop on eof.
8024
8025 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8026
8027 * gtkutil.h: Add declaration for xg_frame_cleared.
8028
8029 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
8030
8031 * gtkutil.c (struct xg_last_sb_pos): New structure.
8032 (handle_fixed_child): New function.
8033 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
8034 and force a redraw on them.
8035 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
8036 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
8037 so we can avoid unneeded redraws.
8038 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
8039 and force a redraw on the scroll bar.
8040 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
8041 if xg_last_sb_pos shows the positions are up to date.
8042 (xg_frame_cleared): New function.
8043
8044 2003-03-13 Kenichi Handa <handa@m17n.org>
8045
8046 * coding.c (Fdetect_coding_region): Fix docstring.
8047 (Fdetect_coding_string): Fix docstring.
8048
8049 2003-03-13 Andreas Schwab <schwab@suse.de>
8050
8051 * gtkutil.c: Add prototype for create_menus.
8052
8053 * data.c (long_to_cons): Fix type of top.
8054
8055 * xselect.c (selection_data_to_lisp_data): Use int instead of
8056 long for an integer of size 4.
8057
8058 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
8059 (xg_tool_bar_help_callback): Likewise.
8060
8061 2003-03-12 Andreas Schwab <schwab@suse.de>
8062
8063 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
8064
8065 2003-03-12 Kim F. Storm <storm@cua.dk>
8066
8067 The following changes consolidate the fringe handling from
8068 xterm.c, w32term.c, and macterm.c into xdisp.c.
8069
8070 * xdisp.c: Consolidate fringe handling code here.
8071 (left_bits, right_bits, continued_bits, continuation_bits)
8072 (ov_bits, zv_bits): Define fringe bitmaps.
8073 (fringe_bitmaps): New array holding fringe bitmaps.
8074 (draw_fringe_bitmap): Draw a specific bitmap; call display
8075 specific drawing routine via rif->draw_fringe_bitmap.
8076 (draw_row_fringe_bitmaps): Generic replacement for
8077 x_draw_row_fringe_bitmaps; all callers changed.
8078 (compute_fringe_widths): Generic replacement for
8079 x_compute_fringe_widths; all callers changed.
8080
8081 * dispextern.h (enum fringe_bitmap_type): Define here.
8082 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
8083 (fringe_bitmaps): Declare extern.
8084 (struct redisplay_interface): New member draw_fringe_bitmap.
8085 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
8086
8087 * xterm.c: Remove generic fringe code.
8088 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
8089 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
8090
8091 * w32term.c: Remove generic fringe code.
8092 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
8093 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
8094
8095 * macterm.c: Remove generic fringe code.
8096 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
8097 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
8098
8099 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
8100
8101 * print.c (Fprin1_to_string): Return unibyte string if possible.
8102
8103 2003-03-09 David Kastrup <dak@gnu.org>
8104
8105 * process.c (read_process_output): We have allocated enough space
8106 for readmax and carryover, so actually use the alloted space.
8107
8108 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8109
8110 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
8111 toolkit scrollbar click.
8112
8113 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
8114 for USE_GTK.
8115 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
8116 also.
8117 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
8118 scrollbar and control is pressed, call x_scroll_bar_handle_click.
8119
8120 * gtkutil.h: Declare xg_get_scroll_id_for_window.
8121
8122 * gtkutil.c (xg_get_scroll_id_for_window): New function.
8123 (xg_tool_bar_item_expose_callback): New function.
8124 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
8125 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
8126 on the tool bar widget.
8127 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
8128 to expose on the tool bar item widgets.
8129
8130 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8131
8132 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
8133 struct image* when deciding to update (struct image* may have been
8134 deleted from the image cache).
8135
8136 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
8137 the event isn't for a frame (i.e. for dialogs).
8138
8139 2003-03-07 Kenichi Handa <handa@m17n.org>
8140
8141 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
8142 composition components reaches the limit, terminate composing.
8143 (COMPOSITION_OK): New macro.
8144 (detect_coding_iso2022): Use it if an escape sequence for
8145 composition is found.
8146 (coding_restore_composition): Adjust the number of composition
8147 components if it is not sane.
8148
8149 2003-03-06 Juanma Barranquero <lektu@terra.es>
8150
8151 * w32term.h (struct w32_display_info): Add xrdb member to support
8152 passing resources via -xrm on Windows.
8153
8154 * w32term.c (w32_make_rdb): New function.
8155 (w32_term_init): Use it to initialize xrdb member of w32_display_info
8156 struct. Delete leftover code.
8157
8158 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
8159 for resources passed on the command line.
8160
8161 * w32reg.c (w32_get_rdb_resource): New function.
8162 (x_get_string_resource): Use it, so resources passed with -xrm
8163 supercede the ones in the registry.
8164
8165 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8166
8167 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
8168 instead of x_top_window_to_frame.
8169
8170 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8171
8172 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
8173 when restarting Emacs.
8174
8175 2003-03-03 Richard M. Stallman <rms@gnu.org>
8176
8177 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
8178 to run kill-buffer-query-functions.
8179 (Qkill_buffer_query_functions): New var.
8180 (syms_of_buffer): Init and staticpro it.
8181
8182 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8183
8184 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
8185
8186 2003-02-25 Kim F. Storm <storm@cua.dk>
8187
8188 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
8189 If centering point failed to make whole line visible and vscroll
8190 is non-zero, disable vscroll and try centering point again.
8191
8192 * lread.c (read1): Accept `single space' syntax like (? x).
8193
8194 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8195
8196 * keyboard.c (cancel_hourglass_unwind): Surround with
8197 #ifdef HAVE_X_WINDOWS
8198
8199 2003-02-25 Kenichi Handa <handa@m17n.org>
8200
8201 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
8202 process only when "subprocesses" is defined.
8203
8204 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
8205
8206 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
8207
8208 2003-02-24 Juanma Barranquero <lektu@terra.es>
8209
8210 * callint.c (fix_command): Declare as static void and move before
8211 Fcall_interactively.
8212
8213 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
8214 (syms_of_xdisp): Don't initialize Qwhen.
8215
8216 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8217
8218 * keyboard.c (cancel_hourglass_unwind): New function.
8219 (command_loop_1): Cancel hourglass with unwind-protect.
8220
8221 2003-02-23 Richard M. Stallman <rms@gnu.org>
8222
8223 * callint.c (fix_command): New subroutine, from Fcall_interactively.
8224 Detect (when ... (region-beginning)) etc.
8225 (Fcall_interactively): Call fix_command.
8226 (Qif, Qwhen): New variables.
8227 (syms_of_callint): Init and staticpro them.
8228
8229 * regex.c (print_partial_compiled_pattern): Output to stderr.
8230
8231 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8232
8233 * dired.c (directory_files_internal): Don't expand directory.
8234 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
8235 instead. From Lars Hansen <larsh@math.ku.dk>.
8236
8237 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
8238
8239 * fns.c (string_to_multibyte): Remove unused var i.
8240 (Flanginfo): Fix int/Lisp_Object mixup.
8241 (void_call2): New fun.
8242 (Fmap_char_table): Use it in place of call2.
8243
8244 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
8245
8246 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
8247
8248 * keymap.c (copy_keymap_1): Make it static.
8249
8250 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
8251
8252 2003-02-22 David Ponce <david@dponce.com>
8253
8254 * lread.c (Fload): Don't check STRING_MULTIBYTE.
8255
8256 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8257
8258 * process.h: Removed subtty field from struct Lisp_Process.
8259
8260 * process.c (create_process): Remove setting of subtty.
8261 (emacs_get_tty_pgrp): New function.
8262 (Fprocess_running_child_p, process_send_signal):
8263 Call emacs_get_tty_pgrp instead of ioctl.
8264 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
8265
8266 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8267
8268 * keymap.c (Fdefine_key): Doc fix.
8269
8270 2003-02-21 Juanma Barranquero <lektu@terra.es>
8271
8272 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
8273
8274 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
8275 POLLING_PROBLEM_IN_SELECT.
8276
8277 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
8278 Delete #undef of POLLING_PROBLEM_IN_SELECT.
8279
8280 * s/hpux10-20.h: New file.
8281
8282 * process.c (wait_reading_process_input):
8283 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
8284
8285 2003-02-20 Kenichi Handa <handa@m17n.org>
8286
8287 * fontset.c (check_fontset_name): If NAME is nil, return the
8288 default fontset.
8289 (override_font_info): New function.
8290 (Fset_fontset_font): Document that NAME nil means the default fontset.
8291 (Ffontset_info): If FONTSET is not the default fontset, merge
8292 FONTSET onto the copy of the default fontset, and work on that
8293 copy. Document that NAME nil means the default fontset.
8294 (Ffontset_font): Document that NAME nil means the default fontset.
8295
8296 * process.c (setup_process_coding_systems): If the process's
8297 in/out descriptor is -1, do nothing.
8298
8299 2003-02-19 Andreas Schwab <schwab@suse.de>
8300
8301 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
8302 Add prototypes.
8303
8304 2003-02-19 Kenichi Handa <handa@m17n.org>
8305
8306 * xfaces.c (try_alternative_families): Try all scalable fonts if
8307 Vscalable_fonts_allowed is not Qt.
8308
8309 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8310
8311 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
8312
8313 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8314
8315 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
8316 names.
8317
8318 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
8319 (sorted_font_list): Move allocation of struct font_name to
8320 x_face_list_fonts.
8321 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
8322 (Fx_list_fonts): Set maxnames to -1 to get all font names.
8323
8324 2003-02-18 Kim F. Storm <storm@cua.dk>
8325
8326 * lread.c (read1): Fix last change.
8327 "`" is not always special. Allow "?" after a character constant.
8328
8329 2003-02-18 Andrew Choi <akochoi@shaw.ca>
8330
8331 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
8332
8333 2003-02-18 Andreas Schwab <schwab@suse.de>
8334
8335 * window.c (window_scroll_pixel_based): Move outside a
8336 multi-glyph character before setting new window start.
8337
8338 * xdisp.c (in_display_vector_p): New function.
8339 * dispextern.h (in_display_vector_p): Declare.
8340
8341 2003-02-18 Kim F. Storm <storm@cua.dk>
8342
8343 * lread.c (read1): Fix and relax read syntax.
8344 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
8345 Only recognize "," after dotted-pair dot if inside backquote.
8346 Never include "`" or "," (inside backquote) in a symbol.
8347 Allow dotted-pair dot after a character constant.
8348 Allow "`" and "," (inside backquote) after a character constant.
8349
8350 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8351
8352 * gtkutil.c (xg_tool_bar_expose_callback): New function.
8353 (xg_create_tool_bar): Force style of tool bar to be horizontal with
8354 icons. Set name of tool bar to emacs-toolbar.
8355 (update_frame_tool_bar): Connect expose event to
8356 xg_tool_bar_expose_callback.
8357
8358 2003-02-17 Richard M. Stallman <rms@gnu.org>
8359
8360 * keyboard.c (this_command_key_count_reset): New variable.
8361 Initiatize to 0 where this_command_key_count is set.
8362 (read_char): Save and restore this_command_key_count_reset
8363 around input method code.
8364 (read_char): If this_command_key_count_reset, echo reread commands.
8365 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
8366
8367 2003-02-17 Kenichi Handa <handa@m17n.org>
8368
8369 * fns.c (string_to_multibyte): Always return a multibyte string.
8370
8371 2003-02-16 Jason Rumney <jasonr@gnu.org>
8372
8373 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
8374 Negative max_fonts parameter means list all.
8375
8376 2003-02-14 Dave Love <fx@gnu.org>
8377
8378 * fns.c (Flanginfo): Doc fix.
8379
8380 2003-02-13 Kim F. Storm <storm@cua.dk>
8381
8382 * lread.c (read_escape): Interpret \s as a SPACE character, except
8383 for \s-X in a character constant which still is the super modifier.
8384 (read1): Signal an `invalid read syntax' error if a character
8385 constant is immediately followed by a digit or symbol character.
8386
8387 * search.c (Fmatch_data): Doc fix. Explicitly state that
8388 match-data is undefined if last search failed.
8389
8390 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
8391 All uses changed.
8392
8393 2003-02-12 Juanma Barranquero <lektu@terra.es>
8394
8395 * eval.c (Fdefmacro): Fix typo.
8396
8397 2003-02-12 Kim F. Storm <storm@cua.dk>
8398
8399 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
8400 macro is a string, convert meta modifiers in string when copying
8401 the string into a vector.
8402
8403 2003-02-11 Kim F. Storm <storm@cua.dk>
8404
8405 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
8406
8407 2003-02-11 Kenichi Handa <handa@m17n.org>
8408
8409 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
8410
8411 2003-02-10 Kim F. Storm <storm@cua.dk>
8412
8413 * process.c: Doc fixes.
8414 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
8415
8416 2003-02-10 Kenichi Handa <handa@m17n.org>
8417
8418 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
8419
8420 * process.c (QCfilter_multibyte): New variable.
8421 (setup_process_coding_systems): New function.
8422 (Fset_process_buffer, Fset_process_filter):
8423 Call setup_process_coding_systems.
8424 (Fstart_process): Initialize the member `filter_multibyte' of
8425 struct Lisp_Process.
8426 (create_process): Call setup_process_coding_systems.
8427 (Fmake_network_process): New keyward `:filter-multibyte'.
8428 Initialize the member `filter_multibyte' of struct Lisp_Process.
8429 Call setup_process_coding_systems.
8430 (server_accept_connection): Call setup_process_coding_systems.
8431 (read_process_output): If the process has a filter, decide the
8432 multibyteness of a string to given to the filter by
8433 `filter_multibyte' member of the process. If the process doesn't
8434 have a filter and the result of conversion is unibyte, use
8435 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
8436 multibyte form.
8437 (Fset_process_coding_system): Call setup_process_coding_systems.
8438 (Fset_process_filter_multibyte): New function.
8439 (Fprocess_filter_multibyte_p): New function.
8440 (syms_of_process): Intern and staticpro QCfilter_multibyte.
8441 Defsubr Sset_process_filter_multibyte and
8442 Sprocess_filter_multibyte_p.
8443
8444 * process.h (struct Lisp_Process): New member filter_multibyte.
8445
8446 * lisp.h (setup_process_coding_systems): Add prototype.
8447
8448 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
8449 process, update coding systems for the process.
8450
8451 2003-02-09 Kenichi Handa <handa@m17n.org>
8452
8453 * fns.c (string_to_multibyte): New function.
8454 (Fstring_to_multibyte): New function.
8455 (syms_of_fns): Defsubr it.
8456
8457 2003-02-08 Andreas Schwab <schwab@suse.de>
8458
8459 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
8460 instead of the substitution.
8461
8462 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8463
8464 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
8465
8466 * xmenu.c (menu_position_func): Adjust menu popup position so that
8467 the menu is fully visible.
8468
8469 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8470
8471 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
8472 (x_make_frame_invisible, x_wm_set_icon_position):
8473 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
8474
8475 * xfns.c (x_set_name, x_set_title): Ditto.
8476
8477 2003-02-04 Richard M. Stallman <rms@gnu.org>
8478
8479 * keyboard.c (echo_now): Update before_command_echo_length.
8480 (Freset_this_command_lengths): Reset this_command_key_count etc.
8481 immediately rather than arranging to do it later.
8482 (before_command_key_count_1, before_command_echo_length_1)
8483 (before_command_restore_flag): Vars deleted.
8484 (add_command_key): Don't handle before_command_restore_flag.
8485 (read_char, record_menu_key): Don't update before_command_key_count or
8486 before_command_echo_length.
8487 (read_char): Don't handle before_command_restore_flag.
8488
8489 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
8490 in direct-output clauses if it wouldn't be called in the ordinary case.
8491
8492 2003-02-04 Kim F. Storm <storm@cua.dk>
8493
8494 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
8495
8496 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8497
8498 * gtkutil.c (remove_from_container): Copying list is not needed.
8499 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
8500 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
8501 on list returned from gtk_container_get_children to avoid memory leak.
8502
8503 2003-02-01 Jason Rumney <jasonr@gnu.org>
8504
8505 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
8506 local malloc.
8507 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
8508 definitions in xpm.h.
8509 (init_xpm_functions): New function.
8510 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
8511 (init_external_image_libraries): Try to load libXpm.dll.
8512
8513 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
8514 timestamp.
8515
8516 2003-01-31 Dave Love <fx@gnu.org>
8517
8518 * syntax.c (Fskip_chars_forward)
8519 (open-paren-in-column-0-is-defun-start): Doc fix.
8520
8521 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
8522
8523 * fileio.c: Support // at start of name for Cygwin (just added proper
8524 preprocessor tests).
8525
8526 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
8527
8528 * Makefile.in: Use @EXEEXT@ for Cygwin.
8529
8530 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
8531
8532 * s/cygwin.h: Added for Cygwin port.
8533
8534 2003-01-31 Juanma Barranquero <lektu@terra.es>
8535
8536 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
8537 when including gif_lib.h.
8538 (init_gif_functions, init_tiff_functions): New functions.
8539 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
8540 Windows. Disable color table lookups. Call library functions
8541 through pointers determined at runtime.
8542 (init_external_image_libraries): Try to load libungif.dll and
8543 libtiff.dll.
8544
8545 2003-01-31 Kenichi Handa <handa@m17n.org>
8546
8547 * xdisp.c (SKIP_GLYPHS): New macro.
8548 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
8549
8550 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8551
8552 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
8553
8554 2003-01-30 Dave Love <fx@gnu.org>
8555
8556 * alloc.c (Vgc_elapsed, gcs_done): New variables.
8557 (Fgarbage_collect): Use them.
8558 (init_alloc, syms_of_alloc): Set them up.
8559
8560 2003-01-30 Juanma Barranquero <lektu@terra.es>
8561
8562 * w32fns.c (init_external_image_libraries): Add missing operator.
8563
8564 2003-01-29 Jason Rumney <jasonr@gnu.org>
8565
8566 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
8567 an alternative name for jpeg.dll.
8568
8569 2003-01-29 Kenichi Handa <handa@m17n.org>
8570
8571 * xdisp.c (set_cursor_from_row): Pay attention to string display
8572 properties.
8573
8574 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
8575
8576 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
8577 <escape>.
8578 (keycode_to_xkeysym_table): Reformat and add more comments.
8579 (XTread_socket): Drop special case for backspace.
8580
8581 2003-01-28 Andrew Choi <akochoi@shaw.ca>
8582
8583 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
8584 values in old-style RGB specs.
8585
8586 2003-01-27 Juanma Barranquero <lektu@terra.es>
8587
8588 * w32fns.c (init_external_image_libraries): Try alternate names for the
8589 jpeg dll.
8590
8591 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8592
8593 * gtkutil.c (create_dialog, xg_separator_p)
8594 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
8595 before calling strcmp or strlen.
8596
8597 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8598
8599 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
8600 and handle image load failure.
8601
8602 2003-01-26 Jason Rumney <jasonr@gnu.org>
8603
8604 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
8605 New functions.
8606 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
8607 Disable color table lookups. Call jpeg library functions
8608 through pointers determined at runtime.
8609 (init_external_image_libraries): Try to load jpeg.dll.
8610
8611 2003-01-25 Richard M. Stallman <rms@gnu.org>
8612
8613 * lisp.h: Declare format2 instead of format1.
8614
8615 * fileio.c (barf_or_query_if_file_exists):
8616 Call format2 instead of format1.
8617
8618 * editfns.c (format2): New function, replaces format1
8619 but takes exactly two Lisp Objects as format args.
8620
8621 * buffer.c (Fkill_buffer): Call format2 instead of format1.
8622
8623 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8624
8625 * xterm.h: Change to return value of x_dispatch_event to int.
8626
8627 * xterm.c (x_filter_event): New function.
8628 (event_handler_gdk, XTread_socket): Call x_filter_event.
8629 (x_dispatch_event): Change to return value of finish.
8630 (event_handler_gdk): Use return value from x_dispatch_event.
8631
8632 * xfns.c (x_window): Call create_frame_xic for GTK version to
8633 initialize input methods.
8634
8635 * gtkutil.h: Add (void) prototypes.
8636
8637 * gtkutil.c (create_menus): Remove code that puts the help menu to
8638 the right.
8639
8640 2003-01-25 Jason Rumney <jasonr@gnu.org>
8641
8642 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
8643 [HAVE_PNG]: Sync with xfns.c version.
8644 (png_load): Adjust colors for Windows. Use Windows
8645 bitmaps. Disable color table lookups.
8646 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
8647 (init_png_functions): New function.
8648 (png_read_from_memory, png_load): Call png library functions
8649 through pointers determined at runtime.
8650 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
8651 (init_external_image_libraries): New function.
8652 (init_xfns): Call it.
8653
8654 2003-01-24 Andreas Schwab <schwab@suse.de>
8655
8656 * minibuf.c (Fminibuffer_message): Verify type of parameter.
8657
8658 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8659
8660 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
8661 of static initializer.
8662
8663 2003-01-24 Dave Love <fx@gnu.org>
8664
8665 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
8666 architectures.
8667
8668 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
8669 Use __alignof__.
8670
8671 2003-01-24 Kenichi Handa <handa@m17n.org>
8672
8673 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
8674 It it is nonzero, don't pretend that an invisible area doesn't exist.
8675 (command_loop_1): Call adjust_point_for_property with proper
8676 second arg.
8677
8678 2003-01-22 Jason Rumney <jasonr@gnu.org>
8679
8680 Sync changes with xterm.c and xfns.c.
8681
8682 * w32term.c (x_draw_glyph_string_foreground)
8683 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8684
8685 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
8686 phys_cursor's hpos is overwritten. This is still not completely
8687 correct, as it doesn't really make sense to use hpos at all to
8688 get the cursor glyph (as that is relative to the width of the
8689 characters on the line, which may have changed during the update).
8690
8691 * w32term.c (notice_overwritten_cursor): Handle the special case
8692 of the cursor being in the first blank non-text line at the
8693 end of a window.
8694
8695 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8696 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8697 Compute from the x position returned by x_draw_glyphs.
8698
8699 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8700 except for NO_CURSOR and system caret, to make phys_cursor_width
8701 contain what its name suggests.
8702 (notice_overwritten_cursor): Consider the cursor image erased if
8703 the output area intersects the cursor image in y-direction.
8704
8705 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8706 note_mode_line_highlight and extend.
8707
8708 * w32term.c (last_window): New variable.
8709 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8710 (note_mouse_movement): Remove reimplemented code in #if 0.
8711
8712 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8713 not update_mode_lines, and always set it to 1.
8714
8715 2003-01-21 Jason Rumney <jasonr@gnu.org>
8716
8717 * w32fns.c (IDC_HAND): Define it if system headers don't.
8718
8719 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8720
8721 * w32term.h (struct w32_output): New member hand_cursor.
8722 (WM_EMACS_SETCURSOR): New message definition.
8723
8724 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8725 function w32_define_cursor.
8726 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8727 position, change member name output_data.x to output_data.w32 and
8728 add function w32_define_cursor.
8729 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8730 and change member name output_data.x to output_data.w32.
8731 (w32_initialize_display_info):
8732 Setup dpyinfo->vertical_scroll_bar_cursor.
8733
8734 * w32fns.c (Vx_hand_shape): New variable.
8735 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8736 WM_EMACS_SETCURSOR.
8737 (x-create-frame): Setup Cursor types.
8738
8739 2003-01-21 David Ponce <david@dponce.com>
8740
8741 * w32term.c (w32_encode_char): For DIM=1 charset, set
8742 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
8743 x_encode_char change by Kenichi Handa <handa@m17n.org> on
8744 2002-09-30.)
8745 (w32_draw_relief_rect): Declare all args.
8746 (w32_define_cursor): New.
8747
8748 * w32fns.c (w32_load_cursor): New function.
8749 (w32_init_class): Use it.
8750 (x_put_x_image): Declare all args.
8751
8752 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
8753
8754 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8755
8756 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8757
8758 * gtkutil.c: Must include stdio.h before termhooks.h
8759
8760 2003-01-21 Dave Love <fx@gnu.org>
8761
8762 * alloc.c (Fgc_status): Print zombie list.
8763 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8764 Fix assignment of zombies.
8765 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8766 Don't take car of non-cons.
8767
8768 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8769
8770 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8771
8772 2003-01-20 David Ponce <david@dponce.com>
8773
8774 * w32menu.c (digest_single_submenu): Declare all args.
8775
8776 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8777 changes in xmenu.c:
8778
8779 (parse_single_submenu): Use individual keymap's prompt
8780 string as pane name, if there is one.
8781 (set_frame_menubar): Save menu_items_n_panes from each call to
8782 parse_single_submenu and use it when calling digest_single_submenu.
8783
8784 2003-01-20 Steven Tamm <steventamm@mac.com>
8785
8786 * macterm.c (XTread_socket): Checks for valid, visible window
8787 before sending a scroll-wheel event.
8788
8789 2003-01-20 Richard M. Stallman <rms@gnu.org>
8790
8791 * xdisp.c (redisplay_window): If mini window's buffer is not
8792 a minibuffer, then redisplay it like other windows.
8793
8794 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8795
8796 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8797 external tool bar before setting tool bar height.
8798
8799 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8800
8801 * xterm.c (handle_one_xevent): Surround popup_activated
8802 with #ifdef:s for non-toolkit version.
8803
8804 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8805 (gtkutil.o): New file.
8806 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8807 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8808
8809 * gtkutil.c: New file for GTK version.
8810
8811 * gtkutil.h: New file for GTK version.
8812
8813 * xterm.h: Add xt_or_gtk_widget.
8814 Include gtk files for USE_GTK.
8815 (struct x_output): Add toolbar_height.
8816 (struct x_output): Add GTK widgets and Gdk size_hints.
8817 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8818 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8819 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8820
8821 * xterm.c: Include gtkutil.h for USE_GTK.
8822 Declare extern void free_frame_menubar for USE_GTK.
8823 (note_mouse_highlight): Check popup_activated for USE_GTK.
8824 (xt_action_hook): Don't compile if USE_GTK.
8825 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8826 (xg_scroll_callback): New function.
8827 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8828 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8829 for USE_GTK.
8830 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8831 xg_show_scroll_bar for USE_GTK.
8832 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8833 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8834 (event_handler_gdk): New function for USE_GTK.
8835 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8836 (handle_one_xevent): Make sure widget is mapped before
8837 calling x_real_positions for USE_GTK.
8838 (XTread_socket): Add GTK event loop for USE_GTK.
8839 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8840 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8841 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8842 (x_iconify_frame): Add code for USE_GTK.
8843 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8844 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8845 is in gtkutil.c.
8846 (x_term_init): Add initialization for GTK.
8847 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8848
8849 * xmenu.c: Include gtkutil.h for USE_GTK.
8850 (Fx_popup_menu): Use current position if x and y is NIL.
8851 (single_menu_item, single_menu_item, Fx_popup_dialog):
8852 Check for USE_GTK.
8853 (popup_widget_loop): New function for USE_GTK.
8854 (x_activate_menubar): Add code for USE_GTK.
8855 (popup_activate_callback, popup_deactivate_callback)
8856 (menu_highlight_callback, menubar_selection_callback):
8857 Add USE_GTK versions.
8858 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8859 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8860 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8861 is in gtkutil.c.
8862 (popup_selection_callback): New version for USE_GTK.
8863 (create_and_show_popup_menu): New fuction, one USE_GTK version and
8864 one USE_X_TOOLKIT version.
8865 (xmenu_show): Call create_and_show_popup_menu.
8866 (dialog_selection_callback): New version for USE_GTK.
8867 (create_and_show_dialog): New fuction, one USE_GTK version and
8868 one USE_X_TOOLKIT version.
8869 (xdialog_show): Call create_and_show_dialog.
8870
8871 * xfns.c: Include gtkutil for USE_GTK.
8872 (x_window_to_frame, x_any_window_to_frame)
8873 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8874 (x_top_window_to_frame): Add code for USE_GTK.
8875 (x_set_background_color): Call xg_set_background_color for GTK.
8876 (x_set_menu_bar_lines): Check for USE_GTK.
8877 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8878 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8879 (x_window): Call xg_create_frame_widgets for USE_GTK.
8880 (Fx_create_frame): Check for USE_GTK
8881 (Fx_file_dialog): New implementation for USE_GTK.
8882
8883 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
8884 (update_menu_bar): Add check for USE_GTK.
8885 (update_tool_bar): Add check for USE_GTK and external tool bar.
8886 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
8887 (redisplay_internal): Add check for USE_GTK and popup_activated.
8888 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
8889 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
8890 (display_menu_bar): Add check for USE_GTK
8891
8892 * lisp.h: Declare Vx_resource_name extern.
8893
8894 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
8895 for USE_GTK.
8896 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
8897
8898 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8899 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8900 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8901
8902 * fileio.c (Fread_file_name): Add check for USE_GTK.
8903
8904 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8905 Add check for USE_GTK.
8906
8907 * config.in: Added HAVE_GTK
8908
8909 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8910
8911 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8912
8913 * charset.h (Funibyte_char_to_multibyte): Export.
8914
8915 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8916
8917 * xmenu.c (mouse_position_for_popup): New function.
8918 (Fx_popup_menu): Call mouse_position_for_popup for X and
8919 mouse_position_hook for others.
8920
8921 2003-01-17 Kim F. Storm <storm@cua.dk>
8922
8923 * editfns.c (Finsert): Mention `string-make-multibyte' and
8924 `string-as-multibyte' in doc string.
8925
8926 2003-01-17 Kenichi Handa <handa@m17n.org>
8927
8928 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
8929
8930 * editfns.c (Fformat): Convert an unibyte char argument that is
8931 formatted by "%c" to multibyte if the total result must be a
8932 multibyte string.
8933
8934 2003-01-16 Kim F. Storm <storm@cua.dk>
8935
8936 * process.c (set-process-filter): Document unibyte/multibyte-ness
8937 of string argument.
8938
8939 2003-01-16 Kenichi Handa <handa@m17n.org>
8940
8941 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
8942
8943 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8944 (re_search_2): Likewise.
8945
8946 2003-01-15 Kenichi Handa <handa@m17n.org>
8947
8948 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8949 buffer is unibyte.
8950
8951 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
8952
8953 * fns.c (Fsubstring): Clarify doc string.
8954
8955 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8956 (Fprevious_char_property_change)
8957 (Fnext_single_char_property_change)
8958 (Fprevious_single_char_property_change, Fnext_property_change)
8959 (Fnext_single_property_change, Fprevious_property_change)
8960 (Fprevious_single_property_change, Fadd_text_properties)
8961 (Fput_text_property, Fset_text_properties)
8962 (Fremove_text_properties, Fremove_list_of_text_properties)
8963 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
8964
8965 2003-01-14 Kim F. Storm <storm@cua.dk>
8966
8967 * process.h (struct Lisp_Process): New member plist replaces old
8968 member private_vars. All uses changed.
8969
8970 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
8971 (QCplist): Rename from QCvars. Change all uses.
8972 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
8973 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
8974 (syms_of_process): Intern, staticpro, defsubr these.
8975 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
8976
8977 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
8978
8979 * m/delta.h: Remove (obsolete).
8980
8981 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
8982
8983 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8984 behaviour in front of symlinks.
8985 (Fdelete_file): Raise an error on directories.
8986
8987 2003-01-13 Dave Love <fx@gnu.org>
8988
8989 * fns.c (Freverse): Use QUIT.
8990
8991 2003-01-13 Richard M. Stallman <rms@gnu.org>
8992
8993 * minibuf.c (minibuffer_completion_contents):
8994 Error if point is inside prompt.
8995
8996 * keyboard.c (command_loop_1): Don't redisplay directly
8997 if there's a post-command-hook.
8998
8999 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
9000 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
9001
9002 2003-01-12 Kim F. Storm <storm@cua.dk>
9003
9004 * process.h (struct Lisp_Process): New member private_vars.
9005
9006 * process.c (QCvars): New variable.
9007 (syms_of_process): Intern and staticpro it.
9008 (Fset_process_contact): Removed function.
9009 (Fprocess_variable, Fset_process_variable): New functions.
9010 (syms_of_process): Defsubr them.
9011 (Fstart_process): Initialize private_vars plist to nil.
9012 (Fmake_network_process): New arg :vars to setup the private
9013 variables for new network process.
9014 (server_accept_connection): Copy server's private variables to
9015 client process.
9016
9017 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
9018 crashes). Code rewritten and simplified. Now directly aligns the
9019 pointer and recalculates pure_bytes_used, rather than aligning the
9020 size and adjusting the pointer.
9021
9022 2003-01-11 Kim F. Storm <storm@cua.dk>
9023
9024 * process.c (Fset_process_contact): New function.
9025 (syms_of_process): defsubr it.
9026 (make-network-process): Update doc.
9027
9028 2003-01-10 Andreas Schwab <schwab@suse.de>
9029
9030 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
9031 Reported by Berthold Gunreben <b.gunreben@web.de>.
9032
9033 2003-01-10 Dave Love <fx@gnu.org>
9034
9035 * composite.c (syms_of_composite): Make composition_hash_table weak.
9036
9037 2003-01-09 Kim F. Storm <storm@cua.dk>
9038
9039 * process.c (Fmake_network_process): Convert new port number
9040 to host byte order for `:service t' case. From Mario Lang.
9041
9042 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9043
9044 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
9045 instead of XtAppProcessEvent.
9046
9047 * xterm.c (handle_one_xevent): New function.
9048 (x_dispatch_event): New function.
9049 (XTread_socket): Call handle_one_xevent.
9050
9051 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
9052
9053 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
9054 call XQueryPointer to get coordinates.
9055 (popup_get_selection): Do not set popup_activated_flag to zero,
9056 let popup_deactivate_callback do that. Needed for Motif.
9057 Call x_dispatch_event instead of XtDispatchEvent.
9058 (xmenu_show): Calculate root coordinate from frame top/left position.
9059
9060 2003-01-08 Kim F. Storm <storm@cua.dk>
9061
9062 * process.c (server_accept_connection): Fix recording of new
9063 connection's local address in :local property of contact info.
9064 (Fmake_network_process): Record local network address for new
9065 client processes in :local property of contact info.
9066 (format-network-address): Add arg OMIT-PORT. Change callers.
9067
9068 2003-01-07 Dave Love <fx@gnu.org>
9069
9070 * Makefile.in (fns.o): Depend on coding.h.
9071
9072 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
9073
9074 * minibuf.c (Fread_variable): Doc fix.
9075
9076 * eval.c (Fuser_variable_p): Doc change. For custom variables,
9077 use the same test as for custom-variable-p.
9078
9079 2003-01-05 Richard M. Stallman <rms@gnu.org>
9080
9081 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
9082 Count LAST_LINE_MISFIT in scroll margin for end of window.
9083 Move label too_near_end before setting SCROLL_MARGIN_POS.
9084 Set LAST_LINE_MISFIT before jumping there.
9085
9086 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
9087 scroll_conservatively case. If scrolling that much doesn't change
9088 STARTP, move it down one line.
9089
9090 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
9091 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
9092
9093 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
9094 selected frame.
9095
9096 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
9097 (syms_of_keymap): staticpro them.
9098 (Fapropos_internal): Initialize them and clear them out.
9099 Don't GCPRO them.
9100
9101 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
9102 Doc fixes.
9103
9104 * lisp.h: New misc type Lisp_Save_Value.
9105 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
9106 (XSAVE_VALUE): New macro.
9107 (struct Lisp_Save_Value): New data type.
9108 (union Lisp_Misc): Add u_save_value alternative.
9109 (make_save_value): Declared.
9110
9111 * alloc.c (make_save_value): New function.
9112
9113 * xterm.c (x_catch_errors): Save dpy using make_save_value.
9114 (x_catch_errors_unwind): Call XSync.
9115
9116 2003-01-01 Richard M. Stallman <rms@gnu.org>
9117
9118 * window.c (window_scroll_pixel_based): Partially undo last change.
9119
9120 * keyboard.c (command_loop_1): Call adjust_point_for_property
9121 in direct action cases for Qforward_char and Qbackward_char.
9122 Set already_adjusted so it won't be done twice.
9123
9124 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
9125
9126 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
9127 type definition of size_t.
9128
9129 2003-01-02 Steven Tamm <steventamm@mac.com>
9130
9131 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
9132 distinguish Carbon GUI builds from X11 builds on darwin.
9133
9134 2002-12-30 Steven Tamm <steventamm@mac.com>
9135
9136 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
9137 to default to t.
9138
9139 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
9140
9141 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
9142
9143 2002-12-28 Steven Tamm <steventamm@mac.com>
9144
9145 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
9146 allow building in a different directory than source. Uses some
9147 GNU Make extensions, but there is no other make on Mac OS X.
9148
9149 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
9150
9151 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
9152 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
9153 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
9154 (Fstring_to_number): Mention the returned value in the doc strings.
9155
9156 2002-12-23 Richard M. Stallman <rms@gnu.org>
9157
9158 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
9159 <scroll-down-aggressively>: Doc fix.
9160
9161 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
9162 string as pane name, if there is one.
9163 (set_frame_menubar): Save menu_items_n_panes from each call to
9164 parse_single_submenu and use it when calling digest_single_submenu.
9165
9166 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
9167 Don't try to make last line fully visible if it is past end of window.
9168
9169 2002-12-22 Steven Tamm <steventamm@mac.com>
9170
9171 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
9172 (mac_menu_show): Add support for hierarchical popup menus.
9173 (add_menu_item): Remove indentation support.
9174 (fill_submenu, fill_menu): Create hierarchical menus
9175 instead of using indentation.
9176
9177 2002-12-22 Richard M. Stallman <rms@gnu.org>
9178
9179 * xdisp.c (try_cursor_movement): Don't call try_window here.
9180 (redisplay_window): Never redisplay minibuffer when inactive.
9181
9182 * window.c (select_window_1): Undo 9/21 change.
9183
9184 2002-12-22 Steven Tamm <steventamm@mac.com>
9185
9186 * macterm.c (XTread_socket): Call KeyTranslate for control and
9187 meta to deal correctly shifted non-alpha characters, like C-S-5
9188 being treated like C-%. Does not look for shift key to deal
9189 with masking off control-key with mac-reverse-ctrl-meta.
9190
9191 2002-12-21 Richard M. Stallman <rms@gnu.org>
9192
9193 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
9194 If it is non-nil, run timers. Use an unwind-protect to requeue
9195 the events that were read ahead.
9196 (popup_get_selection_unwind): New subroutine.
9197 (popup_get_selection_queue): File-scope variable now holds that queue.
9198 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
9199 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
9200 Use an unwind-protect to pop down the dialog box.
9201 (xdialog_show_unwind): New subroutine implements that.
9202
9203 * xdisp.c (row_containing_pos): Change exit test using last_y.
9204 (try_window_id): Abort if row_containing_pos returns null.
9205
9206 * lread.c (load_error_handler): New function.
9207 (Fload): Handle errors in Fsubstitute_in_file_name.
9208 Don't expect Fsignal to return.
9209
9210 * eval.c: Errors and throws work right with interrupt blocking.
9211 (struct catchtag): New elt interrupt_input_blocked.
9212 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
9213 (internal_catch, Fcondition_case, internal_condition_case)
9214 (internal_condition_case_1, internal_condition_case_2): Save it.
9215 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
9216
9217 * editfns.c (Fformat): Add parens.
9218
9219 * dired.c (file_name_completion): Fix that change.
9220 Delete special quit-handling code; just use QUIT.
9221
9222 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
9223
9224 * dired.c (file_name_completion): Close directory on error
9225 just as in directory_files_internal.
9226
9227 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
9228
9229 * window.c (Fset_window_configuration): Set old_point to correct
9230 value when new_current_buffer == current_buffer.
9231
9232 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
9233
9234 Revisited my earlier fix for the following entry in etc/PROBLEMS:
9235 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9236 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9237
9238 These changes were in part based upon suggestions made by Peter
9239 'Luna' Runestig [peter@runestig.com].
9240
9241 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
9242 g_b_init_get_token_information, g_b_init_lookup_account_sid,
9243 g_b_init_get_sid_identifier_authority ): Add several static
9244 global variables.
9245
9246 * w32.c (globals_of_w32): New function. Used to initialize those
9247 global variables that must always be initialized on startup even
9248 when the global variable initialized is non zero. Its primary
9249 purpose at this time is to set the global variables
9250 g_b_init_is_windows_9x, g_b_init_open_process_token,
9251 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
9252 g_b_init_get_sid_identifier_authority to 0 on startup.
9253 Called from main.
9254
9255 * w32.c (is_windows_9x): Perform initialization only if
9256 g_b_init_is_windows_9x is equal to 0. On initialization set
9257 g_b_init_is_windows_9x equal to 1.
9258
9259 * w32.c (open_process_token): Perform initialization only if
9260 g_b_init_open_process_token is equal to 0. On initialization set
9261 g_b_init_open_process_token equal to 1.
9262
9263 * w32.c (get_token_information): Perform initialization only if
9264 g_b_init_get_token_information is equal to 0. On initialization
9265 set g_b_init_get_token_information equal to 1.
9266
9267 * w32.c (lookup_account_sid): Perform initialization only if
9268 g_b_init_lookup_account_sid is equal to 0. On initialization
9269 set g_b_init_lookup_account_sid equal to 1.
9270
9271 * w32.c (get_sid_identifier_authority): Perform initialization
9272 only if g_b_init_get_sid_identifier_authority is equal to 0.
9273 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9274
9275 * w32fns.c (globals_of_w32fns): New function. Used to initialize
9276 those global variables that must always be initialized on startup
9277 even when the global variable initialized is non zero.
9278 Its primary purpose at this time is to initialize the global variable
9279 track_mouse_event_fn.
9280
9281 * w32fns.c (w32_wnd_proc): Remove initialization of
9282 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9283
9284 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9285
9286 * w32menu.c (globals_of_w32menu): New function. Used to
9287 initialize those global variables that must always be initialized
9288 on startup even when the global variable initialized is non zero.
9289 Its primary purpose at this time is to initialize the global
9290 variables get_menu_item_info and set_menu_item_info.
9291
9292 * w32menu.c (initialize_frame_menubar): Remove initialization of
9293 get_menu_item_info and set_menu_item_info.
9294
9295 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9296
9297 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
9298 Declare them.
9299
9300 * emacs.c (main): Call globals_of_w32 prior to calling
9301 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
9302 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
9303 is defined.
9304
9305 * w32term.c (x_update_window_begin): Fix Windows API error
9306 detected by BoundsChecker. Test to determine if
9307 w32_system_caret_hwnd is NULL prior to attempting to use
9308 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
9309
9310 * w32term.c (x_update_window_end): Fix Windows API error
9311 detected by BoundsChecker. Test to determine if
9312 w32_system_caret_hwnd is NULL prior to attempting to use
9313 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
9314
9315 2002-12-17 Kenichi Handa <handa@m17n.org>
9316
9317 * coding.c (coding_system_require_warning): New variable.
9318 (syms_of_coding): DEFVAR it.
9319
9320 * coding.h (coding_system_require_warning): Extern it.
9321
9322 * fileio.c (choose_write_coding_system): Even if
9323 Vcoding_system_for_write is non-nil, if
9324 coding_system_require_warning is nonzero, call
9325 Vselect_safe_coding_system_function.
9326
9327 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
9328
9329 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
9330 (lisp): Add font-core.
9331
9332 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
9333
9334 * textprop.c (text_read_only): New arg `propval'.
9335 (get_char_property_and_overlay): Remove unused var `next_overlay'.
9336 (verify_interval_modification): Use text_read_only's new arg.
9337
9338 2002-12-13 Kenichi Handa <handa@m17n.org>
9339
9340 * coding.c (Funencodable_char_position): Set pend correctly.
9341
9342 2002-12-12 Jason Rumney <jasonr@gnu.org>
9343
9344 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
9345 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
9346 Be more careful about when help_events are generated.
9347
9348 2002-12-12 Steven Tamm <steventamm@mac.com>
9349
9350 * macterm.c (mac_check_for_quit_char): Correctly set the
9351 modifiers of the event to 0.
9352 * mac.c (sys_select): Duplicate rfds before calling select to
9353 ensure that rfds survive the while loop.
9354
9355 2002-12-11 Kim F. Storm <storm@cua.dk>
9356
9357 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
9358 row_containing_pos returned NULL.
9359
9360 2002-12-10 Steven Tamm <steventamm@mac.com>
9361
9362 * mac.c (sys_read): Fix sys_read to not call select if IO is
9363 non-blocking.
9364 (sys_select): Fix sys_select to not use a timeout larger than
9365 the one given.
9366
9367 2002-12-10 Juanma Barranquero <lektu@terra.es>
9368
9369 * editfns.c (Fformat): Use alloca, not _alloca.
9370
9371 2002-12-09 Richard M. Stallman <rms@gnu.org>
9372
9373 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
9374 as the last thing.
9375
9376 2002-12-09 Dave Love <fx@gnu.org>
9377
9378 * s/sol2-8.h: Removed. (Not necessary.)
9379
9380 2002-12-09 Matthew Swift <swift@alum.mit.edu>
9381
9382 * editfns.c (Fformat): Handle precision in string conversion
9383 specifiers like libc functions do (ie, print at most that many
9384 characters).
9385
9386 2002-12-08 Richard M. Stallman <rms@gnu.org>
9387
9388 * xdisp.c (row_containing_pos): Check more carefully
9389 whether charpos is really in the row before returning it.
9390
9391 2002-12-07 Steven Tamm <steventamm@mac.com>
9392
9393 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
9394
9395 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
9396 each stack frame. This may change as it could be time consuming.
9397
9398 * macterm.c (mac_check_for_quit_char, quit_char_comp)
9399 (init_quit_char_handler, mac_determine_quit_char_modifiers)
9400 (mac_initialize): Add code to check for pressing of quit_char
9401 in the OS event queue.
9402
9403 * mac.c (sys_select): Call mac_check_for_quit_char every second
9404 while blocking on select.
9405
9406 * mac.c (sys_read): Use sys_select to test for input first
9407 before calling read, to allow C-g to break.
9408
9409 2002-12-07 Richard M. Stallman <rms@gnu.org>
9410
9411 * minibuf.c (Fcompleting_read): Doc fix.
9412
9413 * lread.c (syms_of_lread) <load-history>: Doc fix.
9414
9415 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9416
9417 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
9418 autoload.
9419
9420 * data.c (Fdefalias): Record in load-history redefining an autoload.
9421
9422 * alloca.c: Undo ifdef change accidentally made on 12-04.
9423
9424 2002-12-06 Francesco Potorti` <pot@gnu.org>
9425
9426 * xfns.c (png_load): Avoid double gamma correction for PNG images.
9427
9428 2002-12-04 Richard M. Stallman <rms@gnu.org>
9429
9430 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
9431
9432 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
9433
9434 * alloca.c: Don't use #error.
9435
9436 2002-12-03 Dave Love <fx@gnu.org>
9437
9438 * buffer.c (Qucs_set_table_for_input): New.
9439 (Fget_buffer_create): Use it.
9440 (Qset_buffer_major_mode_hook): Deleted.
9441 (Fset_buffer_major_mode): Revert previous change.
9442 (init_buffer_once): Intern ucs-set-table-for-input.
9443 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
9444 Add &Qucs_set_table_for_input.
9445
9446 2002-12-03 Andreas Schwab <schwab@suse.de>
9447
9448 * callint.c (Fcall_interactively): Use next_event only if less
9449 than key_count.
9450
9451 2002-12-02 Andrew Choi <akochoi@shaw.ca>
9452
9453 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
9454 names to 255 characters.
9455
9456 * macterm.c (XTread_socket): If all frames have been collapsed,
9457 expand the first one before handling drag-and-drop events.
9458
9459 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
9460 which is detected by autoconf.
9461
9462 2002-12-01 Steven Tamm <steventamm@mac.com>
9463
9464 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
9465 offset in two hints table to allow prebinding to be redone and
9466 allow the executable to be stripped.
9467
9468 2002-11-29 Dave Love <fx@gnu.org>
9469
9470 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
9471 already provided.
9472
9473 2002-11-29 Richard M. Stallman <rms@gnu.org>
9474
9475 * xdisp.c (start_display): Check more intelligently for
9476 whether the line is continued.
9477 (move_it_vertically_backward): Clear it->continuation_lines_width.
9478
9479 2002-11-28 Dave Love <fx@gnu.org>
9480
9481 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
9482 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
9483
9484 2002-11-27 Steven Tamm <steventamm@mac.com>
9485
9486 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
9487 more descriptive error output from lread.c:Fload upon most require
9488 cycles during boostrapping.
9489
9490 2002-11-27 Jason Rumney <jasonr@gnu.org>
9491
9492 * fileio.c (Finsert_file_contents): Give a more appropriate error
9493 for files bigger than 2Gb when off_t is 32 bit.
9494
9495 * dired.c (Ffile_attributes): Don't return negative file sizes for
9496 files bigger than 2Gb when off_t is 32 bit.
9497
9498 2002-11-27 Dave Love <fx@gnu.org>
9499
9500 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9501
9502 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
9503 Test GETPGRP_VOID instead.
9504 [BSD_TERMIOS]: Remove definitions (never used).
9505
9506 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
9507 Don't define.
9508 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9509
9510 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
9511
9512 2002-11-25 Jason Rumney <jasonr@gnu.org>
9513
9514 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
9515 supported.
9516
9517 2002-11-25 Dave Love <fx@gnu.org>
9518
9519 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
9520
9521 * Makefile.in (TEMACS_LDFLAGS): Update last change.
9522
9523 2002-11-25 Andreas Schwab <schwab@suse.de>
9524
9525 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
9526
9527 2002-11-24 Steven Tamm <steventamm@mac.com>
9528
9529 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
9530 determine the size of pointers alloced in unexed space instead
9531 of using possibly invalid emacs_zone pointers. This fixes the
9532 binary incompatibility problems caused by updates to libSystem.B.
9533
9534 2002-11-24 Richard M. Stallman <rms@gnu.org>
9535
9536 * search.c (Fstring_match): Doc fix.
9537
9538 * callint.c (Fcall_interactively): If a command fails because
9539 `*' detects a read-only buffer, but RECORD_FLAG is set,
9540 record it anyway if the args don't actually do tty input.
9541
9542 2002-11-22 Dave Love <fx@gnu.org>
9543
9544 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
9545
9546 * keyboard.c (interrupt_signal): Provide forward declaration.
9547 (kbd_buffer_store_event): Don't declare interrupt_signal.
9548
9549 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
9550
9551 2002-11-21 Richard M. Stallman <rms@gnu.org>
9552
9553 * eval.c (interactive_p): Skip any number of bytecode
9554 and special form frames, in any order.
9555
9556 2002-11-20 Jason Rumney <jasonr@gnu.org>
9557
9558 * w32fns.c (convert_mono_to_color_image): New function.
9559 (xbm_load, xbm_load_image): Use it when foreground or background
9560 is explicitly set.
9561
9562 2002-11-19 Dave Love <fx@gnu.org>
9563
9564 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
9565
9566 2002-11-18 Jason Rumney <jasonr@gnu.org>
9567
9568 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
9569 (XPutPixel): Swap blue and red.
9570 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
9571 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
9572 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
9573 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
9574
9575 2002-11-18 Dave Love <fx@gnu.org>
9576
9577 * m/orion105.h (HAVE_ALLOCA): Don't define.
9578
9579 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
9580
9581 * m/intel386.h: Don't include alloca.h or define alloca.
9582
9583 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
9584 malloc, realloc, calloc.
9585
9586 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
9587 (bcmp): Don't define.
9588
9589 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
9590
9591 * m/amdahl.h: Don't define LIB_STANDARD.
9592
9593 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
9594
9595 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
9596
9597 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
9598 Don't include alloca.h.
9599
9600 * s/aix3-2.h (HAVE_FSYNC): Don't define.
9601
9602 * regex.c (_GNU_SOURCE): Don't define.
9603
9604 * process.c (_GNU_SOURCE): Don't define.
9605
9606 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
9607
9608 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
9609
9610 * s/sol2-8.h: Include sol2-6.h.
9611
9612 2002-11-18 Miles Bader <miles@gnu.org>
9613
9614 * dispextern.h (struct face): Add `overstrike' field.
9615 * xterm.c (x_draw_glyph_string_foreground)
9616 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9617 * xfaces.c (load_face_font): Set `face->overstrike' based on
9618 result from choose_face_font.
9619 (best_matching_font, choose_face_font): Add `needs_overstrike'
9620 argument, and use it to return whether overstriking is desirable
9621 for this face/font combo.
9622 (set_font_frame_param: Pass new argument to choose_face_font.
9623
9624 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
9625
9626 This change is my fix for the following entry in etc/PROBLEMS:
9627 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9628 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9629
9630 * w32.c: Added wrapper functions around the win32 API functions
9631 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
9632 GetSidIdentifierAuthority. These wrapper functions serve two
9633 purposes:
9634 1. They ensure that the wrapped function can never be called
9635 when Emacs is running on an operating system on which they are
9636 not supported (Microsoft Windows 95 / 98 / ME).
9637 2. They call the wrapped functions via function pointers rather
9638 than calling them directly. This avoids taking advantage of the
9639 undocumented fact that although these functions are not supported
9640 in the 9x branch of Microsoft Windows, the functions do exist in
9641 the version of advapi32.dll that is found in the 9x branch of
9642 Microsoft Windows.
9643
9644 * w32.c (init_user_info): Replace the calls to the win32 API
9645 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
9646 and GetSidIdentifierAuthority with calls to the newly added
9647 wrapper functions.
9648
9649 * w32.h: Added extern declarations for the following functions:
9650 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
9651 syms_of_w32menu, and void syms_of_fontset.
9652
9653 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
9654 function pointer track_mouse_event_fn in the handler for the
9655 WM_SETFOCUS message.
9656
9657 * w32menu.c (initialize_frame_menubar): Add code to
9658 reinitialize the function pointers set_menu_item_info and
9659 get_menu_item_info.
9660
9661 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
9662
9663 * sound.c: Added a partial implementation of play-sound-internal
9664 for Microsoft Windows. Added various #ifdef / #else / #endif
9665 code blocks to separate the code that will compile under
9666 Microsoft Windows from the code that is specific to Gnu/Linux.
9667 Moved several blocks of code around to make this separation of code
9668 into Windows compatible and Gnu/Linux compatible code blocks easier.
9669
9670 * makefile.w32-in: Include sound.c and link with WinMM.lib.
9671
9672 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
9673 added support for play-sound-internal under Windows would be
9674 included in the build of Emacs.
9675
9676 2002-11-16 Jason Rumney <jasonr@gnu.org>
9677
9678 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
9679
9680 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
9681
9682 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
9683
9684 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
9685 (adjust_point_for_property): Move out of display and invisible even if
9686 we were already inside before (in case a property was added while
9687 we weren't looking). Be more careful when handling invisible props.
9688 Skip invisible text as if it really wasn't there at all.
9689
9690 2002-11-15 Jason Rumney <jasonr@gnu.org>
9691
9692 * w32term.c (x_draw_image_foreground)
9693 (w32_draw_image_foreground_1): Use standard copy and invert
9694 operations to draw images.
9695
9696 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9697 depth of 1.
9698 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9699 (XPutPixel): Don't invert bits here.
9700
9701 2002-11-15 Jason Rumney <jasonr@gnu.org>
9702
9703 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9704 (w32_draw_image_foreground_1): Handle image masks.
9705 (x_draw_image_glyph_string): Don't BitBlt transparently.
9706
9707 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9708 (x_from_xcolors): Adjust RGB values for W32.
9709 (image_background, image_background_transparent)
9710 (postprocess_image, x_to_xcolors, x_disable_image)
9711 (x_build_heuristic_mask): Adapt for W32 and enable.
9712 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9713 (xbm_load): Remove unused variable.
9714
9715 2002-11-14 Richard M. Stallman <rms@gnu.org>
9716
9717 * buffer.c (syms_of_buffer): Doc fix.
9718
9719 2002-11-14 Dave Love <fx@gnu.org>
9720
9721 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
9722
9723 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9724 * xmenu.c (unuse_menu_items, digest_single_submenu):
9725 * xfns.c (x_put_x_image):
9726 * xdisp.c (message2_nolog, set_message):
9727 * undo.c (record_point):
9728 * terminfo.c (tparam):
9729 * syntax.c (scan_sexps_forward):
9730 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9731 * composite.c (update_compositions):
9732 * cm.c (calccost, cmgoto):
9733 * charset.c (c_string_width): Declare all args (per C99).
9734
9735 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
9736
9737 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9738 Don't declare.
9739
9740 * emacs.c (main) [!VMS]: Avoid third arg.
9741
9742 * fns.c (Fcopy_sequence): Doc fix.
9743 (Fmap_char_table): Cast `call2'.
9744
9745 2002-11-14 Francesco Potorti` <pot@gnu.org>
9746
9747 * s/sol2-8.h: New file.
9748
9749 2002-11-14 Kim F. Storm <storm@cua.dk>
9750
9751 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9752 dependency on `risky-local-variable' and the :propertize form.
9753
9754 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9755
9756 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9757
9758 * syntax.c (scan_sexps_forward): Undo last patch.
9759 Use a more obvious fix: check eob before updating the syntax table.
9760
9761 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9762
9763 * syntax.c (scan_sexps_forward): Update syntax table before reading
9764 a char rather than after so we don't update the table past eob.
9765
9766 2002-11-09 Dave Love <fx@gnu.org>
9767
9768 * buffer.c (Fset_buffer_major_mode): Fix last change.
9769
9770 * regex.c (regexec): Fix pmatch declaration.
9771
9772 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9773
9774 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9775 to self-inserting characters.
9776 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9777
9778 * coding.c (Vtranslation_table_for_input): New.
9779 (syms_of_coding): DEFVAR it.
9780
9781 2002-11-08 Juanma Barranquero <lektu@terra.es>
9782
9783 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9784 window.
9785
9786 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9787
9788 * process.c (Fformat_network_address): Remove unused locals p,
9789 cp, and i.
9790
9791 2002-11-06 Dave Love <fx@gnu.org>
9792
9793 * buffer.c (Qset_buffer_major_mode_hook): New.
9794 (Fset_buffer_major_mode): Use it.
9795
9796 2002-11-06 Richard M. Stallman <rms@gnu.org>
9797
9798 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9799 and stop_polling.
9800
9801 * process.c (wait_reading_process_input):
9802 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9803 Avoid initialization for auto Lisp_Object var.
9804
9805 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9806
9807 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9808
9809 2002-11-05 Richard M. Stallman <rms@gnu.org>
9810
9811 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9812
9813 * callint.c (Fcall_interactively): New local filter_specs.
9814 (Fcall_interactively): Check for progn as well as let.
9815 Add a gcpro.
9816 (Qprogn): New variable.
9817 (syms_of_callint): Staticpro and init Qprogn.
9818
9819 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9820
9821 * lread.c (Feval_buffer): Doc fix.
9822
9823 2002-11-04 Dave Love <fx@gnu.org>
9824
9825 * keyboard.c (read_char): Always translate iff
9826 Vkeyboard_translate_table is a char table and c is valid.
9827
9828 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9829 and fix C types.
9830
9831 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9832
9833 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9834
9835 * editfns.c (get_pos_property): Don't hardcode Qfield.
9836
9837 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9838 overlays. Also handle `invisible' prop.
9839
9840 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9841
9842 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9843 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9844
9845 2002-11-01 Andreas Schwab <schwab@suse.de>
9846
9847 * editfns.c (Fmessage): Revert last change to properly handle %%.
9848
9849 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9850
9851 * xmenu.c (unuse_menu_items): New fun.
9852 (menu_items_inuse): New var.
9853 (syms_of_xmenu): Initialize it.
9854 (init_menu_items): Use it to detect re-entrance.
9855 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9856 (Fx_popup_menu): Remove spurious XSETFRAME.
9857
9858 * editfns.c (find_field): Make an exception for nil fields.
9859
9860 2002-11-01 Dave Love <fx@gnu.org>
9861
9862 * m/gec63.h: Deleted.
9863
9864 2002-10-31 Dave Love <fx@gnu.org>
9865
9866 * xterm.c (XTread_socket): Fix last change.
9867 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9868
9869 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9870
9871 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9872
9873 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9874
9875 * editfns.c (overlays_around, get_pos_property): New funs.
9876 (find_field): Use them.
9877 Also be careful not to modify POS before its last use.
9878 (Fmessage): Don't Fformat if there's nothing to format.
9879
9880 2002-10-30 Dave Love <fx@gnu.org>
9881
9882 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
9883 [HAVE_PTY_H]; Include pty.h.
9884
9885 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
9886
9887 * xterm.c (Qeql): Declare.
9888 (Vx_keysym_table): New.
9889 (syms_of_xterm): Initialize it.
9890 (XTread_socket): Use it. Deal with ASCII keysyms.
9891 (XSetIMValues) [HAVE_X11R6]: Prototype.
9892
9893 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
9894 (lispy_kana_keys): Comment out.
9895 (make_lispy_event) [XK_kana_A]: Comment out.
9896 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
9897 Fix sprintf call.
9898
9899 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9900 regexp.h change).
9901 (TERMINFO, LIBS_TERMCAP): Define.
9902
9903 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9904 (bcmp): Define conditional on HAVE_BCMP.
9905 (NO_SIOCTL_H): Don't define.
9906 (TIOCSIGSEND): Don't make conditional on IRIX6.
9907
9908 * s/sol2-5.h: Don't include strings.h.
9909 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9910
9911 * s/irix6-0.h (IRIX6): Don't define.
9912 (bcopy, bcmp, bzero): Don't undef.
9913
9914 * s/irix6-5.h: Don't include strings.h.
9915 (IRIX6): Don't define.
9916 (bcopy, bcmp, bzero): Don't undef.
9917
9918 * syntax.c (Fforward_comment): Doc fix.
9919
9920 2002-10-29 Kim F. Storm <storm@cua.dk>
9921
9922 * process.c (Fsignal_process): Allow PROCESS to be specified by
9923 name in addition to pid (as integer or string).
9924
9925 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9926
9927 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9928 environments.
9929
9930 2002-10-27 Kim F. Storm <storm@cua.dk>
9931
9932 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9933
9934 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9935
9936 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9937
9938 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9939
9940 2002-10-26 Richard M. Stallman <rms@gnu.org>
9941
9942 * editfns.c (Fformat): Detect invalid format letters for floats.
9943
9944 2002-10-25 Kenichi Handa <handa@m17n.org>
9945
9946 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9947 (x_set_title): Likewise.
9948
9949 2002-10-25 Juanma Barranquero <lektu@terra.es>
9950
9951 * macgui.h:
9952 * w32gui.h: Remove definition of XColor.
9953
9954 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9955
9956 2002-10-24 Kim F. Storm <storm@cua.dk>
9957
9958 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9959 Callers changed (supply dummy arg).
9960
9961 * lisp.h (get_window_cursor_type): Update prototype.
9962
9963 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9964 get_window_cursor_type to track system caret.
9965
9966 2002-10-24 Kim F. Storm <storm@cua.dk>
9967
9968 * process.c (Fformat_network_address): New function.
9969 (syms_of_process): Defsubr it.
9970 (list_processes_1): Use it to format :local/:remote address if
9971 service/host is not set; before Emacs would crash in that case.
9972 (Fmake_network_process): Don't use Ffind_operation_coding_system
9973 to setup coding system if host or service is not set.
9974
9975 2002-10-23 Juanma Barranquero <lektu@terra.es>
9976
9977 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9978
9979 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9980 COLORREF.
9981
9982 * macgui.h:
9983 * w32gui.h: Add definition of XColor.
9984
9985 * macfns.c:
9986 * w32fns.c:
9987 * xfaces.c: Remove definition of XColor.
9988
9989 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9990
9991 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9992
9993 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9994 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9995 window if it is dedicated.
9996 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9997 (Vspecial_display_function): Update docstring.
9998
9999 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
10000 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
10001 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
10002
10003 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
10004
10005 * casefiddle.c (casify_region): Don't treat a prefix char as part
10006 of a word when at the beginning.
10007
10008 2002-10-17 Juanma Barranquero <lektu@terra.es>
10009
10010 * lread.c (syms_of_lread): Fix typos.
10011
10012 2002-10-17 Dave Love <fx@gnu.org>
10013
10014 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
10015
10016 2002-10-16 Richard M. Stallman <rms@gnu.org>
10017
10018 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
10019
10020 2002-10-14 Juanma Barranquero <lektu@terra.es>
10021
10022 * w16select.c (syms_of_win16select): Fix docstring for
10023 `selection-coding-system'.
10024
10025 * w32select.c (syms_of_w32select): Likewise.
10026
10027 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
10028
10029 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
10030 a backslash-quoted char.
10031 (scan_lists, scan_sexps_forward): Pacify the compiler.
10032
10033 2002-10-13 Richard M. Stallman <rms@gnu.org>
10034
10035 * window.c (window_scroll): Set immediate_quit.
10036
10037 * print.c (print): When backquote form is the car of a list,
10038 output in old style. Use old_backquote_output to output all
10039 comma forms inside it in old style too.
10040
10041 * buffer.h (struct buffer): Move `undo_list' down below `name'.
10042
10043 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
10044
10045 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
10046 batch mode).
10047
10048 * lread.c (Fload): Doc fix (load-suffixes).
10049
10050 2002-10-10 Steven Tamm <steventamm@mac.com>
10051
10052 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
10053 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
10054 Also switch the default to Qnil from Qt.
10055
10056 2002-10-08 Kenichi Handa <handa@m17n.org>
10057
10058 * coding.c (code_convert_region): When we need more GAP for
10059 conversion, pay attention to the case that coding->produced is not
10060 greater than coding->consumed.
10061
10062 2002-10-07 Richard M. Stallman <rms@gnu.org>
10063
10064 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
10065
10066 2002-10-06 Andrew Choi <akochoi@shaw.ca>
10067
10068 * macmenu.c (mac_menu_show): Add j to count menu items; match
10069 menu_item_selection to it to find selected item.
10070
10071 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10072
10073 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
10074 cases. The correct fix is to pass ReparentNotify to Xt.
10075 The shell widget interprets ConfigureNotify differently depending
10076 on if it has been reparented or not.
10077
10078 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
10079
10080 * editfns.c (Fformat_time_string): Doc fix.
10081
10082 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
10083
10084 * fns.c (Flength): Doc fix.
10085
10086 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
10087
10088 * keyboard.c (keyremap): New struct.
10089 (read_key_sequence): Use it: globally replace keytran_foo with
10090 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
10091 keytran_next and fkey_next to just `next'.
10092
10093 2002-10-04 Steven Tamm <steventamm@mac.com>
10094
10095 * macterm.c (keycode_to_xkeysym_table): Change return to be
10096 treated like an X keysym.
10097
10098 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10099
10100 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
10101 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
10102 This is to also handle x/y changes that occur because of a resize.
10103
10104 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
10105
10106 * frame.c (Vdelete_frame_functions): New variable.
10107 (syms_of_frame): Initialize and defvar it.
10108 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
10109 it when frame's `tooltip' parameter is non-nil.
10110
10111 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
10112
10113 * w32fns.c (x_create_tip_frame): Likewise.
10114
10115 * macfns.c (x_create_tip_frame): Likewise.
10116
10117 2002-09-30 Kenichi Handa <handa@m17n.org>
10118
10119 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
10120 -1 before calling ccl_driver.
10121
10122 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
10123 Only when it is non-nil, handle composition sequence.
10124 (setup_coding_system) <0>: Don't force composition handling.
10125
10126 * Makefile.in (lisp, shortlisp): Add utf-16.elc
10127
10128 2002-09-29 Richard M. Stallman <rms@gnu.org>
10129
10130 * search.c (Freplace_match): Adjust match data for the substitution
10131 just made in the buffer.
10132
10133 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
10134 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
10135
10136 2002-09-27 Richard M. Stallman <rms@gnu.org>
10137
10138 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
10139 (read_char): Use them. Do all exits thru the end of the function.
10140
10141 2002-09-27 Kenichi Handa <handa@etl.go.jp>
10142
10143 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
10144 is nil.
10145
10146 2002-09-26 Richard M. Stallman <rms@gnu.org>
10147
10148 * regex.h (__restrict_arr): Don't define if already defined.
10149
10150 * coding.c (run_pre_post_conversion_on_str):
10151 Save and restore Vdeactivate_mark.
10152
10153 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
10154
10155 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
10156
10157 2002-09-26 Kenichi Handa <handa@etl.go.jp>
10158
10159 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
10160 nonzero, try face's family at first. Otherwise try FAMILY at first.
10161 (choose_face_font): If C is a single byte char or latin-1, call
10162 try_font_list with PREFER_FACE_FAMILY 1.
10163
10164 2002-09-21 Richard M. Stallman <rms@gnu.org>
10165
10166 * window.c (select_window_1): Don't select frame.
10167 Set frame's selected window only when frame itself is selected.
10168 (Fselect_window): Doc fix.
10169
10170 2002-09-18 Kim F. Storm <storm@cua.dk>
10171
10172 * process.c (make-network-process): Doc fix (there is no
10173 network-server-log-function hook).
10174
10175 2002-09-18 Richard M. Stallman <rms@gnu.org>
10176
10177 * print.c (print): Clear out the unused parts of Vprint_number_table.
10178 (syms_of_print): Doc fix for `print-number-table'.
10179
10180 * unexelf.c (unexec): Undo previous change.
10181
10182 2002-09-17 Andreas Schwab <schwab@suse.de>
10183
10184 * m/alpha.h [LINUX]: Don't define DATA_START.
10185
10186 2002-09-16 Dave Love <fx@gnu.org>
10187
10188 * unexelf.c (unexec): Deal with .got, reinstating change from
10189 25-08-1999.
10190
10191 2002-09-13 Richard M. Stallman <rms@gnu.org>
10192
10193 * s/sol2-6.h (UNEXEC): Comment out definition.
10194
10195 * unexsol.c (unexec): Don't downcase first letter of error msg.
10196
10197 * xfaces.c (Fcolor_supported_p): Just one arg is required.
10198
10199 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
10200
10201 * unexsol.c: Include buffer.h, charset.h, coding.h.
10202
10203 2002-09-11 Richard M. Stallman <rms@gnu.org>
10204
10205 * unexsol.c: Don't use report_file_error; do it by hand
10206 using dlerror.
10207
10208 * process.c (wait_reading_process_input, both versions):
10209 Before calling turn_on_atimers, call stop_polling.
10210
10211 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
10212
10213 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
10214 we go to too_near_end, call clear_glyph_matrix.
10215 (redisplay_window): After make_cursor_line_fully_visible,
10216 call clear_glyph_matrix and bypass `goto done'.
10217
10218 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
10219 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
10220
10221 2002-09-10 Richard M. Stallman <rms@gnu.org>
10222
10223 * fileio.c (Fdo_auto_save): Catch error making directory.
10224 Only call push_message if we need to.
10225 At the same time, make an unwind-protect to pop it.
10226 Rename local message_p to old_message_p.
10227 (do_auto_save_make_dir, do_auto_save_eh): New functions.
10228 (do_auto_save_unwind): Don't call pop_message.
10229
10230 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
10231
10232 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
10233
10234 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
10235
10236 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
10237
10238 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
10239
10240 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
10241 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
10242 (re_match_2_internal): Be more careful with infinite loops.
10243
10244 2002-09-10 Kim F. Storm <storm@cua.dk>
10245
10246 * macros.c (end_kbd_macro): New function.
10247 (Fend_kbd_macro): Use it.
10248
10249 * macros.h (end_kbd_macro): Declare extern.
10250
10251 * keyboard.c (Fdiscard_input): If defining keyboard macro,
10252 end and save it instead of discarding it.
10253
10254 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
10255
10256 * s/sol2-6.h: Fix typo. Add comment.
10257
10258 2002-09-09 Richard M. Stallman <rms@gnu.org>
10259
10260 * regex.c (regnum_t): Use signed int, not unsigned int.
10261
10262 * s/sol2-6.h: New file.
10263
10264 * s/sol2-5.h (UNEXEC): Definition deleted.
10265
10266 2002-09-08 Kim F. Storm <storm@cua.dk>
10267
10268 * macros.c (executing_macro_index): Change type to EMACS_INT.
10269 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
10270
10271 * macros.h (executing_macro_index): Change type to EMACS_INT.
10272
10273 2002-09-06 Richard M. Stallman <rms@gnu.org>
10274
10275 * casetab.c (set_case_table): Make canon table point to eqv table.
10276
10277 2002-09-06 Juanma Barranquero <lektu@terra.es>
10278
10279 * coding.c (syms_of_coding): Fix spacing.
10280
10281 * composite.c (Fcompose_region_internal)
10282 (Fcompose_string_internal): Likewise.
10283
10284 * data.c (Flsh): Likewise.
10285
10286 * fontset.c (Fset_fontset_font): Likewise.
10287
10288 * macfns.c (Fx_server_max_request_size): Likewise.
10289
10290 * w16select.c (syms_of_win16select): Likewise.
10291
10292 * w32select.c (syms_of_w32select): Likewise.
10293
10294 * xselect.c (syms_of_xselect): Likewise.
10295
10296 2002-09-05 Richard M. Stallman <rms@gnu.org>
10297
10298 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
10299 call EXTEND_RANGE_TABLE and return a proper value.
10300 (set_image_of_range): Don't call set_image_of_range_1
10301 if no TRANSLATE or if range includes all of Latin-1.
10302 Only call it for the Latin-1 part of the range.
10303 For other cases, make two separate ranges,
10304 one for the original specified characters and one for
10305 their case-conversions.
10306
10307 2002-09-04 Richard M. Stallman <rms@gnu.org>
10308
10309 * s/sol2-5.h (UNEXEC): Use unexsol.o.
10310
10311 * window.c (displayed_window_lines): Correct for one-off bug
10312 in HEIGHT on non-window displays.
10313
10314 * regex.c (set_image_of_range_1): New function.
10315 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
10316 Return a value to indicate running out of memory.
10317 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
10318 (extend_range_table_work_area): New subroutine.
10319 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
10320 Different calling conventions, and used from set_image_of_range{,_1}.
10321 (IMMEDIATE_QUIT_CHECK): Definitions moved.
10322
10323 2002-09-04 Juanma Barranquero <lektu@terra.es>
10324
10325 * makefile.w32-in: All dependencies updated.
10326
10327 2002-09-01 Richard M. Stallman <rms@gnu.org>
10328
10329 * unexsol.c: New file.
10330
10331 * xfns.c (Qbox): Declare external, don't define.
10332
10333 * xdisp.c (redisplay_window) <force-start case>:
10334 If point is on semi-visible last line, reposition
10335 it at previous line.
10336
10337 * alloc.c (display_malloc_warning): Use display-warning.
10338 (malloc_warning_1): Function deleted.
10339
10340 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
10341
10342 * lread.c (read1): Handle #! by skipping the line.
10343
10344 2002-08-31 Richard M. Stallman <rms@gnu.org>
10345
10346 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
10347 Don't include LDFLAGS.
10348 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
10349
10350 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
10351
10352 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
10353 member of x_display_info unless we compile for some window system.
10354
10355 2002-08-31 Kim F. Storm <storm@cua.dk>
10356
10357 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
10358 (get_window_cursor_type): Don't use them.
10359 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
10360
10361 2002-08-30 Kenichi Handa <handa@etl.go.jp>
10362
10363 * xdisp.c (get_next_display_element): Fix previous change.
10364
10365 2002-08-30 Andrew Choi <akochoi@shaw.ca>
10366
10367 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
10368 (expose_window): Use it to fix the display of overlapping
10369 rows (merge code from xterm.c).
10370
10371 * macfns.c (Qbox): Add extern declaration.
10372
10373 2002-08-30 Juanma Barranquero <lektu@terra.es>
10374
10375 * w32fns.c (Qbox): Make extern.
10376 (syms_of_w32fns): Remove initialization of Qbox.
10377
10378 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
10379
10380 * xfns.c (Fx_open_connection): Fix error message.
10381
10382 2002-08-30 Kim F. Storm <storm@cua.dk>
10383
10384 The following changes consolidates the handling of the cursor
10385 type in xdisp.c, moving duplicate code and functionality from
10386 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
10387
10388 * frame.h (enum text_cursor_kinds): Consolidated here.
10389 Added DEFAULT_CURSOR value.
10390 (struct frame) <desired_cursor, cursor_width>
10391 <blink_off_cursor, blink_off_cursor_width>: New fields.
10392 Consolidated from output_x, output_w32 and output_mac structs.
10393 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10394 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
10395
10396 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
10397 Variables consolidated here.
10398 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
10399 (Vcursor_in_non_selected_windows): Renamed from
10400 cursor_in_non_selected_windows and changed to Lisp_Object.
10401 (syms_of_xdisp): Define and staticpro new and moved variables.
10402 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
10403 consolidated here. Recognize Qhollow setting.
10404 (set_frame_cursor_types): New function to set frame cursor types
10405 based on the frame parameters.
10406 (get_window_cursor_type): New function to calculate new cursor
10407 type and width for the specified window. Based on duplicated
10408 code consolidated here.
10409 Enhancements: cursor-in-non-selected-windows may be a cursor type,
10410 check buffer-local alternate-cursor-type and blink-cursor-alist
10411 before using built-in blink off methods.
10412
10413 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
10414
10415 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
10416 (get_specified_cursor_type, get_window_cursor_type)
10417 (set_frame_cursor_types): Added prototypes.
10418
10419 * macfns.c (x_specified_cursor_type): Removed.
10420 (x_set_cursor_type): Use set_frame_cursor_types.
10421 (Qbar, Qbox): Removed.
10422 (syms_of_macfns): Don't intern or staticpro them.
10423
10424 * macterm.c (x_specified_cursor_type): Remove prototype.
10425 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10426 (x_display_and_set_cursor): Use get_window_cursor_type.
10427 Remove unused local variables cursor_non_selected, active_cursor.
10428 Redraw cursor if hbar cursor width changes.
10429 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
10430
10431 * macterm.h (enum text_cursor_kinds): Removed.
10432 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
10433 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10434 (FRAME_DESIRED_CURSOR): Macro removed.
10435
10436 * w32fns.c (Vblink_cursor_alist): Removed.
10437 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10438 (syms_of_w32fns): Don't intern, staticpro, or define them.
10439 (x_specified_cursor_type): Removed.
10440 (x_set_cursor_type): Use set_frame_cursor_types.
10441
10442 * w32term.c (x_specified_cursor_type): Remove prototype.
10443 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10444 (x_display_and_set_cursor): Use get_window_cursor_type.
10445 Remove unused local variables cursor_off_state.
10446 Redraw cursor if hbar cursor width changes.
10447 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
10448
10449 * w32term.h (enum text_cursor_kinds): Removed.
10450 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
10451 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10452 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10453 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10454 (struct w32_display_info) <x_highlight_frame>: Renamed member from
10455 w32_highlight_frame.
10456
10457 * xfns.c (Vblink_cursor_alist): Removed.
10458 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10459 (syms_of_xfns): Don't intern, staticpro, or define them.
10460 (x_specified_cursor_type): Removed.
10461 (x_set_cursor_type): Use set_frame_cursor_types.
10462
10463 * xterm.c (x_specified_cursor_type): Remove prototype.
10464 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10465 (x_display_and_set_cursor): Use get_window_cursor_type.
10466 Remove unused local variables cursor_off_state.
10467 Redraw cursor if hbar cursor width changes.
10468
10469 * xterm.h (enum text_cursor_kinds): Removed.
10470 (struct output_x) <current_cursor, desired_cursor, cursor_width>
10471 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10472 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10473 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10474 (x_specified_cursor_type): Remove prototype.
10475
10476 2002-08-28 Richard M. Stallman <rms@gnu.org>
10477
10478 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10479 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10480 (Vblink_cursor_alist): New variable.
10481 (syms_of_w32fns): Initialize and defvar it.
10482 (x_specified_cursor_type): Recognize Qbox for filled box.
10483 Exceptions are hollow boxes.
10484 (Qbox, Qhollow): New variables.
10485 (syms_of_w32fns): Initialize and staticpro them.
10486
10487 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10488 New macros.
10489 (struct w32_output): New fields blink_off_cursor,
10490 blink_off_cursor_width.
10491 (FRAME_CURSOR_WIDTH): New macro.
10492
10493 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10494 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10495
10496 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10497 for bar cursor.
10498
10499 * w32term.c (expose_overlaps): New function.
10500 (expose_window): Use it to fix the display of overlapping rows.
10501
10502 2002-08-28 Simon Josefsson <jas@extundo.com>
10503
10504 * xfns.c (Fx_open_connection): Improve help when X connection
10505 fails, xhost is insecure and xauth is better.
10506
10507 2002-08-28 Juanma Barranquero <lektu@terra.es>
10508
10509 * makefile.w32-in: Add missing dependencies on w32term.h and
10510 composite.h.
10511
10512 * emacs.c (USAGE1): Add missing newline.
10513
10514 2002-08-27 Andrew Choi <akochoi@shaw.ca>
10515
10516 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
10517
10518 2002-08-27 Richard M. Stallman <rms@gnu.org>
10519
10520 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10521 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10522 (Vblink_cursor_alist): New variable.
10523 (syms_of_xfns): Initialize and defvar it.
10524 (x_specified_cursor_type): Recognize Qbox for filled box.
10525 Exceptions are hollow boxes.
10526 (Qbox, Qhollow): New variables.
10527 (syms_of_xfns): Initialize and staticpro them.
10528
10529 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10530 New macros.
10531 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
10532
10533 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10534 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10535
10536 * emacs.c (main): Handle --script.
10537 (USAGE1): Mention --script.
10538 (standard_args): Define sort order for --script.
10539
10540 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
10541
10542 * xdisp.c (redisplay_updating_p): Variable removed.
10543 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
10544 New variables.
10545 (init_iterator): Don't free realized faces if
10546 inhibit_free_realized_faces is set.
10547 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
10548 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
10549 initialize Qinhibit_free_realized_faces.
10550
10551 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
10552 when iterator is adding glyphs to a glyph matrix.
10553
10554 2002-08-27 Kenichi Handa <handa@etl.go.jp>
10555
10556 * xdisp.c (get_next_display_element): In unibyte case, don't use
10557 octal form for such eight-bit characters that can be converted to
10558 multibyte char.
10559
10560 2002-08-26 Kim F. Storm <storm@cua.dk>
10561
10562 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
10563 foreground and background colors. From Joe Buehler.
10564
10565 2002-08-26 Miles Bader <miles@gnu.org>
10566
10567 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
10568
10569 2002-08-25 Andrew Choi <akochoi@shaw.ca>
10570
10571 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
10572 defined instead of MAC_OSX.
10573
10574 * s/darwin.h (select): Define select to sys_select only if
10575 HAVE_CARBON is defined.
10576 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
10577 (DONT_REOPEN_PTY): #def it.
10578
10579 * macterm.c (XTread_socket): Remove code to call
10580 SendEventToEventTarget for keys with command modifiers when
10581 mac_command_key_is_meta is nil.
10582
10583 2002-08-24 Andreas Schwab <schwab@suse.de>
10584
10585 * eval.c (Fdefvar): Fix last change.
10586
10587 2002-08-23 Richard M. Stallman <rms@gnu.org>
10588
10589 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
10590 Record variables in load history as (defvar . VAR).
10591 (Fdefvar): Don't record in load history if no initial value.
10592 (Qdefvar): New variable.
10593 (syms_of_eval): Init and staticpro it.
10594
10595 * lread.c (syms_of_lread): Doc fix.
10596 (build_load_history): Use Fmember to see if a definition
10597 is already in the Vload_history element.
10598
10599 * process.c (Fstart_process): Remove /: from program name.
10600
10601 * emacs.c (decode_env_path): Don't add /: if file name handler
10602 has a `safe-magic' property.
10603
10604 * callproc.c (Fcall_process): Remove /: from program name.
10605
10606 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
10607
10608 * regex.c (PATFETCH): Remove the translating fetch.
10609 (PATFETCH_RAW): Rename to PATFETCH.
10610 (set_image_of_range): New fun.
10611 (SET_RANGE_TABLE_WORK_AREA): Use it.
10612 (regex_compile): Don't translate the pattern chars so eagerly.
10613 Only do it when inserting an `exactn' bytecode or when handling
10614 a char-range.
10615 (mutually_exclusive_p): Avoid empty statement.
10616
10617 2002-08-22 Kim F. Storm <storm@cua.dk>
10618
10619 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
10620 end up on a partially visible line; this reverts a specific part
10621 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
10622 display error which has been reported several times now.
10623 However it introduces the problem that changes was supposed to fix.
10624 See my comments in the source if you want to debug this further.
10625
10626 2002-08-20 Kenichi Handa <handa@etl.go.jp>
10627
10628 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
10629
10630 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
10631
10632 * msdos.c (croak): Add `void' to definition.
10633
10634 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
10635 Don't define them, they are defined in msdos.c.
10636
10637 * mem-limits.h [MSDOS]: Declare etext.
10638
10639 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
10640 `const' since CORRECT_DIR_SEPS modifies its target.
10641
10642 2002-08-19 Kim F. Storm <storm@cua.dk>
10643
10644 * keyboard.c (Fclear_this_command_keys): Add optional arg
10645 KEEP-RECORD to avoid clearing lossage when we just want to clear
10646 the current key sequence (kmacro needs this).
10647
10648 2002-08-19 Kenichi Handa <handa@localhost>
10649
10650 * composite.c (run_composition_function): Call FUNC if it is fboundp.
10651
10652 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
10653 cons, return Qnil.
10654
10655 2002-08-17 Richard M. Stallman <rms@gnu.org>
10656
10657 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
10658
10659 * sysdep.c [!VMS]: Include sys/files.h.
10660
10661 * editfns.c (save_restriction_restore): Defend from unchained marker.
10662
10663 * buffer.c (overlays_at): Handle extending vec uniformly.
10664 (overlays_in): Handle extending vec from length 0 as in overlays_at.
10665
10666 2002-08-15 Andrew Choi <akochoi@shaw.ca>
10667
10668 * mac.c (init_mac_osx_environment): New function.
10669
10670 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
10671
10672 2002-08-14 Kim F. Storm <storm@cua.dk>
10673
10674 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
10675 executing macro before appending to it (when used from Lisp).
10676 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
10677 which is called prior to each iteration of macro (for kmacro.el).
10678 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
10679
10680 * lisp.h (Fexecute_kbd_macro): Update prototype.
10681
10682 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
10683
10684 2002-08-14 Kenichi Handa <handa@etl.go.jp>
10685
10686 * xselect.c (QUTF8_STRING): New variable.
10687 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
10688 (x_atom_to_symbol): Likewise.
10689 (x_get_local_selection): New argument local_request. If it is
10690 nonzero, call handler_fn with the second arg nil.
10691 (x_handle_selection_request): Call x_get_local_selection with
10692 local_request 0.
10693 (lisp_data_to_selection_data): Don't encode the string here.
10694 (Fx_get_selection_internal): Call x_get_local_selection with
10695 local_request 1.
10696 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10697
10698 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10699
10700 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10701
10702 2002-08-13 Richard M. Stallman <rms@gnu.org>
10703
10704 * minibuf.c (Fminibufferp): New function.
10705 (syms_of_minibuf): Defsubr it.
10706 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10707
10708 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10709
10710 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10711
10712 2002-08-12 Richard M. Stallman <rms@gnu.org>
10713
10714 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10715 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10716 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10717 already.
10718
10719 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10720
10721 2002-08-11 Andrew Choi <akochoi@shaw.ca>
10722
10723 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10724 (Vmac_pass_command_to_system): New variable.
10725 (Vmac_pass_control_to_system): New variable.
10726 (do_mouse_moved): Check wp with is_emacs_window.
10727 (XTread_socket): Check window_ptr with is_emacs_window.
10728 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10729 events back to Mac Toolbox for processing, depending on values of
10730 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10731 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10732 Vmac_pass_control_to_system.
10733
10734 2002-08-10 Kenichi Handa <handa@etl.go.jp>
10735
10736 * coding.c (unencodable_char_position): New function.
10737 (Funencodable_char_position): New function.
10738 (syms_of_coding): Defsubr Funencodable_char_position.
10739
10740 2002-08-10 Andrew Choi <akochoi@shaw.ca>
10741
10742 * mac.c (sys_select) [MAC_OSX]: New function.
10743
10744 * macterm.c (MakeMeTheFrontProcess): New function.
10745 (mac_initialize): Call MakeMeTheFrontProcess.
10746
10747 * s/darwin.h: Define select to sys_select.
10748
10749 2002-08-09 Richard M. Stallman <rms@gnu.org>
10750
10751 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10752
10753 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10754
10755 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10756 end of the buffer.
10757
10758 2002-08-08 Ken Raeburn <raeburn@mit.edu>
10759
10760 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10761
10762 * puresize.h (BASE_PURESIZE): Increase to 910000.
10763
10764 2002-08-08 Kenichi Handa <handa@etl.go.jp>
10765
10766 * coding.c (Ffind_operation_coding_system): For write-region, if
10767 VISIT is a filename, make it the target.
10768
10769 2002-08-07 Richard M. Stallman <rms@gnu.org>
10770
10771 * alloc.c (mark_object): Detect long lists for debugging.
10772 (mark_object_loop_halt): New variable.
10773
10774 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10775
10776 * data.c (Fmake_variable_frame_local): Doc fix.
10777
10778 2002-08-01 David Ponce <david@dponce.com>
10779
10780 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10781 (malloc_widget_value, free_widget_value)
10782 (w32_free_submenu_strings): Use them.
10783
10784 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10785 (push_menu_pane, push_menu_item, single_keymap_panes)
10786 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10787 (single_submenu, set_frame_menubar)
10788 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10789
10790 (Fx_popup_menu): Don't show pop up menu until preceding one is
10791 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10792
10793 * w32menu.c: Changes adapted from xmenu.c
10794 (set_frame_menubar): First parse all submenus,
10795 then make widget_value trees from them.
10796 Don't allocate any widget_value objects
10797 until we are done with the parsing.
10798 (parse_single_submenu): New function.
10799 (digest_single_submenu): New function.
10800 (single_submenu): Function deleted, replaced by those two.
10801
10802 2002-08-04 Andrew Choi <akochoi@shaw.ca>
10803
10804 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10805 returns a valid window pointer before proceeding for keyDown and
10806 autoKey events.
10807
10808 2002-08-03 Andrew Choi <akochoi@shaw.ca>
10809
10810 * macterm.c (USE_CARBON_EVENTS): New macro.
10811 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10812 (x_iconify_frame): Call CollapseWindow.
10813 (Vmac_reverse_ctrl_meta): New variable.
10814 (Vmac_wheel_button_is_mouse_2): New variable.
10815 (init_mac_drag_n_drop): New function.
10816 (mac_do_receive_drag): New function.
10817 (mac_handle_service_event): New function.
10818 (init_service_handler): New function.
10819 (mac_to_emacs_modifiers): New function.
10820 (mac_event_to_emacs_modifiers): New function.
10821 (mac_get_mouse_btn): New function.
10822 (mac_convert_event_ref): New function.
10823 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10824 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10825 mac_get_mouse_btn.
10826 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10827
10828 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10829 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10830 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10831 TOOL_BAR_EVENT for MAC_OS as well.
10832 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10833 as for WINDOWS_NT.
10834 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10835
10836 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10837
10838 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10839
10840 * xdisp.c (forward_to_next_line_start): Fix a condition that
10841 lead to a newline being skipped.
10842
10843 2002-08-02 Andrew Choi <akochoi@shaw.ca>
10844
10845 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10846
10847 2002-08-01 Richard M. Stallman <rms@gnu.org>
10848
10849 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10850
10851 2002-07-31 Andrew Choi <akochoi@shaw.ca>
10852
10853 * macfns.c: #undef init_process before #define-ing it.
10854
10855 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10856 HAVE_CARBON is defined.
10857
10858 2002-07-31 Richard M. Stallman <rms@gnu.org>
10859
10860 * xmenu.c (set_frame_menubar): First parse all submenus,
10861 then make widget_value trees from them.
10862 Don't allocate any widget_value objects
10863 until we are done with the parsing.
10864 (parse_single_submenu): New function.
10865 (digest_single_submenu): New function.
10866 (single_submenu): Function deleted, replaced by those two.
10867
10868 2002-07-30 Juanma Barranquero <lektu@terra.es>
10869
10870 * w32proc.c (syms_of_ntproc): Fix docstring of
10871 `w32-get-true-file-attributes'.
10872
10873 2002-07-28 Richard M. Stallman <rms@gnu.org>
10874
10875 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10876 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10877
10878 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10879
10880 * keyboard.c (make_lispy_event):
10881 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10882 Explicitly clear up_modifier in event->modifiers.
10883
10884 2002-07-27 Richard M. Stallman <rms@gnu.org>
10885
10886 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
10887
10888 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10889 for bar cursor.
10890
10891 2002-07-26 Kenichi Handa <handa@etl.go.jp>
10892
10893 * coding.c (detect_coding_iso2022): While checking a byte sequence
10894 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
10895 it in the normal loop.
10896
10897 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
10898
10899 * xterm.c (expose_overlaps): New function.
10900 (expose_window): Use it to fix the display of overlapping rows.
10901
10902 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10903
10904 2002-07-23 Ken Raeburn <raeburn@gnu.org>
10905
10906 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10907 since it only depends on XUINT.
10908
10909 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10910 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10911 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10912 Macros deleted.
10913
10914 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10915 its value over other approaches.
10916 * sysdep.c (start_of_data): Don't define the function if a macro
10917 form has been defined.
10918
10919 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10920
10921 * xdisp.c (redisplay_updating_p): New variable.
10922 (init_iterator): Don't free realized faces when
10923 redisplay_updating_p is set.
10924 (redisplay_internal): Set redisplay_updating_p while updating
10925 the display.
10926
10927 2002-07-23 Richard M. Stallman <rms@gnu.org>
10928
10929 * editfns.c (Fmessage): Treat "" like nil.
10930
10931 2002-07-23 Kenichi Handa <handa@etl.go.jp>
10932
10933 * xdisp.c (face_before_or_after_it_pos):
10934 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10935
10936 2002-07-22 Juanma Barranquero <lektu@terra.es>
10937
10938 * callproc.c (init_callproc) [DOS_NT]:
10939 Initialize Vshared_game_score_directory to nil.
10940 (syms_of_callproc) [DOS_NT]: Likewise.
10941
10942 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10943
10944 * xdisp.c (display_line): Replace an abort with xassert.
10945
10946 2002-07-21 Richard M. Stallman <rms@gnu.org>
10947
10948 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10949 and END_UNCHANGED when setting buffer_unchanged_p.
10950 Use current_matrix_up_to_date_p to decide whether to use
10951 try_cursor_movement.
10952
10953 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10954
10955 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10956
10957 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10958 Set to nil if dir does not exist.
10959 (syms_of_callproc): Init unconditionally and simply.
10960
10961 * buffer.c (Fbuffer_list): Doc fix.
10962
10963 2002-07-21 Ken Raeburn <raeburn@gnu.org>
10964
10965 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10966
10967 * buffer.c (mmap_realloc): When shrinking, make sure number of
10968 pages to unmap is rounded towards zero.
10969
10970 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10971 (XSETINT): Deleted.
10972
10973 * m/att3b.h (XINT): Don't define.
10974 (VALBITS, VALMASK, XTYPE): Deleted.
10975 (DATA_SEG_BITS): Define.
10976 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10977 ARRAY_MARK_FLAG): Deleted.
10978 (DATA_SEG_BITS): Define.
10979 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10980 (DATA_SEG_BITS): Define.
10981
10982 2002-07-20 Richard M. Stallman <rms@gnu.org>
10983
10984 * print.c (print_error_message): New args CONTEXT and CALLER.
10985 Calls changed.
10986
10987 * lisp.h (print_error_message): Declare new args.
10988
10989 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10990 and CONTEXT to print_error_message, don't print them here.
10991 For a Quit, don't use Vsignaling_function.
10992 Call message_log_maybe_newline.
10993
10994 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10995
10996 2002-07-20 Kim F. Storm <storm@cua.dk>
10997
10998 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10999
11000 2002-07-19 Ken Raeburn <raeburn@gnu.org>
11001
11002 * bytecode.c (struct byte_stack): Pointers into byte string now
11003 point to const.
11004 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
11005 const.
11006 * charset.h (BCOPY_SHORT): Source pointer now points to const.
11007 * coding.c (encode_eol, detect_coding, detect_eol):
11008 (decode_coding, encode_coding, detect_coding_system):
11009 Source strings now treated as const.
11010 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
11011 modify Lisp string contents.
11012 * coding.h (decode_coding, encode_coding, detect_coding,
11013 detect_eol): Declarations updated.
11014 * composite.c (compose_chars_in_text): Treat Lisp string contents
11015 as const.
11016 * dispnew.c (safe_bcopy): Source pointer now points to const.
11017 * lisp.h (STRING_COPYIN): New macro.
11018 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
11019 (internal_with_output_to_temp_buffer): Declarations updated.
11020 * print.c (temp_output_buffer_setup):
11021 (internal_with_output_to_temp_buffer): Buffer name argument is now
11022 pointer to const.
11023 * sound.c (struct sound_device): Function pointer field "write"
11024 buffer argument now points to const.
11025 (vox_write): Buffer argument points to const.
11026 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
11027 contents as const.
11028 * sysdep.c (emacs_write): Buffer pointer now const.
11029 * term.c (encode_terminal_code): Buffer pointer now const.
11030 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
11031 (x_face_list_fonts, x_update_menu_appearance):
11032 (hash_string_case_insensitive): Treat Lisp string contents as const.
11033
11034 2002-07-19 Juanma Barranquero <lektu@terra.es>
11035
11036 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
11037
11038 * fileio.c (syms_of_fileio): Likewise.
11039 (Ffile_name_as_directory): Fix argument name in docstring.
11040 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
11041
11042 2002-07-18 Richard M. Stallman <rms@gnu.org>
11043
11044 * data.c (Fdefalias): Doc fix.
11045
11046 2002-07-17 Dave Love <fx@gnu.org>
11047
11048 * intervals.h (text_property_stickiness): Use P_.
11049
11050 * ccl.c: Remove `emacs' conditionals.
11051 (ccl_backtrace_table): Fix size spec.
11052 (ccl_driver): Fix type errors.
11053
11054 2002-07-16 Ken Raeburn <raeburn@gnu.org>
11055
11056 * alloc.c (xstrdup, make_string, make_unibyte_string)
11057 (make_multibyte_string, build_string): String pointer args now
11058 point to const.
11059 * charset.c (find_charset_in_text, c_string_width):
11060 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
11061 * fileio.c (report_file_error):
11062 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
11063 (count_combining_before, count_combining_after, insert_1_both):
11064 (insert, insert_and_inherit, insert_string):
11065 (insert_before_markers, insert_before_markers_and_inherit):
11066 * lread.c (intern, oblookup, hash_string):
11067 * minibuf.c (temp_echo_area_glyphs):
11068 * search.c (fast_c_string_match_ignore_case):
11069 * sysdep.c (emacs_open, set_file_times):
11070 * xfaces.c (xstricmp):
11071 * xdisp.c (store_frame_title, string_char_and_length):
11072 (message_dolog, message2, message2_nolog, set_message): Likewise.
11073 (set_message_1): Cast message string argument to const pointer.
11074 * editfns.c (general_insert_function): Insertion function now
11075 takes pointer to const for input data.
11076 * charset.h (find_charset_in_text, c_string_width):
11077 (parse_str_as_multibyte): Declarations updated.
11078 * dispextern.h (xstricmp): Declaration updated.
11079 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
11080 (count_size_as_multibyte, count_combining_before):
11081 (count_combining_after, insert_1, insert_1_both, message_dolog):
11082 (insert, insert_and_inherit, insert_before_markers)
11083 (insert_before_markers_and_inherit, set_message, message2):
11084 (message2_dolog, build_string, make_string, make_unibyte_string):
11085 (make_multibyte_string, intern, oblookup, report_file_error):
11086 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
11087 (emacs_open, xstrdup): Declarations updated.
11088 * systime.h (set_file_times): Declaration updated.
11089
11090 * charset.c (find_charset_in_text, lisp_string_width): Use const
11091 for pointer to lisp string data.
11092 * charset.h (FETCH_STRING_CHAR_ADVANCE):
11093 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
11094 * coding.c (Ffind_coding_systems_region_interval):
11095 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
11096 (Fmake_directory_internal, Fdelete_directory):
11097 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
11098 * fontset.c (font_family_registry, fs_query_fontset):
11099 (list_fontsets):
11100 * frame.c (Fframe_parameter):
11101 * keyboard.c (cmd_error_internal):
11102 * keymap.c (Fdescribe_buffer_bindings):
11103 * lread.c (complete_filename_p, openp):
11104 * minibuf.c (Fminibuffer_complete_word):
11105 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
11106 (face_before_or_after_it_pos, next_element_from_string):
11107 (get_overlay_arrow_glyph_row, display_mode_element):
11108 (decode_mode_spec_coding):
11109 * xterm.c (same_x_server): Likewise.
11110
11111 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
11112 settings of non-existent fields.
11113
11114 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
11115 copy a lisp value.
11116
11117 * lread.c (Fintern_soft): Use string macros instead of
11118 Lisp_String fields.
11119 * keyboard.c (echo_char, parse_modifiers_uncached):
11120 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
11121 * textprop.c (validate_interval_range, interval_of): Likewise.
11122
11123 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
11124
11125 * charset.h (FETCH_STRING_CHAR_ADVANCE)
11126 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
11127 XSTRING()->size_byte.
11128
11129 * lisp.h (SDATA, SREF): Produce rvalue.
11130 (SSET): New macro.
11131 * alloc.c (make_event_array): Use SSET for storing into a string.
11132 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
11133 a string.
11134 * casefiddle.c (casify_object): Use SSET.
11135 * charset.h (FETCH_STRING_CHAR_ADVANCE)
11136 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
11137 address of string contents.
11138 * data.c (Faref): Use SDATA.
11139 (Faset): Use SDATA, SSET.
11140 * dired.c (directory_files_internal): Use SSET.
11141 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
11142 (Fread_file_name): Use SREF, SSET.
11143 * fns.c (concat): Use SSET.
11144 (concat, Fdelete): Use SDATA.
11145 * insdel.c (insert_from_string_1): Use SDATA.
11146 * keyboard.c (Fevent_convert_list): Use SREF.
11147 * lread.c (Fload): Use SDATA, SSET.
11148 * macfns.c (validate_x_resource_name): Use SSET.
11149 * process.c (status_message): Use SSET.
11150 * search.c (wordify): Use SDATA.
11151 (Freplace_match): Use SREF.
11152 * w32fns.c (validate_x_resource_name): Use SSET.
11153 * xfns.c (validate_x_resource_name): Use SSET.
11154 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
11155
11156 2002-07-16 Richard M. Stallman <rms@gnu.org>
11157
11158 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
11159
11160 * xdisp.c (reconsider_clip_changes):
11161 Don't test prevent_redisplay_optimizations_p.
11162 (redisplay_internal): Test prevent_redisplay_optimizations_p
11163 along with clip_changed in some cases.
11164 (try_window_id): Likewise.
11165 (redisplay_window): New local var buffer_unchanged_p.
11166
11167 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
11168
11169 * process.c (create_process): Test USG_SUBTTY_WORKS.
11170 (process_send_signal): Clean up handling of GID.
11171 Detect errors in ioctls meant to set GID.
11172
11173 * window.c (temp_output_buffer_show):
11174 Don't set prevent_redisplay_optimizations_p.
11175
11176 2002-07-15 Juanma Barranquero <lektu@terra.es>
11177
11178 * eval.c (Fdefvaralias): Add docstring argument.
11179
11180 2002-07-15 Ken Raeburn <raeburn@gnu.org>
11181
11182 * lisp.h (STRING_INTERVALS): Produce rvalue.
11183 (STRING_SET_INTERVALS): New macro.
11184 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
11185 * fns.c (Fstring_as_multibyte): Likewise.
11186 * intervals.c (balance_possible_root_interval, delete_interval)
11187 (create_root_interval, copy_intervals_to_string): Likewise.
11188 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
11189 instead of 0.
11190
11191 2002-07-14 Ken Raeburn <raeburn@gnu.org>
11192
11193 * lisp.h (STRING_SET_CHARS): New macro.
11194 (SCHARS, SBYTES): Produce rvalues.
11195 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
11196 * fns.c (concat): Likewise.
11197 * lread.c (read_vector): Likewise.
11198
11199 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
11200 (STRING_SET_UNIBYTE): New macro.
11201 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
11202 length of -1) changed to use STRING_SET_UNIBYTE.
11203 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11204 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
11205 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
11206 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
11207 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
11208 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
11209 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
11210 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
11211 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11212 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
11213 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
11214 STRING_BYTES or indirection changed to SCHARS, SBYTES,
11215 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
11216 unchanged for now.
11217
11218 2002-07-13 Kim F. Storm <storm@cua.dk>
11219
11220 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
11221
11222 2002-07-12 Richard M. Stallman <rms@gnu.org>
11223
11224 * fileio.c (Fwrite_region): Doc fix.
11225
11226 * print.c (print_error_message): Don't handle Vsignaling_function here.
11227
11228 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
11229 (command_loop_1): Avoid certain actions after memory-full error.
11230
11231 * eval.c (Fsignal): Don't call cancel_hourglass.
11232 For a memory-full error, don't call Vsignal_hook_function
11233 and don't set Vsignaling_function.
11234
11235 * process.c (process_send_signal): Add abort call.
11236
11237 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
11238
11239 * keymap.c (Fkey_binding): Fix typo.
11240
11241 2002-07-11 Richard M. Stallman <rms@gnu.org>
11242
11243 * alloc.c (Vmemory_full): New variable.
11244 (Vmemory_signal_data): Renamed from memory_signal_data.
11245 Uses changed.
11246 (syms_of_alloc): Defvar them.
11247 (memory_full, buffer_memory_full): Set Vmemory_full.
11248
11249 * lisp.h (Vmemory_full): Add declaration.
11250 (current_column, indented_beyond_p): Change declaration.
11251
11252 * indent.c (last_known_column): Declare as double, not float.
11253 (current_column, current_column_1, string_display_width)
11254 (position_indentation): Return `double'.
11255 (indented_beyond_p): Arg `column' is `double'. Callers changed.
11256
11257 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
11258 (back_to_previous_visible_line_start)
11259 (reseat_at_next_visible_line_start, next_element_from_buffer):
11260 Use `double', not `float', when calling indented_beyond_p.
11261
11262 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
11263
11264 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
11265
11266 2002-07-11 Juanma Barranquero <lektu@terra.es>
11267
11268 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
11269 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
11270 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
11271 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
11272 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
11273 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
11274
11275 2002-07-10 Juanma Barranquero <lektu@terra.es>
11276
11277 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
11278 All callers changed.
11279
11280 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
11281
11282 * data.c (Fdefalias): Add an optional `docstring' argument.
11283 (set_internal, Fsetq_default): Use XCAR/XCDR.
11284
11285 * composite.c (HASH_VALUE, HASH_KEY):
11286 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
11287
11288 2002-07-09 Kenichi Handa <handa@etl.go.jp>
11289
11290 * callproc.c (Fcall_process): Fix previous change.
11291
11292 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
11293
11294 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
11295 Add support for hash-tables.
11296 (Ftry_completion): Return t even if the string appears multiple times.
11297
11298 * fns.c (Fnconc): Use XCDR.
11299 (Fprovide): Use CONSP and XCDR.
11300 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11301 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
11302 (Fmake_hash_table): Accept `:size nil'.
11303 (Fmakehash): Delete: moved to subr.el.
11304 (syms_of_fns): Don't defsubr makehash.
11305
11306 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11307 (HASH_TABLE_SIZE): Move from fns.c.
11308
11309 2002-07-07 Richard M. Stallman <rms@gnu.org>
11310
11311 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
11312 Instead just return 0 when there is something to be done.
11313 (try_scrolling): If make_cursor_line_fully_visible returns 0,
11314 retry scrolling as if cursor were off the bottom.
11315 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
11316 return CURSOR_MOVEMENT_MUST_SCROLL.
11317 (redisplay_window): If make_cursor_line_fully_visible returns 0,
11318 go to try_to_scroll.
11319
11320 * buffer.c (Fbuffer_local_value): Store current value into its binding
11321 so we get the up-to-date value for the binding that is loaded.
11322
11323 * eval.c (Fdefmacro): Doc fix.
11324
11325 2002-07-05 Dave Love <fx@gnu.org>
11326
11327 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
11328 correctly.
11329
11330 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
11331 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
11332 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
11333 CCL_LookupCharConstTbl.
11334 (syms_of_ccl): Defvar translation-hash-table-vector.
11335
11336 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11337
11338 * xdisp.c: Remove unused variable `face'.
11339
11340 2002-07-04 Juanma Barranquero <lektu@terra.es>
11341
11342 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
11343 obsolescence information.
11344
11345 2002-07-03 Andrew Choi <akochoi@shaw.ca>
11346
11347 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
11348 pattern. Search cache first.
11349 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
11350 for Japanese font.
11351 (XLoadQueryFont): Use it.
11352
11353 2002-07-02 Richard M. Stallman <rms@gnu.org>
11354
11355 * keymap.c (Fdefine_key): Doc fix.
11356
11357 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
11358
11359 2002-07-02 Juanma Barranquero <lektu@terra.es>
11360
11361 * keymap.c (syms_of_keymap): Fix typo.
11362
11363 2002-07-01 Andrew Choi <akochoi@shaw.ca>
11364
11365 * s/darwin.h: Define POSIX_SIGNALS.
11366
11367 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
11368 and FSRefMakePath to convert FSSpec returned with Apple Event to
11369 Posix pathname.
11370 (mac_initialize) [TARGET_API_MAC_CARBON]:
11371 Call init_required_apple_events and disable the `Quit' menu item
11372 provided automatically by the Carbon Toolbox.
11373
11374 2002-07-01 Dave Love <fx@gnu.org>
11375
11376 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
11377 for K&R.
11378
11379 * xterm.c: Fix prototype for K&R.
11380
11381 * term.c (costs_set): Declare static, non-initialized for pcc.
11382
11383 2002-07-01 Richard M. Stallman <rms@gnu.org>
11384
11385 * keyboard.c (timer_last_idleness_start_time): New variable.
11386 (timer_start_idle): Set that.
11387 (read_key_sequence): Use that to reset timer_idleness_start_time
11388 to previous value.
11389
11390 * window.c (Frecenter): With arg, set optional_new_start.
11391
11392 * xdisp.c (redisplay_internal): Make optional_new_start really work.
11393
11394 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
11395 buffer for completion.
11396
11397 2002-06-29 Ken Raeburn <raeburn@gnu.org>
11398
11399 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
11400
11401 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11402
11403 * keyboard.c (readable_filtered_events): New function that filters
11404 FOCUS_IN_EVENT depending on parameter.
11405 (readable_events): Calls readable_filtered_events, not filtering
11406 FOCUS_IN_EVENT.
11407 (get_filtered_input_pending): New function, filtering parameter passed
11408 to readable_filtered_events.
11409 (get_input_pending): Calls get_filtered_input_pending, not filtering
11410 FOCUS_IN_EVENT.
11411 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
11412 FOCUS_IN_EVENT.
11413
11414 * xterm.h (struct x_output): Add focus_state.
11415
11416 * xterm.c (x_focus_changed): New function.
11417 (x_detect_focus_change): New function.
11418 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
11419 EnterNotify and LeaveNotify to track X focus changes.
11420
11421 2002-06-28 Andreas Schwab <schwab@suse.de>
11422
11423 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
11424
11425 2002-06-27 Kim F. Storm <storm@cua.dk>
11426
11427 * xdisp.c: (mode_line_string_list, mode_line_string_face)
11428 (mode_line_string_face_prop): New variables.
11429 (store_mode_line_string): New function.
11430 (display_mode_element): Use store_mode_line_string to
11431 add mode-line string elements to mode_line_string_list
11432 when mode_line_string_list is non-nil.
11433 (Fformat_mode_line): Now returns propertized string by
11434 default. New arg NO-PROPS to ignore properties.
11435 (decode_mode_spec): Only add two dashes for %- in propertized
11436 mode-line string.
11437 (syms_of_xdisp): Init and staticpro mode_line_string_list.
11438
11439 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
11440
11441 * minibuf.c (minibuffer_completion_contents): Add return type.
11442
11443 2002-06-27 Juanma Barranquero <lektu@terra.es>
11444
11445 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
11446
11447 2002-06-26 Juanma Barranquero <lektu@terra.es>
11448
11449 * fileio.c (read_file_name_cleanup): Add missing return.
11450
11451 2002-06-26 Richard M. Stallman <rms@gnu.org>
11452
11453 * window.c (Frecenter): Don't set force_start flag.
11454
11455 * minibuf.c (do_completion, Fminibuffer_complete_word)
11456 (Fminibuffer_completion_help): Complete just the text before point.
11457 (minibuffer_completion_contents): New function.
11458
11459 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
11460
11461 * frame.c (frames_bury_buffer): Function deleted.
11462
11463 2002-06-25 Miles Bader <miles@gnu.org>
11464
11465 * callint.c (Fcall_interactively): When checking to see if doprnt hit
11466 the end of callint_message, allow for a terminating '\0'.
11467
11468 2002-06-24 Juanma Barranquero <lektu@terra.es>
11469
11470 * w32select.c: Include composite.h
11471
11472 * w16select.c: Likewise.
11473
11474 2002-06-24 Kenichi Handa <handa@etl.go.jp>
11475
11476 * callproc.c (Fcall_process): If code detection is necessary,
11477 call detect_coding directly here.
11478
11479 * coding.c (detect_eol): Preserve coding->cmp_data.
11480
11481 * w16select.c (Fw16_get_clipboard_data):
11482 * w32fns.c (w32_to_x_font):
11483 * w32select.c (Fw32_get_clipboard_data):
11484 * xselect.c (selection_data_to_lisp_data):
11485 * xterm.c (XTread_socket): Disable composition handling.
11486
11487 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
11488
11489 * print.c (temp_output_buffer_setup): Kill all local variables.
11490
11491 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
11492
11493 * lread.c (Fread): Remove redundant and imprecise declaration.
11494
11495 * xfns.c (check_x_display_info): Use check_x_frame.
11496
11497 * .gdbinit (xprintsym): Use the new `xname' field.
11498 (xsymbol): Use it.
11499
11500 2002-06-22 Jason Rumney <jasonr@gnu.org>
11501
11502 * w32fns.c (file_dialog_callback): New function.
11503 (Fx_file_dialog): Allow selecting directories as well as files.
11504
11505 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11506
11507 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
11508 OpenBSD. Add support for mipseb-*-netbsd* machines.
11509
11510 2002-06-17 Andrew Choi <akochoi@shaw.ca>
11511
11512 * macterm.c (mac_scroll_area): Set foreground and backcolor to
11513 black and white before scrolling. Restore frame background and
11514 foreground color after scrolling.
11515 (do_window_update): Call XClearWindow before calling expose_frame.
11516 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
11517 FRAME_FOREGROUND_PIXEL of frame.
11518
11519 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11520 test Mac command key as <ALT> key.
11521
11522 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
11523
11524 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
11525
11526 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
11527 Lookup keys in function-key-map immediately so that key-translation-map
11528 can be applied earlier.
11529 Remove function_key_possible and key_translation_possible, replaced
11530 by checking `keytran_start < t'.
11531
11532 * .gdbinit (xsymbol): Use the new `xname' field.
11533
11534 2002-06-17 Andrew Choi <akochoi@shaw.ca>
11535
11536 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11537 test Mac command key as <ALT> key.
11538
11539 * mac.c (do_applescript): Call initialize_applescript if necessary
11540 when first called. Dispose of result_desc only when there is no error.
11541 (Fdo_applescript): Use %d format specifier instead of %ld.
11542
11543 2002-06-16 Andrew Choi <akochoi@shaw.ca>
11544
11545 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
11546 of FrontWindow for cases keyDown and autoKey.
11547
11548 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
11549 Vdefault_fontset to Monaco with mac-roman coding.
11550
11551 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
11552 init_process before and after inclusion of Carbon/Carbon.h, resp.
11553
11554 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
11555 cursor_gc.
11556 (add_font_name_table_entry): New function.
11557 (init_font_name_table): Use add_font_name_table_entry; add italic,
11558 bold, and bold-italic entries for truetype fonts.
11559
11560 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
11561 for Mac too.
11562 (try_font_list) [MAC_OS]: If no font matches given registry, try
11563 fonts with any registry matching face_family.
11564 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
11565
11566 * s/darwin.h: If autoconf detects the Ncurses library, define
11567 LIBS_TERMCAP to -lncurses to use it.
11568
11569 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
11570
11571 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
11572
11573 2002-06-15 Richard M. Stallman <rms@gnu.org>
11574
11575 * window.c (Fset_window_configuration): Explicitly preserve
11576 the point value that new_current_buffer had at the start.
11577
11578 2002-06-14 Juanma Barranquero <lektu@terra.es>
11579
11580 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
11581 Fix typos.
11582
11583 2002-06-14 Kim F. Storm <storm@cua.dk>
11584
11585 * insdel.c (insert_1_both, insert_from_string_1)
11586 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
11587 insert happened in the end_unchanged region. Otherwise, the
11588 redisplay may be confused and duplicate the last line in the
11589 buffer [seen after save-buffer when require-final-newline==t].
11590
11591 2002-06-13 Jason Rumney <jasonr@gnu.org>
11592
11593 * w32.c (init_environment): Remove EMACSLOCKDIR.
11594 (stat): Swap _S_IFDIR and _S_IFREG.
11595
11596 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11597
11598 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
11599 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
11600 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
11601 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
11602 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
11603 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
11604 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
11605 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
11606 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
11607 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
11608 SELECTION_REQUEST_EVENT, selection_clear_event to
11609 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
11610 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
11611 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
11612 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
11613 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
11614 no_event to NO_EVENT.
11615
11616 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11617
11618 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
11619
11620 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
11621
11622 * intervals.c (textget): Don't forget to `return'.
11623 (lookup_char_property): Use XCAR/XCDR.
11624
11625 2002-06-12 Juanma Barranquero <lektu@terra.es>
11626
11627 * xdisp.c (Fformat_mode_line): Fix typo.
11628
11629 2002-06-12 Kim F. Storm <storm@cua.dk>
11630
11631 * xdisp.c (Fformat_mode_line): New function.
11632 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
11633 (store_frame_title_char, store_frame_title): Use unconditionally.
11634 (init_xdisp): Defsubr Fformat_mode_line.
11635 Initialize frame_title_buf etc. unconditionally.
11636
11637 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
11638
11639 * keyboard.c (read_key_sequence):
11640 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
11641 things through those maps after downcasing events.
11642 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
11643 applies after function-key-map.
11644 Make sure that keytran can be done in the middle in the sequence.
11645 Be careful not to throw away events past the one we downcase.
11646
11647 * lread.c (read_integer): Remove unused var `tem'.
11648 (read1): Fix int/Lisp_Object mixup.
11649
11650 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
11651
11652 2002-06-11 Richard M. Stallman <rms@gnu.org>
11653
11654 * keyboard.c (readable_events): Ignore any number of
11655 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
11656
11657 2002-06-09 Miles Bader <miles@gnu.org>
11658
11659 * xfaces.c (Ftty_supports_face_attributes_p): New function.
11660 (parse_rgb_list, tty_lookup_color): New functions.
11661 (tty_defined_color): Use `tty_lookup_color' to do all the work.
11662 (color_distance, Fcolor_distance): New functions.
11663 (TTY_SAME_COLOR_THRESHOLD): New macro.
11664 (Qtty_color_standard_values): New variable.
11665 (syms_of_xfaces): Initialize new vars & functions.
11666
11667 2002-06-08 Colin Walters <walters@verbum.org>
11668
11669 * textprop.c (Vchar_property_alias_alist): New variable.
11670 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
11671
11672 * intervals.c (lookup_char_property): New function for looking up
11673 overlay and text properties, created from textget.
11674 (textget): Use it.
11675
11676 * intervals.h (lookup_char_property): Declare.
11677 (Vchar_property_alias_alist): Declare.
11678
11679 * buffer.c (Foverlay_get): Use lookup_char_property.
11680
11681 2002-06-07 Sam Steingold <sds@gnu.org>
11682
11683 * xselect.c (lisp_data_to_selection_data): Fix last change:
11684 *data_ret is not a Lisp string, while unibyte_string is.
11685
11686 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
11687
11688 * xselect.c (lisp_data_to_selection_data): Fix last change:
11689 set size_ret.
11690
11691 2002-06-07 Andreas Schwab <schwab@suse.de>
11692
11693 * m/amdx86-64.h: New file.
11694
11695 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11696
11697 * fns.c (Fstring_make_unibyte): Doc fix.
11698
11699 * xselect.c (lisp_data_to_selection_data): If the requested type
11700 is STRING, call string_make_unibyte to encode the selected text
11701 as a string.
11702
11703 * window.c (Fset_window_hscroll): Doc fix.
11704
11705 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11706
11707 * fileio.c (choose_write_coding_system):
11708 Call select-safe-coding-system properly.
11709
11710 2002-06-03 Richard M. Stallman <rms@gnu.org>
11711
11712 * xdisp.c (message_with_string): Error if STRING is not a string.
11713
11714 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11715
11716 * fileio.c (choose_write_coding_system): Pass FILE arg to
11717 Vselect_safe_coding_system_function.
11718
11719 2002-06-03 Ken Raeburn <raeburn@gnu.org>
11720
11721 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11722
11723 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11724
11725 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11726 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11727 * keymap.c (describe_command): Likewise.
11728 * minibuf.c (read_minibuf): Likewise.
11729
11730 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11731 Cast `current_column' return value to int.
11732 (back_to_previous_visible_line_start)
11733 (reseat_at_next_visible_line_start, next_element_from_buffer):
11734 Cast `indented_beyond_p' 3rd arg to float.
11735
11736 * indent.c (last_known_column): Now a float.
11737 (current_column_1, position_indentation, current_column)
11738 (string_display_width): Return float.
11739 (Fcurrent_column): Cast `current_column' return value to int.
11740 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11741 (indented_beyond_p): Third arg now a float.
11742 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11743
11744 * lisp.h (current_column): Now returns float.
11745 (indented_beyond_p): 3rd arg now a float.
11746
11747 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11748
11749 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11750 is Qcompound_text_with_extensions.
11751
11752 * xselect.c (lisp_data_to_selection_data): Always set selection
11753 type as string if x_encode_text returns streingp non-NULL.
11754
11755 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11756
11757 2002-05-30 Richard M. Stallman <rms@gnu.org>
11758
11759 * window.c (Fset_window_configuration): Correct the handling
11760 of point in current buffer, to work with multiple windows.
11761
11762 2002-05-29 Colin Walters <walters@verbum.org>
11763
11764 * lread.c (Fread_from_string): Don't depend on order of evaluation
11765 for C function parameters.
11766
11767 2002-05-28 Richard M. Stallman <rms@gnu.org>
11768
11769 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11770 way for blinked-off state and for a nonselected window.
11771
11772 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11773 instead, see if the new start pos is at beginning of line.
11774
11775 * fileio.c (Fwrite_region): If START is a string, don't
11776 make any annotations.
11777
11778 * eval.c (syms_of_eval): Doc fix.
11779
11780 2002-05-28 Colin Walters <walters@debian.org>
11781
11782 * emacs.c (USAGE1): Add --no-splash.
11783 (standard_args): Ditto.
11784
11785 2002-05-28 Colin Walters <walters@gnu.org>
11786
11787 * lread.c (readchar_count): New variable.
11788 (readchar): Increment it.
11789 (unreadchar): Decrement it.
11790 (read_multibyte): Decrement it.
11791 (Vread_with_symbol_positions): New variable.
11792 (Vread_symbol_positions_list): New variable.
11793 (read_internal_start): New function, created from Fread and
11794 Fread_from_string. Handle Vread_symbol_positions_list and
11795 Vread_with_symbol_positions.
11796 (readevalloop, Fread, Fread_from_string): Use it.
11797 (read1): Use readchar_count to add symbol positions to
11798 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11799 (syms_of_lread): DEFVAR_LISP and initialize them.
11800
11801 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11802 (substitute_object_recurse, substitute_object_in_subtree)
11803 (substitute_in_interval): Prototype.
11804 (read_multibyte): Return c if it's less than zero.
11805
11806 2002-05-28 Kim F. Storm <storm@cua.dk>
11807
11808 * fileio.c (Fread_file_name_internal): Added brute-force
11809 speed up for using predicate file-directory-p.
11810
11811 2002-05-28 Kim F. Storm <storm@cua.dk>
11812
11813 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11814 New variables.
11815 (syms_of_fileio): DEFVAR_LISP them.
11816 (read_file_name_cleanup): New unwind function.
11817 (Fread_file_name_internal): Only return completions satifying
11818 Vread_file_name_predicate. Temporarily unwind protect and rebind
11819 default-directory while checking completions against the predicate.
11820 (Fread_file_name): Added PREDICATE argument. Specbind it to
11821 Vread_file_name_predicate during completion.
11822 Call Vread_file_name_function to read the file name if non-nil.
11823
11824 * lisp.h (Fread_file_name): Now has 6 args.
11825
11826 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11827 predicate for Fread_file_name when reading directory name.
11828 Supply Qnil for predicate in other calls to Fread_file_name.
11829
11830 2002-05-26 Miles Bader <miles@gnu.org>
11831
11832 * term.c (tty_capable_p): New function.
11833 * dispextern.h (tty_capable_p): New function declaration.
11834 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11835 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11836
11837 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11838
11839 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11840 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11841 (Vwrite_region_annotate_functions): Docstring fix.
11842
11843 2002-05-23 Kim F. Storm <storm@cua.dk>
11844
11845 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11846 phys_cursor's hpos is overwritten. This is still not completely
11847 correct, as it doesn't really make sense to use hpos at all to
11848 get the cursor glyph (as that is relative to the width of the
11849 characters on the line, which may have changed during the update).
11850
11851 2002-05-22 Jason Rumney <jasonr@gnu.org>
11852
11853 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11854 Lisp_Object.
11855 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11856 Use modified enumfont_t struct.
11857
11858 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11859
11860 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11861 Handle the `hbar' cursor type.
11862 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11863
11864 * w32fns.c (Qhbar): New variable.
11865 (x_specified_cursor_type): Use it.
11866
11867 2002-05-21 Ken Raeburn <raeburn@gnu.org>
11868
11869 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11870 now, when the address is needed.
11871
11872 2002-05-21 Colin Walters <walters@gnu.org>
11873
11874 * Makefile.in (shortlisp): Add font-core.el.
11875
11876 2002-05-20 Richard M. Stallman <rms@gnu.org>
11877
11878 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11879
11880 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11881 equivalent key bindings here.
11882
11883 2002-05-20 Ken Raeburn <raeburn@gnu.org>
11884
11885 Change symbol structure to contain a lisp object for the symbol
11886 name:
11887 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
11888 object field named "xname".
11889 (SYMBOL_NAME): New macro.
11890 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
11891 name field.
11892 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
11893 (mark_object, gc_sweep): Use symbol xname field and XSTRING
11894 instead of name field.
11895 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
11896 SYMBOL_NAME instead of XSYMBOL and name field.
11897 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
11898 instead of XSYMBOL and name field.
11899 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11900 and SYMBOL_NAME instead of XSYMBOL and name field.
11901 * coding.c (Fread_coding_system, code_convert_region1)
11902 (code_convert_string1, code_convert_string_norecord)
11903 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11904 XSYMBOL and name field.
11905 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11906 (Fmake_variable_buffer_local, Fmake_local_variable)
11907 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11908 of XSYMBOL and name field.
11909 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11910 XSYMBOL and name field.
11911 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11912 instead of XSYMBOL and name field.
11913 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11914 XSYMBOL and name field.
11915 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11916 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11917 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11918 instead of XSYMBOL and name field.
11919 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11920 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11921 (parse_solitary_modifier, Fexecute_extended_command):
11922 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11923 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11924 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11925 of XSYMBOL and name field.
11926 (describe_command, describe_translation): Use SYMBOL_NAME and
11927 assignment instead of XSYMBOL and name field and XSETSTRING.
11928 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11929 instead of XSYMBOL and name field.
11930 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11931 name field and XSETSTRING.
11932 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11933 of XSYMBOL and name field.
11934 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11935 assignment instead of XSYMBOL and name field and XSETSTRING.
11936 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11937 XSTRING instead of XSYMBOL and name field.
11938 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11939 and XSTRING instead of XSYMBOL and name field.
11940 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11941 and XSTRING instead of XSYMBOL and name field.
11942 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11943 XSTRING instead of XSYMBOL and name field.
11944 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11945 of XSYMBOL and name field.
11946 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11947 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11948
11949 2002-05-19 Ken Raeburn <raeburn@gnu.org>
11950
11951 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11952 and XCDR real rvalues in most configurations.
11953
11954 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11955 Don't take the address of the cdr part of a cons cell; instead, track
11956 the parent cell and call XSETCDR, or set the variable for the head
11957 of the list if we haven't started down the list yet.
11958
11959 2002-05-19 Richard M. Stallman <rms@gnu.org>
11960
11961 * doc.c (reread_doc_file): Don't ask for confirmation.
11962
11963 2002-05-18 Jason Rumney <jasonr@gnu.org>
11964
11965 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11966 (xbm_load_image): Use it.
11967 (xbm_load): Ditto.
11968 (xbm_read_bitmap_data): Reverted to xfns.c version.
11969 From David Ponce <david@dponce.com>.
11970
11971 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11972
11973 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11974 2.02 and later.
11975
11976 2002-05-16 Juanma Barranquero <lektu@terra.es>
11977
11978 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11979
11980 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11981
11982 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11983 meaningful test.
11984 (read_char_minibuf_menu_prompt): Fix typo.
11985
11986 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11987
11988 * eval.c (Fcommandp): Doc fix.
11989
11990 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11991
11992 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11993 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11994 (Fset_keymap_parent): Gcpro a bit more.
11995 (access_keymap): Gcpro around meta_map call and around the main loop.
11996 (get_keyelt): Gcpro when following indirect references.
11997 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11998 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11999 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
12000 Remove useless ad-hoc remap code.
12001
12002 2002-05-13 Richard M. Stallman <rms@gnu.org>
12003
12004 * search.c (search_buffer): Give up boyer moore search if inverse
12005 translation change charset_base.
12006
12007 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
12008
12009 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
12010 characters is carried over from the previous block of text, adjust
12011 coding->produced to account for the extra character.
12012
12013 2002-05-11 Andreas Schwab <schwab@suse.de>
12014
12015 * coding.c (intersection): Keep the elements of the returned list
12016 in the same order as in the first list.
12017
12018 2002-05-11 Kim F. Storm <storm@cua.dk>
12019
12020 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
12021 only update cmm_size if realloc actually succeeds.
12022 Testing with initial size of 2 elements revealed that using
12023 realloc on GNU/Linux would cause a random trap in xmalloc
12024 later on, so I rewrote the code to use malloc/bcopy/free instead
12025 of realloc.
12026
12027 2002-05-10 Jason Rumney <jasonr@gnu.org>
12028
12029 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
12030
12031 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
12032
12033 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
12034 parens, to ensure correct evaluation order.
12035
12036 2002-05-10 Kim F. Storm <storm@cua.dk>
12037
12038 * keymap.c (Vemulation_mode_map_alists): New variable.
12039 (syms_of_keymap): DEFVAR_LISP it.
12040 (current_minor_maps): Process keymap alists in that list before
12041 minor-mode-overriding-map-alist and minor-mode-map-alist.
12042
12043 2002-05-09 Richard M. Stallman <rms@gnu.org>
12044
12045 * search.c (Freplace_match): Doc fix.
12046
12047 2002-05-09 Kim F. Storm <storm@cua.dk>
12048
12049 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
12050 Enlarge cursor rectangle drawn around image with non-zero relief.
12051
12052 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
12053 Enlarge cursor rectangle drawn around image with non-zero relief.
12054
12055 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
12056 Enlarge cursor rectangle drawn around image with non-zero relief.
12057
12058 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
12059
12060 * xselect.c (lisp_data_to_selection_data): Don't set selection
12061 type if comes from the Lisp object's car. If the selection
12062 contains a pure ASCII text, always return QSTRING as its type.
12063
12064 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12065
12066 * mac.c (mac-cut-function): Doc fix.
12067
12068 2002-05-05 Richard M. Stallman <rms@gnu.org>
12069
12070 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
12071
12072 2002-05-04 Jason Rumney <jasonr@gnu.org>
12073
12074 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
12075 for event-click-count.
12076
12077 * process.c (init_process): Only add server subfeature if we can
12078 use non-blocking I/O.
12079
12080 2002-05-04 Andrew Choi <akochoi@shaw.ca>
12081
12082 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
12083 repeatedly.
12084
12085 2002-05-03 Jason Rumney <jasonr@gnu.org>
12086
12087 * process.c (Fmake_network_process): Only support server sockets
12088 when we can make them non-blocking.
12089
12090 * s/ms-w32.h (HAVE_SELECT): Define.
12091
12092 * w32.h (FILE_NDELAY): New flag.
12093
12094 * w32.c (sys_getpeername, fcntl): New functions.
12095 (_sys_read_ahead): Temporarily block on non-blocking sockets.
12096
12097 * w32proc.c: include sys/file.h.
12098
12099 2002-05-03 Colin Walters <walters@verbum.org>
12100
12101 * callproc.c (Vgame_score_directory): Renamed to
12102 Vshared_game_score_directory.
12103
12104 2002-04-30 Richard M. Stallman <rms@gnu.org>
12105
12106 * s/gnu.h [emacs]: Include stdio.h.
12107 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
12108
12109 * eval.c (do_autoload): Error if called while preparing to dump.
12110
12111 * fns.c (Frequire): Error if need to load while preparing to dump.
12112
12113 2002-04-28 Colin Walters <walters@verbum.org>
12114
12115 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
12116 Default to "~/.emacs.d/games".
12117
12118 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
12119
12120 * lread.c (openp): Change arg exec_only to predicate.
12121 (build_load_history): Use XCAR/XCDR.
12122 (Flocate_file_internal): New fun.
12123 (syms_of_lread): Defsubr it.
12124 (Fload): Update call to openp.
12125
12126 * lisp.h (openp): Update prototype.
12127
12128 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
12129 * w32proc.c (sys_spawnve):
12130 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
12131 * w32.c (check_windows_init_file):
12132 * sound.c (Fplay_sound_internal):
12133 * process.c (Fstart_process):
12134 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
12135 * mac.c (run_mac_command):
12136 * emacs.c (init_cmdargs):
12137 * callproc.c (Fcall_process): Update call to openp.
12138
12139 * textprop.c (remove_properties): Don't use XCAR without CONSP.
12140
12141 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
12142
12143 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12144
12145 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
12146 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
12147
12148 2002-04-28 Richard M. Stallman <rms@gnu.org>
12149
12150 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
12151
12152 * eval.c (Fcommandp): New arg for_call_interactively.
12153 * lisp.h (Fcommandp): Declare new arg.
12154
12155 2002-04-28 Jason Rumney <jasonr@gnu.org>
12156
12157 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
12158
12159 * w32.c (stat, fstat): Use file index information to generate
12160 inodes for directories where available.
12161
12162 2002-04-26 Andrew Choi <akochoi@shaw.ca>
12163
12164 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
12165 [HAVE_CARBON]: Include Mac object files.
12166
12167 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
12168 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
12169 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
12170 MAC_OSX, and MAC_OS instead of macintosh.
12171
12172 * editfns.c [MAC_OS8]: Include stdio.h.
12173
12174 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
12175
12176 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
12177 Apple Monaco.
12178
12179 * process.c: Declare QCfamily and QCfilter as extern.
12180 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
12181 calling select.
12182
12183 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
12184
12185 * tparam.c [MAC_OSX]: Don't define BC and UP.
12186
12187 * config.in [HAVE_CARBON]: Add.
12188
12189 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
12190 Move here from mac/src and mac/inc.
12191
12192 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
12193
12194 2002-04-26 Gerd Moellmann <gerd@gnu.org>
12195
12196 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
12197 Compute phys_cursor_width from the x position returned
12198 by x_draw_glyhs, which is cheaper.
12199 (x_display_and_set_cursor): Compute the buffer-local value
12200 of `cursor-in-non-selected-windows' only when needed.
12201
12202 2002-04-25 Gerd Moellmann <gerd@gnu.org>
12203
12204 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
12205 cursor on a stretch glyph has a width that depends on
12206 x_stretch_cursor_p.
12207
12208 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12209
12210 * abbrev.c (abbrev-start-location): Doc fix.
12211
12212 * indent.c (Fvertical_motion): Fix last change.
12213
12214 2002-04-25 Gerd Moellmann <gerd@gnu.org>
12215
12216 * indent.c (Fvertical_motion): Move to the start of the line
12217 containing PT before moving up or down.
12218
12219 2002-04-24 Gerd Moellmann <gerd@gnu.org>
12220
12221 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
12222 case of writing a whole row, more or less analogous to the case of
12223 writing only parts of a row.
12224
12225 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
12226 0 for NO_CURSOR.
12227
12228 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
12229
12230 2002-04-23 Colin Walters <walters@verbum.org>
12231
12232 * buffer.c (syms_of_buffer): Doc fix.
12233
12234 2002-04-23 Gerd Moellmann <gerd@gnu.org>
12235
12236 * xterm.c (notice_overwritten_cursor): Handle the special case
12237 of the cursor being in the first blank non-text line at the
12238 end of a window.
12239
12240 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
12241 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
12242 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
12243 bar cursors only, to make phys_cursor_width contain what its name
12244 suggests.
12245 (notice_overwritten_cursor): Consider the cursor image erased if
12246 the output area intersects the cursor image in y-direction.
12247
12248 2002-04-23 Simon Marshall <simon@gnu.org>
12249
12250 * xfns.c (x_set_mouse_color): Change default for cross_cursor
12251 to XC_hand2.
12252
12253 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12254
12255 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
12256
12257 2002-04-22 Kim F. Storm <storm@cua.dk>
12258
12259 * textprop.c (remove_properties): Fixed trap for malformed plist.
12260
12261 2002-04-22 Richard M. Stallman <rms@gnu.org>
12262
12263 * cmds.c (Fend_of_line): Handle intangible text in mid line.
12264
12265 * window.c (make_window): Initialize height_fixed_p,
12266 last_cursor_off_p, and p->cursor_off_p slots.
12267
12268 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12269
12270 * fns.c (use-dialog-box): Doc fix.
12271
12272 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12273
12274 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
12275 variables `row', `i' and `area'.
12276 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
12277 toolkit library.
12278
12279 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
12280
12281 * xfaces.c (clear_font_table): Don't free the default font of
12282 a frame even if it's on another display.
12283 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
12284 that could be Qt.
12285
12286 2002-04-19 Juanma Barranquero <lektu@terra.es>
12287
12288 * indent.c (Fmove_to_column): Remove unused local variable
12289 `next_boundary_byte'.
12290 (current_column_1): Likewise.
12291
12292 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
12293
12294 * msdos.c (Qhbar): New variable.
12295 (syms_of_msdos): Intern and staticpro it.
12296 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
12297 cursor type.
12298
12299 2002-04-19 Dave Lambert <dlambert@acm.org>
12300
12301 Theses change implement an underscore-like (`hbar') cursor.
12302
12303 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12304
12305 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
12306 Handle the `hbar' cursor type.
12307 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12308
12309 * xfns.c (Qhbar): New variable.
12310 (syms_of_xfns): Intern and staticpro it.
12311 (x_specified_cursor_type): Handle `hbar' cursor.
12312
12313 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
12314 not defined.
12315
12316 2002-04-18 Richard M. Stallman <rms@gnu.org>
12317
12318 * textprop.c (remove_properties): New arg LIST allows scanning
12319 either a list or a plist.
12320 (interval_has_some_properties_list): New function, like
12321 interval_has_some_properties using list instead of plist.
12322 All callers changed.
12323 (Fremove_list_of_text_properties): New function.
12324 (syms_of_textprop): Defsubr it.
12325
12326 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12327
12328 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
12329
12330 2002-04-17 Juanma Barranquero <lektu@terra.es>
12331
12332 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
12333
12334 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12335
12336 * window.c (coordinates_in_window): Don't report on margin area
12337 if its width is zero.
12338
12339 2002-04-16 Jason Rumney <jasonr@gnu.org>
12340
12341 * w32fns.c (Fx_file_dialog): Decode file name before using.
12342
12343 * w32term.c (construct_drag_n_drop): Likewise.
12344
12345 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
12346
12347 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
12348 store load-history in pure space.
12349
12350 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
12351
12352 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
12353
12354 * xterm.c (Qlatin_1, Qutf_8): New vars.
12355 (syms_of_xterm): Initialize them.
12356 (XTread_socket): Eliminate incorrect optimization that tried to avoid
12357 decoding the output of X*LookupString.
12358 Always use latin-1 to decode the output of XLookupString.
12359 Try Xutf8LookupString if XmbLookupString failed.
12360
12361 * region-cache.c (new_region_cache): Use BEG.
12362
12363 2002-04-16 Gerd Moellmann <gerd@gnu.org>
12364
12365 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
12366 configuration files.
12367 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
12368 returns 0.
12369
12370 2002-04-15 Andreas Schwab <schwab@suse.de>
12371
12372 * config.in: Regenerated using autoheader.
12373
12374 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
12375 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
12376 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
12377 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
12378 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
12379 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
12380 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
12381 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
12382 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
12383 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
12384 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
12385 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
12386 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
12387 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
12388 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
12389 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
12390 STACK_DIRECTION, now set by autoconf.
12391
12392 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12393
12394 * dispnew.c (marginal_area_string): Sort arguments.
12395
12396 * dispextern.h (marginal_area_string): Add prototype.
12397
12398 2002-04-13 Richard M. Stallman <rms@gnu.org>
12399
12400 * fileio.c (Finsert_file_contents):
12401 Don't call temp_output_buffer_setup--do just part, by hand.
12402
12403 * coding.c (run_pre_post_conversion_on_str):
12404 Don't call temp_output_buffer_setup--do just part, by hand.
12405
12406 * keyboard.c (command_loop_1): Don't call start_hourglass
12407 or cancel_hourglass when executing a macro.
12408
12409 * marker.c (count_markers): New function.
12410
12411 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
12412 grow without limit. Move recently used elements to the front.
12413
12414 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
12415
12416 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
12417
12418 2002-04-12 Gerd Moellmann <gerd@gnu.org>
12419
12420 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
12421 rows marginal areas.
12422 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
12423 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
12424
12425 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
12426
12427 2002-04-12 Dave Love <fx@gnu.org>
12428
12429 * dispnew.c (marginal_area_string): New.
12430
12431 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
12432 (Qleft_margin, Qright_margin): Declare.
12433 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
12434
12435 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
12436 note_mode_line_highlight and extended.
12437
12438 * keyboard.c (Qleft_margin, Qright_margin): Declare.
12439 (make_lispy_event): Deal with mouse events in margins.
12440
12441 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
12442
12443 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
12444
12445 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
12446 than deactivating the mark if tmm is set to `lambda'.
12447 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
12448 Use a single event for HELP_EVENT.
12449 (Fexecute_extended_command): Save last_point_position.
12450
12451 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12452
12453 * lisp.h (Fpropertize): Add prototype.
12454
12455 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
12456
12457 2002-04-10 Colin Walters <walters@verbum.org>
12458
12459 * config.in: Add HAVE_SHARED_GAME_DIR.
12460
12461 * callproc.c: (Vgame_score_directory): New variable.
12462 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
12463
12464 2002-04-10 Richard M. Stallman <rms@gnu.org>
12465
12466 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
12467
12468 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
12469
12470 * minibuf.c (read_minibuf): Use empty_string.
12471 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
12472 Short-circuit the search as soon as it "failed".
12473 (Fall_completions): Allow lambda forms and lists of strings for alist.
12474 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
12475 when require_match is nil.
12476 (Ftest_completion): Rename from `test_completion' and export to elisp.
12477 Call the predicate also when alist is a list.
12478 Obey Vcompletion_regexp_list.
12479 (do_completion, Fminibuffer_complete_and_exit): Use it.
12480 (Fassoc_string): Rename from `assoc_for_completion'.
12481 Allow list of strings as well and export to elisp.
12482
12483 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
12484
12485 * puresize.h (BASE_PURESIZE): Increase to 900KB.
12486
12487 2002-04-08 Juanma Barranquero <lektu@terra.es>
12488
12489 * w32.c (sys_accept): Don't hide variable `s'.
12490
12491 2002-04-05 Gerd Moellmann <gerd@gnu.org>
12492
12493 * callint.c (Fcall_interactively): Use INTEGERP instead of
12494 NUMBERP for checking Vhistory_length.
12495
12496 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12497
12498 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
12499 Doc fix to reflect it.
12500
12501 2002-04-04 Richard M. Stallman <rms@gnu.org>
12502
12503 * xdisp.c (display_mode_element): New arg RISKY.
12504 Disregard text props found or specified within a variable
12505 that isn't marked risky-local-variable.
12506 (Qrisky_local_variable): New variable.
12507 (syms_of_xdisp): Init and staticpro it.
12508
12509 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
12510
12511 * undo.c (record_point): New fun.
12512 (record_delete, record_insert): Use it.
12513
12514 2002-04-03 Juanma Barranquero <lektu@terra.es>
12515
12516 * doc.c (Fdocumentation): Add missing parentheses.
12517 (Fdocumentation_property): Likewise.
12518
12519 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
12520
12521 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
12522 data is 0, just return nil.
12523
12524 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
12525
12526 * msdos.c (syms_of_msdos): Fix last change with
12527 mouse_autoselect_window.
12528
12529 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12530
12531 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
12532 mouse_autoselect_window.
12533
12534 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
12535
12536 * keyboard.c (make_lispy_event): Handle unknown keysyms together
12537 with system-specific keysyms. Use it also for unknown function keys.
12538
12539 * doc.c (reread_doc_file): Return whether reload was attempted.
12540 (Fdocumentation, Fdocumentation_property): Don't try to reload
12541 if the doc is 0 and only ask once.
12542
12543 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
12544
12545 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
12546
12547 * keyboard.c (read_char): If the event was Qselect_window,
12548 restore timer_idleness_start_time to its previous value.
12549
12550 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
12551
12552 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
12553
12554 * region-cache.c (new_region_cache): Use BEG.
12555
12556 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
12557 Use BEG and BEG_BYTE.
12558
12559 * doc.c (get_doc_string): Return nil if the location is wrong.
12560 (reread_doc_file): New fun.
12561 (Fdocumentation, Fdocumentation_property):
12562 Call it if get_doc_string fails.
12563 (Fsnarf_documentation): Make it work for a dumped Emacs.
12564
12565 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
12566 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
12567
12568 * charset.c (Fstring): Allow 0 arguments.
12569
12570 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
12571
12572 * process.c (DATAGRAM_CONN_P, list_processes_1)
12573 (Fprocess_datagram_address, Fset_process_datagram_address)
12574 (Fset_network_process_options, server_accept_connection):
12575 Fix some int/Lisp_Object confusions (thank you union types).
12576
12577 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12578
12579 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
12580
12581 * w32term.c: Likewise.
12582 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
12583
12584 * keyboard.c (Qselect_window): New symbol.
12585 (head_table): Use it.
12586 (keys_of_keyboard): Bound select-window event to handle-select-window.
12587 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
12588
12589 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
12590 (last_window): New variable.
12591 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
12592 (note_mouse_movement): Remove reimplemented code in #if 0.
12593 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
12594 Emacs windows.
12595
12596 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
12597
12598 2002-03-31 Gerd Moellmann <gerd@gnu.org>
12599
12600 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
12601 Callers changed.
12602
12603 2002-03-30 Richard M. Stallman <rms@gnu.org>
12604
12605 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
12606 loop whenever it stops making progress.
12607
12608 * widget.c (set_frame_size): Don't call change_frame_size.
12609
12610 2002-03-30 Gerd Moellmann <gerd@gnu.org>
12611
12612 * dispnew.c (direct_output_for_insert):
12613 Call mark_window_display_accurate.
12614
12615 2002-03-29 Jason Rumney <jasonr@gnu.org>
12616
12617 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
12618
12619 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
12620
12621 * Makefile.in (lread.o): Depend on coding.h.
12622
12623 * lread.c (openp, Fload): Encode the file name before passing it
12624 to `stat', `access', and `emacs_open'.
12625 (openp): GCPRO the encoded file name. Don't recompute Lisp
12626 strings unnecessarily.
12627
12628 2002-03-29 Kim F. Storm <storm@cua.dk>
12629
12630 * fns.c (Flax_plist_put): Doc fix.
12631
12632 2002-03-28 Miles Bader <miles@gnu.org>
12633
12634 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
12635
12636 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12637
12638 * process.c (set-network-process-options): Add usage.
12639 (make-network-process): Doc fix.
12640
12641 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
12642
12643 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
12644
12645 2002-03-26 Richard M. Stallman <rms@gnu.org>
12646
12647 * fns.c (Fsubstring_no_properties): New function.
12648 (Flax_plist_get, Flax_plist_put): New functions.
12649 (syms_of_fns): defsubr them.
12650
12651 * xdisp.c (update_menu_bar): Test only update_mode_lines;
12652 don't test or alter w->update_mode_line.
12653
12654 * window.c (Fdisplay_buffer): Doc fix.
12655
12656 2002-03-24 Richard M. Stallman <rms@gnu.org>
12657
12658 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
12659
12660 2002-03-24 Gerd Moellmann <gerd@gnu.org>
12661
12662 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
12663 (Fdefmacro): Handle `(declare ...)'.
12664 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
12665 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
12666
12667 2002-03-24 Jason Rumney <jasonr@gnu.org>
12668
12669 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
12670 (xbm_file_p): Add prototypes.
12671 (xbm_format, xbm_image_p): Sync with xfns.c.
12672 (reflect_byte): New function.
12673 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
12674 (xbm_load_image): Create bitmaps with a depth of 1.
12675 (init_xfns): Enable XBM images.
12676
12677 2002-03-23 Jason Rumney <jasonr@gnu.org>
12678
12679 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
12680 correctly. Do not pass up_modifier to keyboard buffer.
12681
12682 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
12683
12684 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
12685
12686 * Makefile.in (bootstrapclean): New target.
12687 (bootstrap-temacs, bootstrap-doc): Remove.
12688 (bootstrap-emacs): Use a bog-standard `temacs'.
12689 Don't bother to build a DOC file.
12690
12691 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12692
12693 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12694 in temacs even if !CANNOT_DUMP.
12695 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12696
12697 * alloc.c (check_pure_size): Only output a warning.
12698
12699 2002-03-22 Jason Rumney <jasonr@gnu.org>
12700
12701 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12702 supported.
12703
12704 * w32term.c (zv_bits): Declare as short, for word alignment.
12705 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12706 (syms_of_w32term): Define x-use-underline-position-properties.
12707
12708 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12709 (clear_image_cache): Block input, fix logic, clear matrices in
12710 all frames that share this cache.
12711
12712 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12713
12714 * emacs.c (main): Update the Copyright year in the blurb printed
12715 by "emacs --version".
12716
12717 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12718
12719 * xterm.c (XTread_socket): If XK_ISO_Lock and
12720 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12721 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12722
12723 2002-03-21 Kim F. Storm <storm@cua.dk>
12724
12725 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12726 menu-bar bindings in keymap and local-map properties _are_ used.
12727 But try keymap property first in accordance with 2002-01-03 patch.
12728 Added comment describing why this is not always reliable.
12729 (tool_bar_items): Ditto for tool-bar.
12730
12731 2002-03-21 Jason Rumney <jasonr@gnu.org>
12732
12733 * w32fns.c (x_clear_image_1): Disable color table code.
12734
12735 2002-03-21 Kim F. Storm <storm@cua.dk>
12736
12737 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12738 removed the wrong version of the DEFUN macro; fixed it.
12739
12740 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12741 Fmember rather than Fmemq).
12742 (Fprovide): Check that subfeatures is a list.
12743
12744 * process.c (QCfeature, QCdatagram): Removed variables.
12745 (QCtype, Qdatagram): New variables.
12746 (network_process_featurep): Removed function.
12747 (Fmake_network_process): Removed :feature check.
12748 Use :type 'datagram instead of :datagram t to create a datagram
12749 socket. This allows us to add other connection types (e.g. raw
12750 sockets) later in a consistent manner.
12751 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12752 supported subfeatures for feature make-network-process.
12753 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12754 Intern and staticpro QCtype and Qdatagram.
12755 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12756
12757 * xfns.c: (QCtype): Remove duplicate declaration and
12758 initialization (is now declared in process.c).
12759
12760 * w32fns.c: (QCtype): Remove duplicate declaration and
12761 initialization (is now declared in process.c).
12762
12763 2002-03-21 Richard M. Stallman <rms@gnu.org>
12764
12765 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12766 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12767 when jumping to `fail' to avoid undoing reg changes in the
12768 last iteration of the loop.
12769 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12770
12771 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12772 Depend on process.h.
12773
12774 2002-03-20 Jason Rumney <jasonr@gnu.org>
12775
12776 Most of the following changes are still conditional on HAVE_IMAGES
12777 which is not set by default on Windows.
12778
12779 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12780
12781 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12782 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12783 (four_corners_best, x_clear_image_1, x_clear_image)
12784 (x_alloc_image_color, postprocess_image)
12785 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12786 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12787 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12788
12789 * w32gui.h (struct XImage): Define.
12790
12791 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12792 extract mouse co-ordinates.
12793
12794 2002-03-20 Jason Rumney <jasonr@gnu.org>
12795
12796 * w32.c (init_winsock): Dynamically load new server and UDP
12797 socket functions.
12798 (socket_to_fd): New function.
12799 (sys_socket): Use it.
12800 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12801 (sys_recvfrom, sys_sendto): New wrapper functions.
12802
12803 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12804 and initialization.
12805
12806 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12807
12808 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12809
12810 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12811 Don't use "sun" as a variable, it's a predefined constant on Sun
12812 machines.
12813
12814 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12815
12816 * bytecode.c (Fbyte_code): Revert last change.
12817
12818 2002-03-19 Kim F. Storm <storm@cua.dk>
12819
12820 * makefile.w32-in (LIBS): Add $(WSOCK32).
12821 From David Ponce <dponce@voila.fr>.
12822
12823 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12824
12825 * process.c (wait_reading_process_input): Move variables `pname'
12826 and `pnamelen' down where they are used.
12827
12828 * bytecode.c (Fbyte_code): Discard unused computed value to
12829 prevent gcc warning.
12830
12831 * lisp.h (Fplist_member): Add prototype.
12832
12833 2002-03-18 Kim F. Storm <storm@cua.dk>
12834
12835 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12836 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12837
12838 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12839 Remove explicit GNU_LINUX settings for datagram support.
12840
12841 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12842
12843 * process.c (Fmake_network_process): Remove unused variable `sa'.
12844 Doc fix. Add usage:.
12845 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12846
12847 2002-03-17 Richard M. Stallman <rms@gnu.org>
12848
12849 * xdisp.c (cursor_type_changed): New variable.
12850 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12851 Clear it when clearing windows_or_buffers_changed.
12852 (try_cursor_movement, redisplay_window, try_window_id)
12853 (try_window_reusing_current_matrix): Test cursor_type_changed
12854 along with windows_or_buffers_changed.
12855
12856 * window.h (cursor_type_changed): New variable.
12857
12858 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12859 not update_mode_lines, and always set it to 1.
12860
12861 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12862 if no frames needed redrawing.
12863
12864 2002-03-17 Kim F. Storm <storm@cua.dk>
12865
12866 The following changes add support for network server processes,
12867 datagram connections, and local (unix) sockets.
12868
12869 * process.h (struct Lisp_Process): New member log.
12870 Doc fix: Member command used to indicate stopped network process.
12871 Doc fix: Member childp contains plist for network process.
12872 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12873
12874 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12875 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12876 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12877 New variables.
12878 (NETCONN1_P): New macro.
12879 (DATAGRAM_SOCKETS): New conditional symbol.
12880 (datagram_address): New array.
12881 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12882 (status_message): Use concat3.
12883 (Fprocess_status): Add `listen' status to doc string. Return `stop'
12884 for a stopped network process.
12885 (Fset_process_buffer): Update contact plist for network process.
12886 (Fset_process_filter): Ditto. Don't enable input for stopped
12887 network processes. Server must listen, even if filter is t.
12888 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
12889 New functions.
12890 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
12891 (Fprocess_contact): Added KEY argument. Handle datagrams.
12892 (list_processes_1): Optionally show only processes with the query
12893 on exit flag set. Dynamically adjust column widths. Omit tty
12894 column if not needed. Report stopped network processes.
12895 Identify server and datagram network processes.
12896 (Flist_processes): New optional arg `query-only'.
12897 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
12898 (conv_lisp_to_sockaddr, set_socket_options)
12899 (network_process_featurep, unwind_request_sigio): New helper functions.
12900 (Fprocess_datagram_address, Fset_process_datagram_address):
12901 (Fset_network_process_options): New lisp functions.
12902 (Fopen_network_stream): Removed. Now defined in simple.el.
12903 (Fmake_network_process): New lisp function. Code is based on previous
12904 Fopen_network_stream, but heavily reworked with new property list based
12905 argument list, support for datagrams, server processes, and local
12906 sockets in addition to old client-only functionality.
12907 (server_accept_connection): New function.
12908 (wait_reading_process_input): Use it to handle incoming connects.
12909 Do not enable input on a new connection if process is stopped.
12910 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
12911 (send_process): Handle datagram sockets.
12912 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12913 network process is indicated by setting command field to t .
12914 (Fprocess_send_eof): No-op if datagram connection.
12915 (Fstatus_notify): Don't read input for a stream server socket or a
12916 stopped network process.
12917 (init_process): Initialize datagram_address array.
12918 (syms_of_process): Intern and staticpro new variables, defsubr new
12919 functions.
12920
12921 2002-03-16 Jason Rumney <jasonr@gnu.org>
12922
12923 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12924 startup case.
12925
12926 2002-03-16 Richard M. Stallman <rms@gnu.org>
12927
12928 * xdisp.c (redisplay_internal, redisplay_windows):
12929 Use list_of_error to call internal_condition_case_1.
12930 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12931 so as to catch all errors with no possibility of debugger redisplay.
12932 (list_of_error): New variable.
12933 (syms_of_xdisp): Init and staticpro it.
12934
12935 * print.c (print_object): Delete `\ ' from printed rep of frame.
12936
12937 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12938
12939 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12940 until its implementation is fixed.
12941
12942 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12943
12944 * xfns.c (png_load): Remove unused variable `gamma_str'.
12945
12946 2002-03-14 Richard M. Stallman <rms@gnu.org>
12947
12948 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12949
12950 2002-03-14 Miles Bader <miles@gnu.org>
12951
12952 * intervals.c (adjust_for_invis_intang): New function.
12953 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12954 work for dealing with invisible+intangible regions. Do so before
12955 and after both forward and backward movements, to handle both
12956 front-sticky and rear-sticky cases.
12957 * textprop.c (text_property_stickiness): Function moved here from
12958 `editfns.c'.
12959 * intervals.h (text_property_stickiness): New declaration.
12960 * editfns.c (char_property_eq): Function removed.
12961 (text_property_stickiness): Function moved to `textprop.c'.
12962
12963 2002-03-13 Jason Rumney <jasonr@gnu.org>
12964
12965 * config.in: Add STRFTIME_NO_POSIX2.
12966
12967 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12968 and %OX when underlying strftime does not.
12969
12970 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12971
12972 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12973 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12974 line) to avoid annoying flicker.
12975 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12976 (XTread_socket): Mark it static.
12977
12978 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12979
12980 2002-03-13 Kim F. Storm <storm@cua.dk>
12981
12982 * puresize.h (BASE_PURESIZE): Increase to 775000.
12983
12984 2002-03-12 Juanma Barranquero <lektu@terra.es>
12985
12986 * editfns.c (syms_of_editfns): Fix typo.
12987
12988 2002-03-12 Gerd Moellmann <gerd@gnu.org>
12989
12990 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12991 Include termopt.h for interrupt_input.
12992
12993 2002-03-11 Andreas Schwab <schwab@suse.de>
12994
12995 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12996
12997 2002-03-11 Gerd Moellmann <gerd@gnu.org>
12998
12999 * xterm.c (note_mouse_movement): Put code for
13000 x_autoselect_window_p in #if 0.
13001
13002 * lread.c (Fload): Don't assume that message_with_string uses the
13003 string it is given like a C string.
13004
13005 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13006
13007 * xterm.h (x_session_check_input, x_session_initialize): Declared.
13008
13009 * xterm.c: (XTread_socket): Add call to x_session_check_input and
13010 x_session_have_connection.
13011 (x_initialize): Add call to x_session_initialize.
13012
13013 * termhooks.h (enum event_kind): Add save_session_event.
13014
13015 * keyboard.c: Add Emacs event save_session_event.
13016
13017 * emacs.c (main): Add call to syms_of_xsmfns.
13018
13019 * lisp.h: Declare syms_of_xsmfns as extern.
13020
13021 * config.in: Add HAVE_X_SM.
13022
13023 * Makefile.in (LIBXT): Add -lSM -lICE
13024 if HAVE_X_SM and not USE_X_TOOLKIT.
13025 (XOBJ): New file xsmfns.c added.
13026
13027 * xsmfns.c: New file for X session management.
13028
13029 2002-03-09 Jason Rumney <jasonr@gnu.org>
13030
13031 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
13032 read-only when setting modified time.
13033
13034 2002-03-08 Gerd Moellmann <gerd@gnu.org>
13035
13036 * xdisp.c (move_it_vertically_backward): At the end of the function,
13037 when moving forward by lines, treat terminal frames specially.
13038
13039 * keyboard.c (echo_char): Make sure to add a separator between
13040 keys even if echo_dash hasn't been called.
13041
13042 * xdisp.c: Use new string macros.
13043 (update_echo_area): Pass number of bytes to message3 instead of
13044 number of chars.
13045 (set_message_1): Don't access a string's size_byte directly.
13046 (decode_mode_spec_coding): Use number of bytes of eoltype string
13047 instead number of chars.
13048
13049 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
13050
13051 2002-03-08 Juanma Barranquero <lektu@terra.es>
13052
13053 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
13054 24-bit.
13055
13056 2002-03-06 Jason Rumney <jasonr@gnu.org>
13057
13058 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
13059
13060 2002-03-06 Gerd Moellmann <gerd@gnu.org>
13061
13062 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
13063 (cancel_echoing, echo_length, echo_truncate): Changed to
13064 work with new kboard definition.
13065 (echo_now): Use message3_nolog instead of message2_nolog.
13066
13067 * alloc.c (mark_kboards): Mark echo_string.
13068
13069 * keyboard.h (ECHOBUFSIZE): Removed.
13070 (struct kboard): Member echoptr removed, member echobuf renamed
13071 to echo_string.
13072
13073 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
13074 message3 instead of message2 to display the message using STRING's
13075 text properties.
13076
13077 2002-03-05 Andreas Schwab <schwab@suse.de>
13078
13079 * xdisp.c (hscroll_margin): Change to EMACS_INT.
13080
13081 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
13082
13083 * frame.c (default-frame-alist): Explain that setting it doesn't
13084 affect existing frames.
13085
13086 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
13087
13088 * indent.c (skip_invisible): Fix my brain fart.
13089
13090 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
13091
13092 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
13093
13094 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
13095 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
13096 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
13097 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
13098 and variables to use EMACS_INT instead of just int.
13099
13100 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
13101
13102 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
13103
13104 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
13105 environment, pass it down with corrected value.
13106
13107 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13108
13109 * lread.c (read_filtered_event): Do not call start_hourglass
13110 before returning.
13111
13112 2002-03-04 Juanma Barranquero <lektu@terra.es>
13113
13114 * w32term.c (x_display_and_set_cursor): Fix typo.
13115
13116 2002-03-03 Richard M. Stallman <rms@gnu.org>
13117
13118 * fileio.c (Fmake_temp_name): Doc fix.
13119
13120 2002-03-03 Gary Wong <gtw@gnu.org>
13121
13122 * termcap.c [!emacs]: Replace ospeed for building standalone
13123 libtermcap, for binary compatibility.
13124
13125 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
13126
13127 2002-03-03 Richard M. Stallman <rms@gnu.org>
13128
13129 * xrdb.c (file_p): Rename arg `path' to `filename'.
13130
13131 * abbrev.c (Fexpand_abbrev): Increment plist as use count
13132 only if it is an integer.
13133
13134 * xfns.c (png_load): Set screen_gamma based on f->gamma.
13135 If png_get_sRGB gives an answer, call png_set_gamma
13136 using the default image gamma value.
13137
13138 * lread.c (read1): When reading from a file, default string to
13139 multibyte only if it has some multibyte characters.
13140
13141 * print.c (print_object): Output multibyte chars 128...255
13142 using \x even if ! print_escape_multibyte.
13143
13144 * xdisp.c (display_mode_element): Move the places where
13145 bytepos, charpos, this, and lisp_string are set.
13146 Use lisp_string to set bytepos.
13147
13148 * xdisp.c (redisplay_internal):
13149 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
13150
13151 * xdisp.c (display_mode_element): Merge properties specified with
13152 :propertize onto those that come with the string.
13153
13154 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
13155
13156 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
13157 automatic-hscrolling. Users changed.
13158 <hscroll-margin>: Renamed from automatic-hscroll-margin.
13159 Users changed.
13160 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
13161
13162 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
13163
13164 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
13165
13166 2002-03-02 Kim F. Storm <storm@cua.dk>
13167
13168 * window.c (Fminibuffer_selected_window): New function.
13169 (syms_of_window): Defsubr it.
13170
13171 2002-03-01 Kim F. Storm <storm@cua.dk>
13172
13173 * window.h (struct window): New member phys_cursor_width.
13174
13175 * window.c (make_window, replace_window): Init phys_cursor_width.
13176
13177 * xterm.c (x_display_and_set_cursor): Blink box cursor using
13178 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13179
13180 * w32term.c (x_display_and_set_cursor): Blink box cursor using
13181 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13182
13183 * lisp.h (GCPRO6): New macro.
13184
13185 * process.c (Fopen_network_stream): Use GCPRO6.
13186
13187 2002-03-01 Kim F. Storm <storm@cua.dk>
13188
13189 * process.c (Qconnect, Qfailed): New variables.
13190 (syms_of_process): Intern and staticpro them.
13191 (Fprocess_status): Document connect and failed return values.
13192 [NON_BLOCKING_CONNECT]: New conditional.
13193 (connect_wait_mask, num_pending_connects): New variables.
13194 (status_message): Convert Qfailed status.
13195 (Fopen_network_stream): Added support for non-blocking connect.
13196 New optional args: filter, sentinel, non_blocking. Doc updated.
13197 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
13198 (deactivate_process): Handle pending non-blocking connect.
13199 (wait_reading_process_input): Poll for status of non-blocking
13200 connects. Exec sentinel directly when connect succeeds.
13201 (status_notify): Don't read process output if not yet connected.
13202
13203 2002-02-28 Kim F. Storm <storm@cua.dk>
13204
13205 * window.c: (minibuf_selected_window): Renamed from
13206 Vminibuf_selected_window. Users changed.
13207 (syms_of_window): Staticpro it.
13208
13209 2002-02-26 Kim F. Storm <storm@cua.dk>
13210
13211 The following changes add a new Vminibuf_selected_window variable
13212 which is similar to Vminibuf_scroll_window, but which is only set
13213 on entry to the minibuffer (from a non-minibuffer window):
13214
13215 * window.c: (Vminibuf_selected_window): New variable.
13216 (struct save_window_data): New member minibuf_selected_window.
13217 (Fset_window_configuration): Restore Vminibuf_selected_window.
13218 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
13219 Set minibuf_scroll_window member to nil if minibuf_level is 0.
13220 (compare_window_configurations): Compare minibuf_selected_window.
13221
13222 * window.h: (Vminibuf_selected_window): Declare extern.
13223
13224 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
13225 entry to minibuffer or on entry from a non-minibuffer window.
13226
13227 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
13228 Vminibuf_selected_window instead of Vminibuf_scroll_window.
13229
13230 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
13231 instead of Vminibuf_scroll_window when deciding in which window
13232 the region should be highlighted. Consequently, the region remains
13233 highlighteded even when a completion buffer is also displayed.
13234
13235 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
13236
13237 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
13238
13239 * xselect.c (Qcompound_text_with_extensions): Renamed from
13240 Qcompound_text_no_extensions.
13241 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
13242
13243 2002-02-26 Juanma Barranquero <lektu@terra.es>
13244
13245 * w32proc.c (syms_of_ntproc): Doc fix.
13246
13247 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13248
13249 * intervals.h: Include "dispextern.h" unconditionally.
13250
13251 2002-02-24 Jason Rumney <jasonr@gnu.org>
13252
13253 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
13254 and disp-table.elc.
13255 (lisp): Add emacs-lisp/backquote.elc.
13256
13257 2002-02-24 Kim F. Storm <storm@cua.dk>
13258
13259 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
13260 The validation of the event type was too strict as it didn't
13261 allow string events; buffer names are used in bindings for
13262 menu-bar-select-buffer (see `menu-bar-update-buffers').
13263
13264 2002-02-23 Kim F. Storm <storm@cua.dk>
13265
13266 The following changes rework my patch of 2002-02-06 which
13267 added command remapping by entering the commands directly into
13268 the keymaps. Now, command remapping uses an explicit `remap'
13269 prefix in the keymaps, i.e. [remap COMMAND].
13270
13271 * keymap.c (Qremap, remap_command_vector): New variables.
13272 (is_command_symbol): Removed function.
13273 (Fdefine_key): No longer accept a symbol for KEY.
13274 Added validation of [remap COMMAND] argument for KEY.
13275 The DEF is no longer required to be a symbol when remapping a command.
13276 (Fremap_command): New function to remap command through keymaps.
13277 (Flookup_key): Perform command remapping initiated by
13278 Fremap_command directly for speed.
13279 (Fkey_binding): Use Fremap_command for command remapping.
13280 (where_is_internal): Handle new command remapping representation.
13281 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
13282 staticpro them. Defsubr Fremap_command.
13283
13284 * keymap.h (Fremap_command): Declare extern.
13285 (is_command_symbol): Remove extern.
13286
13287 * keyboard.c (command_loop_1): Use Fremap_command for command
13288 remapping; now try command remapping for all symbols.
13289
13290 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13291
13292 * coding.h (run_pre_post_conversion_on_str): Add prototype.
13293
13294 2002-02-23 Jason Rumney <jasonr@gnu.org>
13295
13296 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
13297 on the string before encoding it.
13298 (Fw32_get_clipboard_data): Run post-read-conversion on the string
13299 after decoding it.
13300
13301 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
13302
13303 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13304
13305 * w32term.c (enter_timestamp): Remove unused static variable to
13306 prevent warning.
13307
13308 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
13309
13310 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13311
13312 * w16select.c (Fw16_get_clipboard_data): Fix last change.
13313
13314 * xselect.c (selection_data_to_lisp_data): Fix last change.
13315
13316 2002-02-22 Jason Rumney <jasonr@gnu.org>
13317
13318 * w32term.h (struct w32_output): New member menu_command_in_progress.
13319
13320 * w32menu.c (menubar_selection_callback): Free the menu and
13321 clear the menu_command_in_progress flag.
13322
13323 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
13324 (menu_free_timer): New variable.
13325 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
13326 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
13327 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
13328 menu command is in progress.
13329 <WM_COMMAND>: Set the menu_command_in_progress flag.
13330 Kill any menu_free_timer that is running.
13331
13332 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
13333 Call ExtTextOutA rather than ExtTextOut.
13334
13335 2002-02-22 Eli Zaretskii <eliz@gnu.org>
13336
13337 * puresize.h (BASE_PURESIZE): Increase to 755000.
13338
13339 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13340
13341 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
13342 on the string before encoding it.
13343 (Fw16_get_clipboard_data): Run post-read-conversion on the string
13344 after decoding it.
13345
13346 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13347
13348 Support for ICCCM Extended Segments in X selections:
13349
13350 * xselect.c <Qcompound_text_no_extensions>: New variable.
13351 (syms_of_xselect): Intern and staticpro it.
13352 (selection_data_to_lisp_data): Run post-read-conversion on decoded
13353 selection text.
13354 (lisp_data_to_selection_data): If next-selection-coding-system is
13355 compound-text-no-extensions, set the type of selection to be
13356 compound-text.
13357
13358 * xterm.h (x_encode_text): Update prototype.
13359
13360 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
13361 callers changed. If SELECTIONP is non-zero, run the
13362 pre-write-conversion function before encoding the selection text.
13363
13364 2002-02-21 Kim F. Storm <storm@cua.dk>
13365
13366 * frame.c (syms_of_frame): Change mouse-highlight default to t.
13367
13368 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
13369 Correct composing of language-change event.
13370
13371 2002-02-20 Kim F. Storm <storm@cua.dk>
13372
13373 * keyboard.c (menu_bar_items): Don't include keymap or local-map
13374 bindings at PT when building menu (the menu is not updated often
13375 enough for this to work reliable).
13376 (tool_bar_items): Likewise.
13377 (current_active_maps): Removed unused (and buggy) function.
13378
13379 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13380
13381 * xfns.c (gif_load): Use correct width and height for GIF images.
13382
13383 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
13384
13385 * floatfns.c (Fatan): Accept an optional second arg and call
13386 atan2 if passed 2 args.
13387
13388 2002-02-18 Jason Rumney <jasonr@gnu.org>
13389
13390 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
13391
13392 2002-02-17 Jason Rumney <jasonr@gnu.org>
13393
13394 * w32term.c (x_autoselect_window_p): New variable.
13395 (syms_of_w32term): DEFVAR_BOOL and initialize it.
13396 (note_mouse_movement): Use it.
13397
13398 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
13399
13400 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
13401
13402 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13403 New variables.
13404 (syms_of_w32fns): Intern and staticpro them.
13405 (x_frame_parms) <"fullscreen">: New parameter.
13406 (x_fullscreen_move, x_set_fullscreen): New functions.
13407 (x_set_frame_parameters): Support Qfullscreen.
13408 (x_real_positions): Save x/y_pixels_diff frame params.
13409 (x_figure_window_size): Support full-screen frames.
13410 (Fx_create_frame): Default the fullscreen parameter.
13411
13412 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
13413 (x_fullscreen_adjust): New functions.
13414 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
13415 fullscreen. Call x_check_fullscreen_move, and set the
13416 want_fullscreen member of output_data.w32
13417 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
13418
13419 * w32term.h: New enum for FULLSCREEN_* constants.
13420 (struct w32_output): New members want_fullscreen, x_pixels_diff,
13421 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
13422 (x-fullscreen-adjust): New prototype.
13423
13424 2002-02-17 Kim F. Storm <storm@cua.dk>
13425
13426 * frame.c: (Vmouse_highlight): New variable.
13427 (syms_of_frame): DEFVAR_LISP it.
13428
13429 * frame.h: (Vmouse_highlight): Declare extern.
13430
13431 * xterm.h (struct x_display_info): Add mouse_face_hidden.
13432
13433 * xterm.c (disable_mouse_highlight): Removed variable.
13434 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13435 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13436 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
13437 and on after keyboard input.
13438 (x_term_init): Initialize mouse_face_hidden.
13439
13440 * msdos.h (struct display_info): Add mouse_face_hidden.
13441
13442 * msdos.c (disable_mouse_highlight): Removed variable.
13443 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13444 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13445 (internal_terminal_init): Initialize mouse_face_hidden.
13446 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
13447 and on after keyboard input.
13448
13449 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
13450
13451 * w32term.c (disable_mouse_highlight): Removed variable.
13452 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
13453 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13454 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
13455 and on after keyboard input.
13456 (w32_initialize_display_info): Initialize mouse_face_hidden.
13457
13458 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
13459
13460 * msdos.c (last_mouse_window): New variable.
13461 (dos_rawgetc): Fix last change--if the mouse is in the same window
13462 as recorded in last_mouse_window, don't select this window.
13463
13464 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
13465
13466 * msdos.c (x_autoselect_window_p): New variable.
13467 (syms_of_msdos): Defvar it.
13468 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
13469 which the last mouse movement occured, unless it is already selected.
13470
13471 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
13472 New variables.
13473 (syms_of_xdisp): DEVFAR them.
13474 (hscroll_window_tree): Use automatic_hscroll_margin and
13475 Vautomatic_hscroll_step to compute the amount of window scrolling.
13476
13477 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13478
13479 * xterm.c (x-autoselect-window): New variable.
13480 (note_mouse_movement): Use it.
13481
13482 * keyboard.c: Do not include "systime.h" twice.
13483
13484 2002-02-15 Andreas Schwab <schwab@suse.de>
13485
13486 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
13487
13488 * alloc.c (NSTATICS): Increase to 1280.
13489
13490 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
13491
13492 * alloc.c (NSTATICS): Bump to 1026.
13493
13494 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
13495 (Vx_super_keysym): New variables.
13496 (syms_of_xterm): DEFVAR_LISP them.
13497 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
13498 variables to determine which keys to use for the various modifiers.
13499
13500 2002-02-13 Kim F. Storm <storm@cua.dk>
13501
13502 * window.c: (Vmode_line_in_non_selected_windows): Removed.
13503 (mode_line_in_non_selected_windows): New variable.
13504 (syms_of_window): DEFVAR_BOOL it.
13505
13506 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
13507 Use mode_line_in_non_selected_windows.
13508 (mode_line_in_non_selected_windows): Declare extern.
13509 (Vmode_line_in_non_selected_windows): Removed extern.
13510
13511 2002-02-13 Richard M. Stallman <rms@gnu.org>
13512
13513 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
13514 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
13515 (Fclear_this_command_keys): Doc fixes.
13516
13517 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
13518 (update_face_from_frame_parameter): Increment face_change_count
13519 and windows_or_buffers_changed to force redisplay using changed faces.
13520
13521 * xdisp.c (QCpropertize): New variable.
13522 (mode_line_proptrans_alist): New variable.
13523 (display_mode_element): New arg PROPS; all calls changed.
13524 Implement this, for strings.
13525 Handle literal output of strings by sharing the
13526 main-line code for strings, using local var `literal'.
13527 Handle :propertize feature.
13528 (syms_of_xdisp): Initialze and staticpro QCpropertize and
13529 mode_line_proptrans_alist.
13530
13531 2002-02-11 Kim F. Storm <storm@cua.dk>
13532
13533 * window.c: (Vmode_line_in_non_selected_windows): New variable.
13534 (syms_of_window): DEFVAR_LISP it.
13535
13536 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
13537 (CURRENT_MODE_LINE_FACE_ID): Use it.
13538 (Vmode_line_in_non_selected_windows): Declare extern.
13539
13540 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
13541 to get mode line face.
13542
13543 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
13544
13545 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
13546 variables; cus-start.el doesn't need them anymore.
13547
13548 2002-02-09 Kim F. Storm <storm@cua.dk>
13549
13550 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
13551 reduction. This fixes a display problem where stray newlines were
13552 inserted in the window (corrected by C-l). Clarified code (IMHO).
13553
13554 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
13555
13556 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
13557
13558 * xdisp.c (display_mode_lines): Fix last change.
13559
13560 2002-02-09 Jason Rumney <jasonr@gnu.org>
13561
13562 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
13563 match each other.
13564 (w32_load_system_font): Prevent Cleartype fonts from loading.
13565 (Fx_show_tip): Ensure tip frames are above other topmost windows.
13566
13567 2002-02-09 Kim F. Storm <storm@cua.dk>
13568
13569 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
13570 (CURRENT_MODE_LINE_HEIGHT): Use it.
13571 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
13572
13573 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
13574 (pos_visible_p, handle_face_prop): Likewise.
13575 (display_mode_lines): Likewise, but for the real selected window.
13576 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
13577
13578 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
13579 in non-selected windows.
13580 (realize_basic_faces): Realize it.
13581 (syms_of_term): Intern and staticpro it.
13582
13583 2002-02-08 Kim F. Storm <storm@cua.dk>
13584
13585 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
13586 Changed mail addresses to emacs-devel@gnu.org.
13587
13588 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
13589
13590 * fileio.c (Fsubstitute_in_file_name): If the file name includes
13591 ~user, and there's no such user, don't discard everything before ~user.
13592
13593 * floatfns.c (Fround): Doc fix.
13594
13595 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13596
13597 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
13598
13599 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
13600
13601 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
13602
13603 2002-02-07 Kim F. Storm <storm@cua.dk>
13604
13605 * keymap.c (where_is_internal): Only check whether definition is
13606 remapped if it fulfills is_command_symbol.
13607
13608 2002-02-07 Andreas Schwab <schwab@suse.de>
13609
13610 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
13611
13612 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
13613
13614 2002-02-06 Kim F. Storm <storm@cua.dk>
13615
13616 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
13617 defining command remapping. Doc updated.
13618 (Flookup_key): Remap command through keymap if KEY is a symbol.
13619 (is_command_symbol): New function.
13620 (Fkey_binding): Use it. New optional argument NO-REMAP.
13621 Doc updated. Callers changed. Perform command remapping via
13622 recursive call unless that arg is non-nil.
13623 (where_is_internal): New argument no_remap. Callers changed.
13624 Call recursively to find original key bindings for a remapped
13625 comand unless that arg is non-nil.
13626 (Fwhere_is_internal): New optional argument NO-REMAP.
13627 Doc updated. Callers changed. Pass arg to where_is_internal.
13628
13629 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
13630 (is_command_symbol): Added prototype.
13631
13632 * keyboard.c (Vthis_original_command): New variable.
13633 (syms_of_keyboard): DEFVAR_LISP it.
13634 (command_loop_1): Set it, and perform command remapping.
13635
13636 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13637
13638 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
13639
13640 2002-02-06 Jason Rumney <jasonr@gnu.org>
13641
13642 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
13643
13644 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
13645
13646 * charset.c (get_charset_id): Use if-else instead of ?:.
13647
13648 2002-02-06 Richard M. Stallman <rms@gnu.org>
13649
13650 * filelock.c (S_ISLNK): Define if not defined.
13651
13652 2002-02-03 Richard M. Stallman <rms@gnu.org>
13653
13654 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
13655
13656 * lread.c (read1): Redesign strategy for force_multibyte and
13657 force_singlebyte. Now is_multibyte records whether read_buffer
13658 is multibyte. Encountering any multibyte character makes it so.
13659
13660 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
13661
13662 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
13663 with the same sequence, map that sequence to f10 rather than f0.
13664
13665 2002-02-03 Andreas Schwab <schwab@suse.de>
13666
13667 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
13668 latter never being defined on GNU/Linux.
13669
13670 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
13671
13672 * xfaces.c (realize_default_face): Don't set the weight and slant of
13673 the default face to Qnormal, unless these attributes are unspecified.
13674
13675 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13676
13677 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
13678 Call cancel_hourglass unconditionally.
13679
13680 * eval.c (Fsignal): Remove duplicated declaration of
13681 the variable `display_hourglass_p'.
13682
13683 2002-01-31 Richard M. Stallman <rms@gnu.org>
13684
13685 * editfns.c (region_limit): Nicer error message.
13686
13687 * coding.c (decode_composition_emacs_mule):
13688 Give up if NCOMPONENT gets too large to index `component'.
13689
13690 * callint.c (check_mark): New arg to specify clearer error message.
13691 Callers changed.
13692
13693 2002-01-27 Richard M. Stallman <rms@gnu.org>
13694
13695 * minibuf.c (Fcompleting_read): Doc fix.
13696
13697 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13698
13699 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13700 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13701 Fix doc-strings.
13702
13703 2002-01-26 Richard M. Stallman <rms@gnu.org>
13704
13705 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
13706
13707 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13708 and scroll_up_aggressively.
13709
13710 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13711
13712 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
13713
13714 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
13715
13716 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13717 (Fprevious_property_change, Fprevious_single_property_change):
13718 Stay within the narrowed-buffer boundaries.
13719
13720 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
13721
13722 * term.c (Ftty_display_color_cells): New function.
13723 (syms_of_term): Defsubr it.
13724 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13725 argument name to DISPLAY. Doc fix.
13726
13727 * dispextern.h: Add prototype for set_tty_color_mode and
13728 tty_setup_colors.
13729
13730 2002-01-24 Jason Rumney <jasonr@gnu.org>
13731
13732 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13733 If region left to draw is not what was expected, mark the frame as
13734 garbaged.
13735
13736 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13737 Combine the regions returned by BeginPaint and GetUpdateRect.
13738
13739 2002-01-23 Jason Rumney <jasonr@gnu.org>
13740
13741 * w32term.c (x_update_window_begin): Only hide caret if
13742 w32_use_visible_system_caret is set.
13743 (x_update_window_end): Only show caret if
13744 w32_use_visible_system_caret is set.
13745 (syms_of_w32term): Handle SystemParametersInfo call failing.
13746
13747 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
13748
13749 2002-01-22 Richard M. Stallman <rms@gnu.org>
13750
13751 * unexelf.c (unexec): Define n so as to cause compilation error
13752 for the code where people have often written n instead of nn.
13753
13754 * .gdbinit (hookpost-run): Defined.
13755
13756 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13757
13758 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
13759
13760 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13761
13762 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13763 if fullscreen is being set.
13764
13765 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13766
13767 * minibuf.c (Fminibuffer_contents)
13768 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13769 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
13770
13771 2002-01-21 Richard M. Stallman <rms@gnu.org>
13772
13773 * window.c (check_frame_size): Fix minimum height calculation.
13774
13775 2002-01-20 Ken Raeburn <raeburn@gnu.org>
13776
13777 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13778 height before comparison.
13779 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
13780
13781 2002-01-20 Jason Rumney <jasonr@gnu.org>
13782
13783 * w32term.c (w32_system_caret_width): Remove.
13784 (w32_use_visible_system_caret): New user flag.
13785 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13786 Windows reports a screen reader running.
13787 (x_update_window_begin): Hide the system caret.
13788 (x_update_window_end): Show the system caret.
13789 (x_display_and_set_cursor): Don't draw a cursor when
13790 w32_use_visible_system_caret is set. Do not adjust width.
13791
13792 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13793 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13794 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13795 the user requests it. Use system default width when creating.
13796 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
13797
13798 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13799 New window messages.
13800
13801 2002-01-20 Richard M. Stallman <rms@gnu.org>
13802
13803 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
13804
13805 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13806
13807 * doprnt.c (doprnt1): Fix typos in error call.
13808
13809 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
13810
13811 * unexelf.c (unexec) [__sgi]: Support the .got sections.
13812
13813 2002-01-20 Jason Rumney <jasonr@gnu.org>
13814
13815 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13816 that Windows returns. If a double check fails, try to guess how
13817 ExtTextOut is going to act.
13818
13819 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13820 in place of stricmp.
13821 (w32_list_synthesized_fonts): Removed.
13822 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13823 (struct enumfont_t): New element; list.
13824 (enum_font_cb2): List all style and charset variations of a font.
13825 (Fw32_select_font): New optional argument; include_proportional.
13826 Exclude vertical fonts. Exclude proportional fonts unless
13827 include_proportional is non-nil.
13828 (w32_enable_synthesized_fonts): Change to a boolean.
13829 (Fw32_send_sys_command): Doc fix.
13830
13831 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13832
13833 * dispnew.c (update_frame): Move the variable `tem' to the block
13834 where it is used.
13835
13836 2002-01-19 Jason Rumney <jasonr@gnu.org>
13837
13838 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13839 call to face-set-after-frame-default.
13840
13841 2002-01-18 Richard M. Stallman <rms@gnu.org>
13842
13843 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13844 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
13845
13846 2002-01-17 Richard M. Stallman <rms@gnu.org>
13847
13848 * window.c (enlarge_window): When exceeding size of parent,
13849 directly delete all the siblings instead of trying to resize it.
13850
13851 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13852
13853 * term.c (set_tty_color_mode): Remove unused variable `tem'.
13854
13855 2002-01-16 Henrik Enberg <henrik@enberg.org>
13856
13857 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
13858
13859 2002-01-16 Kim F. Storm <storm@cua.dk>
13860
13861 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13862 is invisible. This can happen if cursor is on top line of a
13863 window, and we switch to a buffer with a header line.
13864
13865 * w32term.c (x_erase_phys_cursor): Ditto.
13866
13867 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13868
13869 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13870 `dont_resize' only when used.
13871
13872 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
13873
13874 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
13875
13876 * xdisp.c (display_mode_element): When computing charpos, depend
13877 on multibyteness of elt, not the text in field.
13878
13879 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13880
13881 * buffer.c (Fkill_all_local_variables):
13882 Increment `update_mode_lines' only once.
13883
13884 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13885
13886 * lisp.h (adjust_after_replace_noundo)
13887 (Fupdate_coding_systems_internal): Add prototypes.
13888
13889 * sound.c (Fplay_sound): Initialize header_size also for :data case.
13890
13891 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
13892
13893 Support for the --color command-line argument and tty-color-mode
13894 frame parameter:
13895
13896 * term.c (tty_default_color_capabilities, tty_setup_colors)
13897 (set_tty_color_mode): New functions.
13898 (term_init): Call tty_default_color_capabilities.
13899 (Qtty_color_mode_alist): New variable.
13900 (syms_of_term): Intern and staticpro it.
13901
13902 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13903 frames.
13904 (do_switch_frame): For termcap frames, switch the tty
13905 color mode as specified by the frame's parameters.
13906 (Qtty_color_mode): New variable.
13907 (syms_of_frame): Intern and staticpro it.
13908
13909 * emacs.c (USAGE2): Add the --color option.
13910 (standard_args): Ditto.
13911
13912 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13913
13914 * xterm.h (struct x_output): New members want_fullscreen,
13915 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13916 y_pixels_outer_diff.
13917 New enum for FULLSCREEN_* constants.
13918 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13919 is NULL.
13920 (x_fullscreen_adjust): Add prototype.
13921
13922 * emacs.c (USAGE2): Add the new full-screen arguments.
13923 (standard_args): Ditto.
13924
13925 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13926 New variables.
13927 (syms_of_xfns): Intern and staticpro them.
13928 (x_frame_parms) <"fullscreen">: New parameter.
13929 (x_fullscreen_move, x_set_fullscreen): New functions.
13930 (x_set_frame_parameters): Support for Qfullscreen.
13931 (x_real_positions): More accurate computation of the frame position.
13932 (x_figure_window_size): Support full-screen frames.
13933 (Fx_create_frame): Default the fullscreen parameter.
13934
13935 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13936 (XTread_socket) <Expose>: Call x_check_fullscreen.
13937 <ConfigureNotify>: Don't resize to fullscreen.
13938 Call x_check_fullscreen_move, and set the want_fullscreen member of
13939 output_data.x.
13940
13941 2002-01-13 Jason Rumney <jasonr@gnu.org>
13942
13943 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13944 for mice with more than 3 buttons.
13945
13946 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13947 (w32_read_socket): Handle new "XBUTTON" messages.
13948
13949 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13950 (syms_of_w32fns): DEFVAR_BOOL it.
13951 (w32_wnd_proc): Handle new "XBUTTON" messages.
13952
13953 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13954
13955 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
13956
13957 2002-01-13 Andreas Schwab <schwab@suse.de>
13958
13959 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
13960
13961 2002-01-12 Andreas Schwab <schwab@suse.de>
13962
13963 * .gdbinit (xbuffer): Remove address operator since data is now a
13964 pointer.
13965
13966 2002-01-11 Richard M. Stallman <rms@gnu.org>
13967
13968 * insdel.c (adjust_after_replace_noundo): New function.
13969
13970 * coding.c (code_convert_region): Don't copy old text if undo disabled.
13971
13972 2002-01-09 Jason Rumney <jasonr@gnu.org>
13973
13974 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13975 when checking for multiple frames.
13976
13977 2002-01-08 Richard M. Stallman <rms@gnu.org>
13978
13979 * window.c (delete_window): Rewrite the code for changing the
13980 selected window to handle the case where WINDOW is not a leaf.
13981
13982 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
13983
13984 * process.c (send_process): Set src_multibyte to 1 after the call
13985 top setup_coding_system, not before the call.
13986
13987 2002-01-07 Jason Rumney <jasonr@gnu.org>
13988
13989 * xmenu.c (set_frame_menubar, xmenu_show):
13990 (xdialog_show): Initialize wv->help to Qnil.
13991
13992 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13993 (w32_dialog_show): Initialize wv->help to Qnil.
13994
13995 2002-01-06 Jason Rumney <jasonr@gnu.org>
13996
13997 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
13998
13999 * w32menu.c (w32_menu_display_help): Revert last change.
14000
14001 * xmenu.c (menu_highlight_callback): Revert last change.
14002
14003 2002-01-06 Andreas Schwab <schwab@suse.de>
14004
14005 * insdel.c (make_gap_larger): Make sure buffer size does not
14006 overflow range of int.
14007
14008 2002-01-05 Jason Rumney <jasonr@gnu.org>
14009
14010 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14011 OVERLAPS_P.
14012
14013 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
14014
14015 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
14016 to the left or to the right of the pointer, put it against
14017 the left screen edge.
14018 (x_frame_parms): Add missing braces around initializer.
14019
14020 * w32term.c (x_setup_relief_colors): Don't compute an image's
14021 background color if it doesn't have a Pixmap.
14022 (notice_overwritten_cursor): Don't depend on
14023 output_cursor and updated_area. Compare pixel coordinates with
14024 window's cursor pixel coordinates.
14025 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
14026 Call notice_overwritten_cursor with new arg list.
14027 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
14028 unconditionally.
14029 (x_draw_image_relief): Use predefined macro instead of
14030 constant when the value of `tool_bar_button_relief' is negative.
14031
14032 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
14033
14034 2002-01-04 Richard M. Stallman <rms@gnu.org>
14035
14036 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
14037
14038 2002-01-03 Richard M. Stallman <rms@gnu.org>
14039
14040 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
14041 (Fkey_binding): Try the `keymap' property map first.
14042 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
14043 minor mode bindings.
14044
14045 2002-01-03 Kim F. Storm <storm@cua.dk>
14046
14047 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
14048
14049 2002-01-02 Richard M. Stallman <rms@gnu.org>
14050
14051 * keyboard.c (read_key_sequence): Handle the keymap property
14052 before minor mode maps.
14053
14054 * editfns.c (Fformat): Update thissize from field_width
14055 based on the actual width, in the string case.
14056
14057 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14058
14059 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
14060 when used as truth value to prevent gcc warnings.
14061
14062 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
14063 * w32proc.c: Include <config.h>.
14064
14065 2002-01-01 Andreas Schwab <schwab@suse.de>
14066
14067 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
14068 not EMACS_INT, to make them compatible with DEFVAR_INT.
14069 * lisp.h (max_specpdl_size): Adjust declaration.
14070
14071 2002-01-01 Richard M. Stallman <rms@gnu.org>
14072
14073 * print.c (print_object): Test print_escape_nonascii only for
14074 unibyte strings.
14075 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
14076 when outputting to a multibyte buffer.
14077
14078 2001-12-29 Richard M. Stallman <rms@gnu.org>
14079
14080 * print.c (print_object): In multibyte string, use hex escapes.
14081 Use octal only for unibyte strings.
14082 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
14083
14084 * lread.c (read_escape): New arg BYTEREP for reporting whether
14085 escape forces unibyte or multibyte.
14086 (read1): When reading a string, take note of that info.
14087
14088 2001-12-29 Ken Raeburn <raeburn@gnu.org>
14089
14090 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
14091 comparison to test lisp value returned by Fget.
14092
14093 2001-12-29 Richard M. Stallman <rms@gnu.org>
14094
14095 * lisp.h (max_specpdl_size): Add declaration.
14096
14097 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
14098
14099 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
14100 Handle modifier bits. Correct typo in error message.
14101
14102 2001-12-28 Richard M. Stallman <rms@gnu.org>
14103
14104 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
14105 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
14106 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
14107 Update calls to Fdefine_abbrev.
14108 (write_abbrev): Update for changed data format.
14109 Don't list "system" abbrevs.
14110 (Fexpand_abbrev): Update use count with new data format.
14111 (describe_abbrev): Update for changed data format.
14112 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
14113
14114 * config.in (HAVE_MBSINIT): Add #undef.
14115
14116 * strftime.c (mbsinit): Define as no-op if not available.
14117
14118 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
14119 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
14120
14121 * keymap.c (Flookup_key): Error message if key has wrong data type.
14122 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
14123 (exclude_key): New variable.
14124
14125 2001-12-28 Gerd Moellmann <gerd@gnu.org>
14126
14127 * xterm.c (x_setup_relief_colors): Don't compute an image's
14128 background color if it doesn't have a Pixmap.
14129
14130 * xterm.c (notice_overwritten_cursor): Don't depend on
14131 output_cursor and updated_area. Compare pixel coordinates with
14132 window's cursor pixel coordinates.
14133 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
14134 Call notice_overwritten_cursor with new arg list.
14135 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
14136 unconditionally.
14137
14138 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
14139 height of the cursor line to the amount to scroll.
14140
14141 2001-12-27 Richard M. Stallman <rms@gnu.org>
14142
14143 * intervals.c (set_point_both): The position after an invisible,
14144 intangible character is not an acceptable stopping point.
14145
14146 2001-12-27 Ken Raeburn <raeburn@gnu.org>
14147
14148 * window.c (enlarge_window): In new preserve_before code, convert
14149 CURBEG from lisp object to integer before doing arithmetic.
14150
14151 2001-12-27 Richard M. Stallman <rms@gnu.org>
14152
14153 * bytecode.c (Fbyte_code): Undo previous change.
14154
14155 2001-12-26 Kim F. Storm <storm@cua.dk>
14156
14157 * keyboard.c (record_char): Ignore duplicate help-echo events only
14158 separated by mouse-movement. When tracking mouse, only record
14159 first and last mouse-movement event in same window.
14160 Don't record mouse-movement events in keyboard macros.
14161
14162 2001-12-25 Richard M. Stallman <rms@gnu.org>
14163
14164 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
14165 (Fenlarge_window): New arg PRESERVE_BEFORE.
14166
14167 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
14168 instead of Fstring_as_unibyte.
14169
14170 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14171
14172 The following changes remove mocklisp support:
14173
14174 * mocklisp.h, mocklisp.c: Files removed.
14175
14176 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
14177 `Qmocklisp' and `Qmocklisp_arguments'.
14178 Remove prototype of syms_of_mocklisp.
14179
14180 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
14181
14182 * callint.c: Do not include mocklisp.h.
14183 (Fcall_interactively): Do not test for mocklisp case.
14184
14185 * eval.c: Remove variables `Qmocklisp_arguments',
14186 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
14187 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
14188 Do not test for mocklisp case.
14189 (Fwhile): Remove unused variable `tem'.
14190 (syms_of_eval): Remove variable `moclisp-arguments'.
14191
14192 * data.c (wrong_type_argument): Remove mocklisp case.
14193
14194 * doc.c (Fdocumentation): Remove mocklisp case.
14195
14196 * emacs.c (main): Do not call syms_of_mocklisp.
14197
14198 2001-12-21 Richard M. Stallman <rms@gnu.org>
14199
14200 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
14201 to the left or to the right of the pointer, put it against
14202 the left screen edge.
14203
14204 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
14205
14206 * Makefile.in (distclean): Remove .gdbinit if we are building
14207 outside the source tree.
14208
14209 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
14210
14211 * w32.c (emacs_root_dir): New function.
14212
14213 * msdos.c (emacs_root_dir): New function.
14214
14215 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
14216 of the current drive as the fallback for default_directory.
14217
14218 * dired.c (file_name_completion): Run the elements of
14219 completion-ignored-extensions through ENCODE_FILE.
14220
14221 * lisp.h (scmp): Remove prototype, since it's now a static
14222 function private to dired.c.
14223
14224 2001-12-18 Richard M. Stallman <rms@gnu.org>
14225
14226 * dired.c (scmp): Function moved from minibuf.c.
14227 Delete multibyte handling--used only on encoded strings.
14228
14229 * minibuf.c (scmp): Function moved to dired.c.
14230
14231 * fns.c (merge): Add QUIT call.
14232
14233 2001-12-18 Dave Love <fx@gnu.org>
14234
14235 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
14236 language/georgian.el.
14237
14238 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
14239
14240 * Makefile.in (lisp, shortlisp): Synchronize with changes to
14241 lisp/Makefile.in:DONTCOMPILE.
14242
14243 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14244
14245 * xdisp.c (window_box_height): Do not return negative values.
14246 From Gerd Moellmann <gerd@gnu.org>.
14247
14248 * keyboard.c (head_table): Add missing braces around initializer.
14249
14250 * term.c (keys): Likewise.
14251
14252 * xfns.c (x_frame_parms, visual_classes): Likewise.
14253
14254 2001-12-17 Sam Steingold <sds@gnu.org>
14255
14256 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
14257 patch (COMPOSING_P, not COMPOSING).
14258
14259 2001-12-17 Richard M. Stallman <rms@gnu.org>
14260
14261 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
14262
14263 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
14264 before calling decode_coding.
14265
14266 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
14267
14268 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
14269 instead of only for COMPOSITION_DISABLED.
14270
14271 2001-12-16 Richard M. Stallman <rms@gnu.org>
14272
14273 * alloc.c (pure_alloc): After overflow, allocate just a small block.
14274
14275 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
14276
14277 * buffer.h (struct buffer): New field `display_error_modiff'.
14278 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
14279
14280 * window.c (Frecenter): Clear display_error_modiff field.
14281
14282 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
14283 Call redisplay_window, but not if display_error_modiff field says no.
14284 (redisplay_window_error): New function.
14285 (displayed_buffer): New variable.
14286 (redisplay_internal, redisplay_windows): Call the new functions
14287 instead of redisplay_window directly.
14288
14289 2001-12-15 Richard M. Stallman <rms@gnu.org>
14290
14291 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
14292
14293 2001-12-14 Andrew Innes <andrewi@gnu.org>
14294
14295 * makefile.w32-in (EMACSLOADPATH): Define.
14296 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
14297 (bootstrap-temacs): Remove dependency on bootstrap-clean.
14298
14299 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
14300
14301 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
14302 parameter have a numeric value all the time.
14303
14304 * w32fns.c (x_report_frame_params): Likewise.
14305
14306 2001-12-12 Richard M. Stallman <rms@gnu.org>
14307
14308 * fileio.c (Fwrite_region): Doc fix.
14309
14310 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
14311 (redisplay_internal): Call clear_image_cache only for window terminals.
14312
14313 2001-12-12 Gerd Moellmann <gerd@gnu.org>
14314
14315 * xdisp.c (move_it_vertically_backward): Change heuristic
14316 for the case that we didn't move far enough initially.
14317
14318 * window.c (Frecenter): Simplify computation in the case of window
14319 system frames and ARG < 0; use window_box_height.
14320
14321 2001-12-11 Richard M. Stallman <rms@gnu.org>
14322
14323 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
14324 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
14325
14326 2001-12-11 Andrew Innes <andrewi@gnu.org>
14327
14328 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
14329 arg is negative.
14330
14331 2001-12-11 Richard M. Stallman <rms@gnu.org>
14332
14333 * m/hp800.h: Split the __hpux conditional into the parts
14334 that are right for GNU/Linux too and the parts that are not.
14335 Use the former if GNU_LINUX.
14336 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
14337
14338 * s/gnu-linux.h (GNU_LINUX): Defined.
14339
14340 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14341
14342 * macros.c, msdos.c, w16select.c: Change doc-string comments to
14343 `new style' [w/`doc:' keyword].
14344
14345 2001-12-10 Jason Rumney <jasonr@gnu.org>
14346
14347 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
14348 before using.
14349
14350 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14351
14352 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
14353 keyword].
14354
14355 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
14356
14357 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
14358
14359 * s/hpux10.h (srand48): Don't undefine.
14360
14361 2001-12-09 Jason Rumney <jasonr@gnu.org>
14362
14363 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
14364 Add comment to explain where the struct came from.
14365 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
14366 (add_menu_item): Process pop-up menus first to avoid memory leak.
14367 (add_menu_item, w32_menu_display_help): Use `help' field as
14368 Lisp_Object.
14369 (w32_free_submenu_strings): Only free owner-drawn strings.
14370
14371 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14372
14373 * COPYING: Moved back.
14374
14375 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
14376 Add parentheses around && within ||.
14377
14378 * indent.c (compute_motion): Likewise.
14379
14380 * intervals.c (merge_properties_sticky): Likewise.
14381
14382 * coding.c (setup_coding_system, shrink_encoding_region)
14383 (Fdecode_sjis_char): Likewise.
14384
14385 2001-12-07 Andreas Schwab <schwab@suse.de>
14386
14387 * xdisp.c (display_mode_element): Don't read past end of string if
14388 it ends with '%'.
14389
14390 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
14391 can hold.
14392
14393 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
14394 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
14395 type changed to Lisp_Object.
14396 (syms_of_data): DEFVAR_LISP them.
14397
14398 2001-12-07 Richard M. Stallman <rms@gnu.org>
14399
14400 * callproc.c (init_callproc): Set Vdata_directory based on the source
14401 location whenever Emacs was run uninstalled.
14402
14403 2001-12-06 Paul Eggert <eggert@twinsun.com>
14404
14405 * config.in (HAVE_WORKING_VFORK): New #undefs.
14406 * process.c (create_process):
14407 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
14408 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
14409 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
14410 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
14411 * m/intel386.h (HAVE_VFORK): Likewise.
14412 * m/mips-siemens.h (HAVE_VFORK): Likewise.
14413 * m/mips.h (HAVE_VFORK): Likewise.
14414 * s/freebsd.h (vfork): Remove #define.
14415 * s/lynxos.h (HAVE_VFORK): Remove #undef.
14416 * s/usg5-4-2.h: Fix comment about vfork.
14417
14418 2001-12-06 Richard M. Stallman <rms@gnu.org>
14419
14420 * s/hpux10.h (random): Add undef.
14421 (HAVE_RANDOM): Define it just once.
14422
14423 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
14424
14425 * eval.c: Undo last change: the standard syntax is not wanted.
14426
14427 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
14428
14429 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
14430 scroll bars of the frame before deleting the frame itself. If the
14431 frame has a widget, delete the frame with XtDestroyWidget, and do
14432 not call XDestroyWindow before that.
14433
14434 2001-12-06 Kim F. Storm <storm@cua.dk>
14435
14436 * xfns.c (x_report_frame_params): Return actual fringe widths.
14437
14438 * w32fns.c (x_report_frame_params): Return actual fringe widths.
14439
14440 2001-12-05 Andrew Innes <andrewi@gnu.org>
14441
14442 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
14443 excessively large.
14444
14445 * insdel.c (make_gap_larger): New function.
14446 (make_gap_smaller): New function.
14447 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
14448 Call make_gap_smaller if arg is negative.
14449
14450 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
14451
14452 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
14453 Pass a dummy argument when calling interrupt_signal.
14454 (parse_menu_item): Mark disabled items before checking for empty def.
14455 (read_char_minibuf_menu_prompt): Make safety more visible.
14456 (read_key_sequence): Add a `first_unbound' variable.
14457 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
14458 unbound prefix as soon as we can detect it.
14459
14460 * doc.c (Fsnarf_documentation): Add prototype.
14461 (get_doc_string): Handle negative arguments.
14462 (Fdocumentation): Use AREF and ASIZE.
14463 Move the calls to get_doc_string to a single place.
14464 Don't confuse an interactive-spec for a docstring reference.
14465 (Fdocumentation_property): Take advantage of the fact that
14466 get_doc_string now ignores the sign of the docstring position.
14467
14468 * eval.c: Use standard syntax for usage in docstrings.
14469
14470 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14471
14472 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
14473
14474 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14475
14476 * xterm.c (x_draw_image_relief): Use predefined macro instead of
14477 constant when the value of `tool_bar_button_relief' is negative.
14478
14479 2001-12-02 Richard M. Stallman <rms@gnu.org>
14480
14481 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
14482 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
14483
14484 * fileio.c (read_non_regular): Delete Fsignal call.
14485
14486 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
14487
14488 * lisp.h (run_hook_list_with_args): Undo last change.
14489
14490 2001-12-01 Gerd Moellmann <gerd@gnu.org>
14491
14492 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
14493
14494 2001-12-01 Jason Rumney <jasonr@gnu.org>
14495
14496 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
14497
14498 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
14499 [!WM_MOUSELEAVE]: Define.
14500
14501 * w32menu.c (current_popup_menu, get_menu_item_info):
14502 (set_menu_item_info): New vars.
14503 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
14504 (w32_menu_show): Set current_popup_menu.
14505 (add_menu_item): Allocate new strings for owner-drawn menu items
14506 and help strings.
14507 Use owner-draw for disabled menu items again.
14508 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
14509 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
14510
14511 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
14512 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
14513 <WM_EXITMENULOOP>: Free menu strings.
14514 <WM_MOUSELEAVE>: Stop tracking mouse.
14515 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
14516
14517 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
14518 and mouse face.
14519
14520 2001-12-01 Kim F. Storm <storm@cua.dk>
14521
14522 The following changes add left-fringe and right-fringe
14523 frame parameters to adjust fringe widths, or remove one or
14524 both fringes.
14525
14526 * frame.h (struct frame): Remove trunc_area_pixel_width and
14527 trunc_area_cols fields.
14528 (Qleft_fringe, Qright_fringe): Declare.
14529 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
14530
14531 * frame.c (Qleft_fringe, Qright_fringe): New vars.
14532 (syms_of_frame): Initialize them.
14533
14534 * window.c (coordinates_in_window): Handle separate left and right
14535 fringe widths.
14536
14537 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
14538 and fringe_cols fields.
14539 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
14540 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
14541 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
14542 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
14543 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
14544 (x_compute_fringe_widths): Add prototype.
14545
14546 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
14547 fill fringe evenly with small dashes.
14548 (x_draw_fringe_bitmap): Clear background if necessary. Align and
14549 clip the new ZV bitmap to avoid jitter between rows.
14550 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
14551 background. Don't draw fringe bitmaps if fringe width is zero.
14552 (x_compute_fringe_widths): New function.
14553 (x_new_font, x_set_window_size_1): Use it.
14554
14555 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
14556 (x_set_frame_parameters): Process `font' parameter before other
14557 parameters as fringe widths depend on it.
14558 (x_set_fringe_width): New function.
14559 (x_figure_window_size): Use x_compute_fringe_widths.
14560 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
14561 parameters.
14562
14563 * widget.c (set_frame_size): Use x_compute_fringe_widths.
14564 (EmacsFrameSetCharSize): Ditto.
14565
14566 * w32term.h: Merged changes from xterm.h.
14567 * w32term.c: Merged changes from xterm.c.
14568 * w32fns.c: Merged changes from xfns.c.
14569
14570 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14571
14572 * COPYING: Removed.
14573
14574 2001-11-29 Dave Love <fx@gnu.org>
14575
14576 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
14577 extra extra slot.
14578 (detect_coding_mask): Fix call of detect_coding_iso2022.
14579
14580 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14581
14582 * fileio.c (file-name-coding-system)
14583 (default-file-name-coding-system): Doc fix (links to referenced
14584 variables added).
14585
14586 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
14587
14588 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
14589 Add dummy uses of gcproN variables.
14590
14591 * category.c (describe_category, describe_category_1)
14592 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
14593 (syms_of_category): Don't defsubr Sdescribe_categories.
14594
14595 2001-11-28 Richard M. Stallman <rms@gnu.org>
14596
14597 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
14598
14599 * Makefile.in (lispdir): New variable, referring to build dir.
14600 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
14601
14602 2001-11-28 Andrew Innes <andrewi@gnu.org>
14603
14604 * w32menu.c (w32_menu_display_help): Actually add the new argument
14605 OWNER.
14606
14607 2001-11-28 Jason Rumney <jasonr@gnu.org>
14608
14609 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
14610 menu items. From David Ponce <dponce@wanadoo.fr>.
14611 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
14612 conditionally.
14613 (w32_menu_display_help): New argument OWNER. Rewritten to store a
14614 help event in the owner frame's keyboard buffer.
14615
14616 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
14617 (Fx_show_tip): Don't subtract last width from row width.
14618
14619 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
14620 (w32_read_socket): Use EQ to compare frames.
14621
14622 2001-11-28 Gerd Moellmann <gerd@gnu.org>
14623
14624 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14625 OVERLAPS_P.
14626
14627 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14628
14629 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
14630 `gcpro3' and `gcpro4'.
14631
14632 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
14633
14634 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
14635
14636 * ccl.c: Use AREF and ASIZE.
14637
14638 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
14639
14640 * lisp.h (run_hook_list_with_args): Remove.
14641 (LIST_END_P): Fix call to wrong_type_argument.
14642 (make_fixnum_or_float): Use EMACS_INT rather than int.
14643
14644 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
14645
14646 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
14647 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
14648
14649 * eval.c: Use AREF and ASIZE.
14650 (Ffetch_bytecode): Add the file name to the error message.
14651
14652 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
14653 which match the end of the file-name.
14654 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
14655 is not a valid env var, but leave it as is instead.
14656
14657 * keymap.c (access_keymap): Handle t bindings like nil bindings.
14658 Make nil bindings in char-tables transparent.
14659 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
14660
14661 2001-11-26 Richard M. Stallman <rms@gnu.org>
14662
14663 * textprop.c (set_text_properties_1): Allow START, END in either order.
14664 Do nothing if range is empty.
14665
14666 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
14667
14668 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
14669 (clean): Not here.
14670
14671 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14672
14673 * textprop.c (set_text_properties_1): Clearly mark that the
14674 interval should not be empty.
14675
14676 * intervals.c (graft_intervals_into_buffer):
14677 Don't call set_text_properties_1 on an empty interval.
14678
14679 2001-11-25 Richard M. Stallman <rms@gnu.org>
14680
14681 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
14682
14683 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
14684 don't lose the data in it.
14685
14686 2001-11-25 Juanma Barranquero <lektu@terra.es>
14687
14688 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
14689
14690 * buffer.c (Fkill_buffer): Likewise.
14691
14692 * print.c (temp_output_buffer_setup): Likewise.
14693
14694 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14695
14696 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
14697
14698 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
14699
14700 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14701 Niemitalo <kon@iki.fi>.
14702
14703 2001-11-25 Jason Rumney <jasonr@gnu.org>
14704
14705 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
14706
14707 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14708 (Fx_show_tip): Block input during frame creation.
14709 (Fx_show_tip, Fx_hide_tip): Enable.
14710
14711 2001-11-24 Richard M. Stallman <rms@gnu.org>
14712
14713 * lread.c (Fload): Detect recursive load error for more than 3
14714 nestings of the same file.
14715 (Vrecursive_load_depth_limit): Variable deleted.
14716 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
14717
14718 2001-11-24 Jason Rumney <jasonr@gnu.org>
14719
14720 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14721 mouse position if either left or top is not specified.
14722
14723 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14724 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14725 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14726 (my_create_tip_window): Assign tip_window.
14727 (x_create_tip_frame): Use same defaults as X.
14728 (compute_tip_xy): Remove unused variable. Use full screen width.
14729 (Fx_show_tip): Do not double height. Call ShowWindow directly.
14730
14731 * w32term.c (x_after_update_window_line): Doc fix.
14732 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14733 frames.
14734 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
14735
14736 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14737 for all Windowed systems.
14738
14739 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
14740
14741 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14742 realized, use the initial screen colors to clear the screen.
14743
14744 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14745
14746 * textprop.c (Fset_text_properties): Remove unused variables
14747 `unchanged', `prev_changed', `s' and `len'.
14748
14749 * search.c (Freplace_match): Remove unused variable `inslen'.
14750
14751 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14752
14753 2001-11-22 Jason Rumney <jasonr@gnu.org>
14754
14755 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14756 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14757 (my_create_tip_window): New function.
14758 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14759 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14760
14761 2001-11-20 Jason Rumney <jasonr@gnu.org>
14762
14763 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14764 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14765
14766 * w32fns.c (Vw32_system_coding_system): Remove.
14767 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14768
14769 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14770
14771 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14772 after build_annotations.
14773
14774 * syntax.c (describe_syntax): Add dummy arg.
14775 (describe_syntax_1): Update call to describe_vector.
14776
14777 * category.c (describe_category): Add dummy arg.
14778 (describe_category_1): Update call to describe_vector.
14779
14780 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14781 (describe_command, describe_translation): Add dummy second param.
14782 (describe_map): Call elt_describer with two arguments.
14783 (describe_vector_princ): Add `fun' parameter.
14784 Call it instead of the hardcoded `princ'.
14785 (describe_vector): Add arg `args'.
14786 Pass it as a new second argument to elt_describer.
14787
14788 * keymap.h (describe_vector): Update prototype.
14789
14790 * frame.c: Don't include keymap.h any more.
14791 (keys_of_frame): Remove.
14792
14793 * lisp.h (keys_of_frame): Remove declaration.
14794
14795 * emacs.c (main): Don't call `keys_of_frame' any more.
14796
14797 2001-11-14 Andreas Schwab <schwab@suse.de>
14798
14799 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14800 if defined, 0 otherwise.
14801 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14802 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
14803
14804 2001-11-19 Richard M. Stallman <rms@gnu.org>
14805
14806 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
14807
14808 2001-11-18 Jason Rumney <jasonr@gnu.org>
14809
14810 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14811 (x_draw_bar_cursor): If the background color of the glyph under
14812 the cursor equals the frame's cursor color, use the glyph's
14813 foreground color for drawing the bar cursor.
14814 (x_after_update_window_line): Clear internal border in different
14815 circumstances.
14816 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14817 (w32_draw_relief_rect): Correct relief by 1 pixel.
14818 (x_set_glyph_string_background_width):
14819 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14820 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14821 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14822 if cursor_in_non_selected_windows is false.
14823 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14824 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14825 Notice if cursor gets overwritten.
14826 (notice_overwritten_cursor): Renamed from
14827 note_overwritten_text_cursor. Rewritten to take glyph widths
14828 into account, and to take X positions as parameters.
14829 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14830 around call to x_draw_glyphs.
14831 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14832 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14833 color to use for image glyph reliefs.
14834 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14835 (glyph_rect): Remove unused variable `area'.
14836
14837 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14838 some items.
14839 (x_set_internal_border_width): Set frame garbaged when window
14840 doesn't exist yet.
14841 (Fx_create_frame): Accept zero tool_bar_button_relief.
14842 (x_clear_image_1, four_corners_best, image_background)
14843 (image_background_transparent): New functions.
14844 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14845 (gs_format): Add `:background' entry.
14846 (lookup_image): Set IMG's background color if specified.
14847 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14848 when appropriate.
14849 (x_clear_image_1): Reset `background_valid' and
14850 `background_transparent_valid' fields.
14851 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14852 calculating it here. Set IMG's background_transparent field.
14853 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14854 (enum png_keyword_index): Add PNG_BACKGROUND.
14855 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14856 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14857 (enum gif_keyword_index): Add GIF_BACKGROUND.
14858 (enum gs_keyword_index): Add GS_BACKGROUND.
14859 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14860 Pre-calculate image background color where necessary.
14861 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14862 Use display info's n_cbits entry for screen depth.
14863 (Fx_show_tip): Remove unused variables `buffer', `top',
14864 `left', `max_width' and `max_height'.
14865
14866 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
14867
14868 2001-11-18 Gerd Moellmann <gerd@gnu.org>
14869
14870 * puresize.h (BASE_PURESIZE): Increase to 750000.
14871
14872 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14873
14874 * frame.c (Fframe_live_p): Doc fix.
14875
14876 2001-11-18 Richard M. Stallman <rms@gnu.org>
14877
14878 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14879 (message_dolog_marker3): New static variables hold three markers.
14880 (syms_of_xdisp): Initialize and staticpro them.
14881 (message_dolog): Use message_dolog_marker1..3 instead of
14882 allocating markers each time. Unchain them when done.
14883
14884 2001-11-17 Richard M. Stallman <rms@gnu.org>
14885
14886 * doc.c (Fsnarf_documentation): Doc fix.
14887
14888 2001-11-17 Andreas Schwab <schwab@suse.de>
14889
14890 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
14891
14892 2001-11-17 Richard M. Stallman <rms@gnu.org>
14893
14894 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
14895
14896 2001-11-17 Jason Rumney <jasonr@gnu.org>
14897
14898 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
14899
14900 2001-11-17 Gerd Moellmann <gerd@gnu.org>
14901
14902 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14903 with invalid position.
14904
14905 2001-11-16 Richard M. Stallman <rms@gnu.org>
14906
14907 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
14908
14909 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14910 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14911 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
14912
14913 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
14914
14915 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
14916
14917 * fileio.c (build_annotations): Split off the tail.
14918 (build_annotations_2): New fun. Extracted from build_annotations.
14919 (Fwrite_region): Split the call to build_annotations into two
14920 calls to build_annotations and build_annotations_2.
14921
14922 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14923
14924 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14925 clear_waiting_for_input with argument.
14926
14927 * xterm.h (x_update_cursor): Remove duplicated prototype.
14928
14929 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
14930
14931 * xterm.c (waiting_for_input): Remove unnecessary declaration.
14932
14933 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
14934
14935 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
14936
14937 * fileio.c (choose_write_coding_system): New fun, extracted
14938 from Fwrite_region.
14939 (Fwrite_region): Use it.
14940
14941 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14942 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14943 (ml_apply, find_handler_clause): Add prototype.
14944
14945 2001-11-16 Eli Zaretskii <eliz@gnu.org>
14946
14947 * config.in: Add #undef HAVE_COFF_H.
14948
14949 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14950 Required for ISC 4.1.
14951
14952 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
14953
14954 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14955 Andrew Wiseman <a.wiseman@btclick.com>.
14956
14957 2001-11-16 Kim F. Storm <storm@cua.dk>
14958
14959 The following changes are made to clean up the various internal
14960 references to the fringes to actually use the term `fringe' for
14961 them. Previously, they were called `flags areas', `bitmap areas',
14962 `left/right side of windows', or implicitly as `flags' or
14963 `bitmaps':
14964
14965 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
14966 Comments fixed. Use renamed symbols.
14967
14968 * dispnew.c: Comment fix. Use renamed symbols.
14969
14970 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14971 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14972 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
14973
14974 * msdos.c: Comment fix.
14975
14976 * w32fns.c: Use renamed symbols.
14977
14978 * w32term.c: Comment fixes. Use renamed symbols.
14979 (fringe_bitmap_type): Renamed from bitmap_type.
14980 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14981 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14982 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
14983
14984 * w32term.h: Comment fixes. Use renamed symbols.
14985 (fringes_extra): Renamed from flags_areas_extra.
14986 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14987 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14988 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14989 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14990 (FRAME_X_LEFT_FRINGE_WIDTH):
14991 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14992 (FRAME_X_RIGHT_FRINGE_WIDTH):
14993 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14994
14995 * widget.c: Use renamed symbols.
14996
14997 * window.c: Comment fixes. Use renamed symbols.
14998 (coordinates-in-window-p): Doc fix.
14999
15000 * xdisp.c: Comment fixes. Use renamed symbols.
15001
15002 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
15003
15004 * xfns.c: Use renamed symbols.
15005
15006 * xterm.c: Comment fixes. Use renamed symbols.
15007 (fringe_bitmap_type): Renamed from bitmap_type.
15008 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
15009 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
15010 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
15011
15012 * xterm.h: Comment fixes. Use renamed symbols.
15013 (fringes_extra): Renamed from flags_areas_extra.
15014 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
15015 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
15016 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
15017 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
15018 (FRAME_X_LEFT_FRINGE_WIDTH):
15019 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
15020 (FRAME_X_RIGHT_FRINGE_WIDTH):
15021 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
15022
15023 2001-11-15 Jason Rumney <jasonr@gnu.org>
15024
15025 * w32menu.c (add-menu-item): Make help_echo and radio buttons
15026 work for most menu items. From David Ponce
15027 <david.ponce@wanadoo.fr>.
15028
15029 2001-11-15 Gerd Moellmann <gerd@gnu.org>
15030
15031 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
15032 Some x_set_* function expect to be called even if old and new
15033 value are equal.
15034
15035 * xdisp.c (build_desired_tool_bar_string): Accept zero
15036 tool_bar_button_relief.
15037
15038 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
15039
15040 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
15041
15042 * xterm.c (x_draw_bar_cursor): If the background color of the
15043 glyph under the cursor equals the frame's cursor color, use
15044 the glyph's foreground color for drawing the bar cursor.
15045
15046 * dispnew.c (direct_output_forward_char): Fix character/byte
15047 position comparison.
15048
15049 2001-11-15 Miles Bader <miles@gnu.org>
15050
15051 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
15052 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
15053 Update arguments to find_field.
15054 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
15055 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
15056 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
15057 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
15058
15059 2001-11-14 Richard M. Stallman <rms@gnu.org>
15060
15061 * editfns.c (Fpropertize): Allow call with 1 arg.
15062
15063 * dispextern.h (image_background, image_background_transparent):
15064 Conditionalize on HAVE_X_WINDOWS.
15065
15066 2001-11-13 Richard M. Stallman <rms@gnu.org>
15067
15068 * print.c (Fprin1_to_string): Doc fix.
15069
15070 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
15071
15072 * floatfns.c (Fceiling, Ffloor): Doc fixes.
15073
15074 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
15075
15076 * fileio.c (Ffile_accessible_directory_p): Doc fix.
15077
15078 * eval.c (syms_of_eval): Doc fix.
15079
15080 * coding.c (syms_of_coding): Doc fix.
15081
15082 * doc.c (Fsnarf_documentation): Doc fix.
15083
15084 * dispnew.c (syms_of_display): Doc fix.
15085
15086 * category.c (Fget_unused_category): Doc fix.
15087
15088 * buffer.c (syms_of_buffer): Doc fixes.
15089
15090 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
15091
15092 * print.c (prin1, print): Doc fix.
15093
15094 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15095
15096 * fontset.h: Remove declarations of variables
15097 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
15098
15099 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
15100 `Vclip_large_size_font'.
15101
15102 2001-11-13 Jason Rumney <jasonr@gnu.org>
15103
15104 * w32fns.c: Doc fix.
15105
15106 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15107
15108 * xfaces.c (Fface_attributes_as_vector): Doc fix.
15109
15110 * fns.c: Doc fix.
15111
15112 * emacs.c: Doc fix.
15113
15114 * coding.c: Doc fix.
15115
15116 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
15117 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
15118 `new style' [w/`doc:' keyword].
15119
15120 2001-11-12 Richard M. Stallman <rms@gnu.org>
15121
15122 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
15123 LeaveNotify events. Only FocusIn and FocusOut do that now.
15124 (x_display_and_set_cursor): Do display hollow cursors in active
15125 minibuffer windows when they are not selected.
15126
15127 2001-11-12 Jason Rumney <jasonr@gnu.org>
15128
15129 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
15130 * w32term.c: Change doc-string comments to `new style'
15131 [w/`doc:' keyword]. Doc fixes.
15132
15133 * w32fns.c: Don't define max.
15134 (Fx_open_connection): Only execute once.
15135
15136 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15137
15138 * ccl.c: Change macros to use do-while block instead of if-else.
15139 Use braces to follow GNU Coding Standards.
15140
15141 2001-11-11 Richard M. Stallman <rms@gnu.org>
15142
15143 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
15144
15145 * lread.c (read_escape): Use end_of_file_error for reporting eof.
15146
15147 * insdel.c (replace_range): Use adjust_markers_for_replace
15148 instead of adjust_markers_for_delete and adjust_markers_for_insert.
15149
15150 * intervals.h: Declare set_text_properties and set_text_properties_1.
15151
15152 * textprop.c (set_text_properties_1): New subroutine
15153 broken out of set_text_properties.
15154 (set_text_properties): Use set_text_properties_1.
15155
15156 * intervals.c (graft_intervals_into_buffer):
15157 Use set_text_properties_1 to clear out properties.
15158
15159 * search.c (Freplace_match): Use replace_range to insert
15160 and delete. Don't request property inheritance from
15161 surrounding text.
15162
15163 2001-11-10 Jason Rumney <jasonr@gnu.org>
15164
15165 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
15166 vertical fonts. Allow them if face name is explicitly specified.
15167 Do not give up if we find a font that cannot be converted to an xlfd.
15168
15169 2001-11-10 Gerd Moellmann <gerd@gnu.org>
15170
15171 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
15172 instead of malloc/free.
15173
15174 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15175
15176 * xfaces.c (merge_face_vectors): Use braces to follow GNU
15177 Coding Standards.
15178 (Finternal_set_lisp_face_attribute): Likewise.
15179
15180 * buffer.c (Fbury_buffer): Likewise.
15181
15182 * indent.c (current_column_1): Remove unused variable `prev_col'.
15183
15184 * coding.c (encode_coding): Use precomputed value of `src'.
15185 (encode_coding): Remove unused variable `src_end'.
15186 (code_convert_region): Remove unused variables `count'.
15187
15188 2001-11-07 Jason Rumney <jasonr@gnu.org>
15189
15190 * w32term.c (x_display_and_set_cursor): Do not move system caret
15191 if cursor_glyph is NULL.
15192
15193 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15194
15195 * keymap.c (access_keymap): Fix compilation error.
15196
15197 2001-11-07 Miles Bader <miles@gnu.org>
15198
15199 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
15200
15201 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15202
15203 * intervals.c (graft_intervals_into_buffer):
15204 Remove #ifdef'd-out code.
15205 (graft_intervals_into_buffer): Remove unused variable `middle'.
15206
15207 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
15208 code (eval-current-buffer).
15209 Change doc-string comments to `new style' [w/`doc:' keyword].
15210
15211 2001-11-06 Richard M. Stallman <rms@gnu.org>
15212
15213 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
15214
15215 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
15216
15217 * lread.c (read1): Fix behavior with nested backquoting.
15218
15219 * keyboard.c (make_lispy_event): Check integerness and fix
15220 Lisp_Object/int mixup.
15221
15222 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15223
15224 * fns.c (copy_hash_table): Remove unused variable `v'.
15225
15226 * fontset.c (fontset_font_pattern): Remove unused variable
15227 `family_registry'.
15228
15229 * indent.c (current_column_1): Remove unused variable `prev_col'.
15230
15231 2001-11-05 Richard M. Stallman <rms@gnu.org>
15232
15233 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
15234
15235 * buffer.c (Fkill_buffer): Don't delete auto save file
15236 if buffer is modified.
15237
15238 2001-11-05 Andrew Innes <andrewi@gnu.org>
15239
15240 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
15241 CHECK_NUMBER_CDR.
15242
15243 2001-11-05 Richard M. Stallman <rms@gnu.org>
15244
15245 * unexelf.c (unexec): Minor changes; clean up comments.
15246
15247 2001-11-05 Sam Steingold <sds@gnu.org>
15248
15249 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
15250
15251 2001-11-05 Andreas Schwab <schwab@suse.de>
15252
15253 * sound.c (sound_perror): Save errno from being clobbered.
15254
15255 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
15256
15257 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
15258 the program image directly.
15259
15260 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15261
15262 * buffer.h (Fbuffer_local_value): Add prototype.
15263
15264 2001-11-04 Richard M. Stallman <rms@gnu.org>
15265
15266 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
15267 and CHECK_BUFFER.
15268
15269 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
15270 (record_char): Likewise.
15271
15272 * keyboard.c (make_lispy_event): Don't insist a drag event must
15273 move to a different buffer position. Instead, check for moving at
15274 least double_click_fuzz.
15275
15276 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
15277
15278 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
15279
15280 * indent.c (current_column_1, Fmove_to_column): Separate the code
15281 for display-table glyphs from the code for buffer text, to fix
15282 bugs in the former.
15283
15284 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
15285
15286 * buffer.c (Fbuffer_local_value): New function.
15287 (syms_of_buffer): Defsubr it.
15288
15289 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
15290 value of `cursor-in-non-selected-windows'.
15291
15292 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
15293 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
15294 (syms_of_xdisp): Initialize it.
15295
15296 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15297
15298 * xfns.c (Fx_create_frame): Doc fix.
15299
15300 * coding.c: Change doc-string comments to `new style' [w/`doc:'
15301 keyword].
15302
15303 * eval.c (top_level_value, top_level_set): Remove commented and
15304 #ifdef'd-out code.
15305 (Fdefvar): Fix usage in doc-string.
15306
15307 2001-11-03 Richard M. Stallman <rms@gnu.org>
15308
15309 * xfns.c: Include unistd.h, if it exists.
15310
15311 * editfns.c: Move the include of ctype.h after unistd.h.
15312
15313 * gmalloc.c: Test BROKEN_PROTOTYPES.
15314
15315 2001-11-03 Ken Raeburn <raeburn@gnu.org>
15316
15317 * lisp.h (CHECK_STRING_CAR): New macro.
15318 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
15319 treating XCAR and XCDR as lvalues.
15320 (openp): Use CHECK_STRING_CAR.
15321 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
15322
15323 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
15324
15325 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
15326 (SIGMASKTYPE): Define.
15327
15328 * syssignal.h (sigunblock): Don't define if already defined.
15329
15330 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15331
15332 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
15333 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
15334 Fix typos in comments.
15335
15336 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
15337 and #ifdef'd-out code.
15338 Fix and reindent comments.
15339
15340 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
15341
15342 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
15343 argument `i' in macros.
15344
15345 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
15346 `i' in macros.
15347
15348 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
15349 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
15350 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
15351 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
15352 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
15353 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
15354 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
15355 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
15356 in macros.
15357
15358 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
15359 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
15360 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
15361 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
15362 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
15363 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
15364 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
15365 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
15366 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
15367 (remove unused second argument).
15368
15369 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
15370
15371 * syntax.c (describe_syntax): New wrapper.
15372 (Finternal_describe_syntax_value): Rename from describe_syntax.
15373 Don't insert space at front and \n at the end.
15374 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
15375
15376 * regex.c (re_wctype): Try to fix some warnings.
15377 (regcomp, regexec): Don't forget the __restrict.
15378
15379 2001-11-02 Richard M. Stallman <rms@gnu.org>
15380
15381 * textprop.c (Fget_char_property): Doc fix.
15382
15383 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15384
15385 * process.c (Fstart_process): Add usage to doc-string.
15386
15387 * data.c (Fsetq_default): Ditto.
15388
15389 * callint.c (Finteractive): Ditto.
15390
15391 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
15392
15393 * macros.c: Don't include keymap.h any more.
15394
15395 2001-11-01 Richard M. Stallman <rms@gnu.org>
15396
15397 * data.c (Fmake_local_variable): Doc fix.
15398
15399 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
15400 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
15401
15402 * keymap.c (Fdescribe_buffer_bindings): Print character property
15403 bindings along with or instead of the buffer local map.
15404 Make the overriding maps override what they should.
15405
15406 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15407
15408 * window.c (grow_mini_window): Fix typo in comment.
15409
15410 2001-11-01 Gerd Moellmann <gerd@gnu.org>
15411
15412 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
15413 (XTset_vertical_scroll_bar): Likewise.
15414
15415 * xfns.c (x_build_heuristic_mask): Use four_corners_best
15416 instead of IMAGE_BACKGROUND.
15417
15418 * xfns.c (four_corners_best): Reindent.
15419
15420 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
15421 Handle :box so that it is possible to specify sexprs.
15422
15423 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
15424
15425 * s/hpux11.h: New file.
15426
15427 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15428
15429 * emacs.c (USAGE1): Show command line option --no-window-system
15430 instead of --no-windows in usage.
15431 (standard_args): Rename --no-windows to --no-window-system.
15432 (bug_reporting_address): Follow Emacs coding conventions.
15433
15434 * eval.c (Fcommandp): Doc fix.
15435 Change doc-string comments to `new style' [w/`doc:' keyword].
15436
15437 * frame.c (Fframe_live_p): Doc fix.
15438
15439 * buffer.c (selective-display-ellipses): Doc fix.
15440
15441 2001-10-31 Gerd Moellmann <gerd@gnu.org>
15442
15443 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
15444
15445 * xfaces.c (realize_x_face): If C is not a single-byte character,
15446 set the face's colors_copied_bitwise_p instead of the defaulted_p
15447 members which have a different meaning.
15448 (free_face_colors): Do nothing for a face whose colors have been
15449 copied bitwise.
15450
15451 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
15452
15453 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15454
15455 * marker.c, mocklisp.c: Change doc-string comments to `new style'
15456 [w/`doc:' keyword].
15457
15458 2001-10-31 Gerd Moellmann <gerd@gnu.org>
15459
15460 * fns.c (require_unwind): Return Lisp_Object.
15461
15462 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15463
15464 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
15465 (last-input-char): Revert doc-string to be the same as the
15466 doc-string of `last-input-event'.
15467
15468 * xdisp.c: Fix typos in comments.
15469
15470 2001-10-31 Gerd Moellmann <gerd@gnu.org>
15471
15472 * window.c (grow_mini_window): Handle case that the root
15473 window is already smaller than the nominal mininum height.
15474
15475 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
15476
15477 * emacs.c (main): Don't call keys_of_macros any more.
15478
15479 * lisp.h (keys_of_macros): Remove.
15480
15481 * macros.c (keys_of_macros): Remove.
15482
15483 * xfaces.c (Fface_attribute_relative_p): Declare args.
15484
15485 2001-10-30 Jason Rumney <jasonr@gnu.org>
15486
15487 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
15488 (enum_font_cb2): Ignore fonts with vertical orientation.
15489
15490 2001-10-30 Richard M. Stallman <rms@gnu.org>
15491
15492 * keyboard.c (Finput_pending_p): Doc fix.
15493
15494 2001-10-30 Gerd Moellmann <gerd@gnu.org>
15495
15496 * xterm.c (x_after_update_window_line): Don't run the code
15497 clearing in borders for rows whose visible height is 0.
15498
15499 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
15500 resized_p flag is set. If not set, use the much less flickering
15501 method previously used.
15502
15503 * dispnew.c (change_frame_size_1): Set frame's resized_p.
15504
15505 * frame.h (struct frame) <resized_p>: New member.
15506
15507 * lread.c (to_multibyte): Ensure read_buffer is at least twice
15508 as large as the number of bytes to convert.
15509
15510 * lread.c (to_multibyte): New function.
15511 (read1): Use it.
15512
15513 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
15514
15515 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
15516
15517 2001-10-30 Gerd Moellmann <gerd@gnu.org>
15518
15519 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
15520 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
15521 if the row's fill_line_p is set and drawing the last glyph with
15522 DRAW_IMAGE_{RAISED,SUNKEN}.
15523
15524 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
15525
15526 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
15527
15528 * xmenu.c: Include coding.h and charset.h.
15529 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
15530 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
15531 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
15532 Explicitly set wv->help. Use `TRUE' rather than `True'.
15533 (menu_help_callback): Use empty_string.
15534
15535 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
15536 (Fx_popup_dialog): Explicitly init f.
15537 (w32_menu_display_help): Use empty_string.
15538
15539 2001-10-29 Richard M. Stallman <rms@gnu.org>
15540
15541 * fns.c (Frequire): Detect recursive try to require the same
15542 feature 3 or more levels deep, and get error.
15543 (require_unwind): New subroutine.
15544 (require_nesting_list): New variable.
15545 (syms_of_fns): Init and staticpro it.
15546
15547 * print.c (print_object): Clarify indication of insertion type.
15548
15549 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
15550
15551 * coding.c (syms_of_coding): Document that locale-coding-system is
15552 used for decoding input on X.
15553
15554 * window.c (Fscroll_left, Fscroll_right): Doc fix.
15555
15556 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15557
15558 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
15559 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
15560
15561 2001-10-29 Gerd Moellmann <gerd@gnu.org>
15562
15563 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
15564 use NO_CURSOR if cursor_in_non_selected_windows is false.
15565
15566 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
15567 the slant attribute if FRAME is t.
15568
15569 * xfns.c (x_set_internal_border_width): Set frame garbaged
15570 when X window doesn't exist yet.
15571
15572 * xterm.c (x_after_update_window_line): Clear internal border
15573 in different circumstances.
15574
15575 * xterm.c (XTread_socket) <KeyPress>: Don't use
15576 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
15577 <handa@etl.go.jp>.
15578
15579 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
15580
15581 * m/ibms390.h: New file. From Adam Thornton
15582 <athornton@sinenomine.net>.
15583
15584 2001-10-28 Gerd Moellmann <gerd@gnu.org>
15585
15586 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
15587
15588 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
15589 a loop counter.
15590
15591 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15592
15593 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
15594
15595 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
15596 keyword].
15597 Fix typos in comments.
15598
15599 * emacs.c (bug_reporting_address): New function.
15600 Use it when displaying usage message.
15601
15602 * minibuf.c (read_minibuf): Remove unused external declaration of
15603 variable `Qread_only'.
15604
15605 * keymap.c (access_keymap): Remove unused variable `charset'.
15606
15607 2001-10-28 Miles Bader <miles@gnu.org>
15608
15609 * xfaces.c (merge_face_heights): Handle TO being relative as well.
15610 Remove #ifdef'd-out code.
15611 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
15612 (syms_of_xfaces): Initialize them.
15613
15614 2001-10-27 Jason Rumney <jasonr@gnu.org>
15615
15616 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
15617 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
15618 position using the system caret.
15619
15620 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
15621 (w32_system_caret_height, w32_system_caret_x)
15622 (w32_system_caret_y): New variables for tracking system caret.
15623 (w32_initialize): Initialize them.
15624 (x_display_and_set_cursor): Make system caret follow the active cursor.
15625
15626 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
15627 New messages types.
15628
15629 * w32term.c (note_mouse_highlight): Clear old help_echo.
15630
15631 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15632
15633 * xterm.c: Fix typo in a comment.
15634
15635 * emacs.c: Fix typos in comments.
15636 Remove unnecessary spaces.
15637 Change doc-string comments to `new style' [w/`doc:' keyword].
15638 (USAGE2): Fix typos in usage string.
15639
15640 * xterm.c: Fix typo in a comment.
15641
15642 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
15643 emacs.c.
15644
15645 2001-10-27 Gerd Moellmann <gerd@gnu.org>
15646
15647 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
15648 instead of 1/2 line_height in the heuristic for skipping
15649 farther backward when target_y was not reached.
15650
15651 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
15652 Display errno only if non-zero.
15653 (sound_warning): New function.
15654 (vox_configure): Don't treat failing to set sample rate as error.
15655 (various places): Improve error messages.
15656
15657 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
15658
15659 * fileio.c (Faccess_file): Run the argument filename through
15660 Fexpand_file_name, before using it.
15661
15662 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
15663 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
15664
15665 2001-10-26 Gerd Moellmann <gerd@gnu.org>
15666
15667 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
15668
15669 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15670 Fix clearing in the case of scroll bars on the right.
15671
15672 2001-10-26 Juanma Barranquero <lektu@terra.es>
15673
15674 * w32gui.h (XImage): Add a dummy typedef.
15675
15676 2001-10-26 Gerd Moellmann <gerd@gnu.org>
15677
15678 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
15679
15680 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
15681
15682 * frame.c (Fframe_parameter): Fix last change.
15683
15684 * fileio.c: Revert last change (which removed old commented-out
15685 version of expand-file-name). Add a comment that explains why
15686 this old version should not be removed.
15687
15688 2001-10-25 Gerd Moellmann <gerd@gnu.org>
15689
15690 * frame.c (Fframe_parameter): Fix a bug whereby some
15691 ``artificial'' frame parameters, like `minibuffer' were not
15692 obtained by calling Fframe_parameters.
15693
15694 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15695 cursor differently.
15696
15697 * xdisp.c (move_it_vertically_backward): Compute line height
15698 differently. Add heuristic to try to be more compatible to 20.x.
15699
15700 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15701
15702 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15703
15704 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15705 boolean.
15706
15707 2001-10-25 Miles Bader <miles@gnu.org>
15708
15709 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15710 BG is a pointer to a structure, not a structure.
15711 (gif_format, png_format): Add missing commas.
15712
15713 2001-10-24 Richard M. Stallman <rms@gnu.org>
15714
15715 * xfaces.c (Fface_attributes_as_vector): New function.
15716 (syms_of_xfaces): Defsubr it.
15717
15718 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15719
15720 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15721 variable `area'.
15722
15723 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15724
15725 * search.c (scan_newline): Remove unused variable `selective_display'.
15726
15727 2001-10-25 Miles Bader <miles@gnu.org>
15728
15729 * dispextern.h (struct image): Add `background',
15730 `background_valid', and `background_transparent' fields.
15731 (image_background, image_background_transparent): New declarations.
15732 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15733 * xfns.c (image_background, image_background_transparent)
15734 (four_corners_best): New functions.
15735 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
15736 (gs_format): Add `:background' entry.
15737 (lookup_image): Set IMG's background color if specified.
15738 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15739 when appropriate.
15740 (x_clear_image_1): Reset `background_valid' and
15741 `background_transparent_valid' fields.
15742 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15743 calculating it here. Set IMG's background_transparent field.
15744 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15745 (enum png_keyword_index): Add PNG_BACKGROUND.
15746 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15747 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15748 (enum gif_keyword_index): Add GIF_BACKGROUND.
15749 (enum gs_keyword_index): Add GS_BACKGROUND.
15750 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
15751 Pre-calculate image background color where necessary.
15752 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15753 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15754 color to use for image glyph reliefs.
15755
15756 2001-10-24 Gerd Moellmann <gerd@gnu.org>
15757
15758 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15759 in full-width rows.
15760
15761 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15762 Fix clearing of area not covered by scroll bar.
15763
15764 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15765
15766 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15767 and `real_start'.
15768 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
15769 (glyph_rect): Remove unused variable `area'.
15770
15771 2001-10-24 Gerd Moellmann <gerd@gnu.org>
15772
15773 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
15774
15775 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15776 (row_containing_pos): Take additional argument DY.
15777 Treat rows ending in middle of char differently.
15778 (display_line): Handle tabs on window systems differently.
15779
15780 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15781 with additional argument.
15782
15783 * dispextern.h (row_containing_pos): Adjust prototype.
15784
15785 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15786 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15787 (try_window_id, try_window_reusing_current_matrix)
15788 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
15789 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
15790
15791 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15792
15793 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15794 gnuemacs).
15795 (HAVE_BOXES): Fix typo in comment.
15796 (push_menu_pane): Fix typo in comment.
15797
15798 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15799 of `Qwhen'.
15800 (single_display_prop_string_p): Remove unused local declarations
15801 of `Qwhen' and `Qmargin'.
15802 (string_buffer_position): Remove unused variable `around'.
15803 (store_frame_title): Remove unused variable `width'.
15804
15805 * window.c: Don't define max.
15806 (coordinates_in_window): Remove unused variable `uy'.
15807
15808 * widget.c: Don't define max.
15809
15810 * process.c: Don't define max.
15811 (create_process): Remove unused variable `buffer'.
15812
15813 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15814
15815 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
15816
15817 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15818
15819 * xfaces.c (Finternal_set_lisp_face_attribute)
15820 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15821 frame is on a windowed display.
15822
15823 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15824
15825 * dispnew.c (sync_window_with_frame_matrix_rows):
15826 Fix handling of windows which aren't full-width, fix handling
15827 of marginal areas.
15828
15829 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
15830
15831 2001-10-23 Andreas Schwab <schwab@suse.de>
15832
15833 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15834 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15835
15836 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15837
15838 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
15839 REAL_END. Notice if cursor gets overwritten.
15840 (notice_overwritten_cursor): Take X positions as parameters.
15841 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15842 around call to x_draw_glyphs.
15843
15844 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15845
15846 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15847 instead of C) and usage.
15848
15849 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15850 of C) and usage.
15851
15852 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15853 `left', `max_width' and `max_height'.
15854
15855 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15856
15857 * xdisp.c (display_line): For a tab continued to the next line,
15858 set row's ends_in_middle_of_char_p.
15859
15860 2001-10-22 Gerd Moellmann <gerd@gnu.org>
15861
15862 * xdisp.c (display_line): Fix computation of continuation lines
15863 width for TABs.
15864
15865 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15866
15867 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15868 `Qlaplace'.
15869
15870 * fileio.c: Remove unused code.
15871
15872 2001-10-22 Miles Bader <miles@gnu.org>
15873
15874 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15875 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15876 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15877
15878 2001-10-21 Jason Rumney <jasonr@gnu.org>
15879
15880 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15881
15882 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
15883
15884 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
15885 (Finsert_string): Avoid the multi-line string literals warning.
15886
15887 2001-10-22 Miles Bader <miles@gnu.org>
15888
15889 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
15890 (Fdocumentation): Don't use it.
15891 (syms_of_doc): Don't initialize it.
15892
15893 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
15894 * print.c (Fwith_output_to_temp_buffer): Likewise.
15895 * window.c (Fsave_window_excursion): Likewise.
15896 * editfns.c (Fsave_excursion, Fsave_current_buffer)
15897 (Fsave_restriction): Likewise.
15898 * eval.c (Frun_hooks, Frun_hook_with_args)
15899 (Frun_hook_with_args_until_failure)
15900 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15901 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15902 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
15903 (Funwind_protect, Fcondition_case): Likewise.
15904 * coding.c (Ffind_operation_coding_system): Likewise.
15905 * keyboard.c (Ftrack_mouse): Likewise.
15906
15907 2001-10-21 Miles Bader <miles@gnu.org>
15908
15909 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
15910 (Fmake_hash_table): Add usage: string to doc string.
15911 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
15912 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
15913 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15914 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15915 (Fml_prefix_argument_loop): Likewise.
15916
15917 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15918
15919 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
15920
15921 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15922 style' [w/`doc:' keyword].
15923
15924 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15925 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15926 comments to `new style' [w/`doc:' keyword].
15927
15928 2001-10-21 Jason Rumney <jasonr@gnu.org>
15929
15930 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15931
15932 * w32term.c (remember_mouse_glyph): New function.
15933 (w32_mouse_position): Use it.
15934 (note_mouse_movement): If the mouse moved off the glyph, remember
15935 its new position.
15936
15937 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15938 (w32_display_info): Add mouse_face_overlay.
15939
15940 * w32term.c (notice_overwritten_cursor): Renamed from
15941 note_overwritten_text_cursor. Rewritten to take glyph widths into
15942 account.
15943 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15944 (fast_find_string_pos): New function.
15945 (fast_find_position): Return the correct vpos. Add parameter
15946 STOP. In the final row, stop before glyphs having STOP as object.
15947 Don't consider glyphs that are not from a buffer.
15948 (fast_find_position) [0]: Add a presumably more correct version
15949 for after 21.1.
15950 (expose_window_tree, expose_frame): Don't compute intersections here.
15951 (expose_window): Do it here instead.
15952 (expose_window_tree, expose_window, expose_line): Return 1 when
15953 overwriting mouse-face.
15954 (expose_window): If W is the window currently being updated, mark
15955 the frame garbaged.
15956 (expose_frame): If mouse-face was overwritten, redo it.
15957 (x_use_underline_position_properties): New variable.
15958 (syms_of_xterm): DEFVAR_BOOL it.
15959 (x_draw_glyph_string): Add comment to use it in future.
15960 (x_draw_glyph_string): Restore clipping after drawing box.
15961 Fix a computation of the underline position.
15962 (w32_get_glyph_string_clip_rect): Minor cleanup.
15963 (x_fill_stretch_glyph_string): Remove an assertion.
15964 (x_produce_glyphs): Don't convert multibyte characters
15965 to unibyte characters in unibyte buffers.
15966 (cursor_in_mouse_face_p): New function.
15967 (x_draw_stretch_glyph_string): Use it to choose a different GC
15968 when drawing a cursor within highlighted text. Don't draw
15969 background again if it has already been drawn.
15970 (x_draw_glyph_string_box): Don't draw a full-width
15971 box just because the glyph row's full_width_p flag is set.
15972 (x_draw_glyphs): Fix computation of rightmost x for
15973 full-width rows.
15974 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15975 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
15976 change bottom shadow accordingly. Some cleanup.
15977 (x_update_window_end): Handle overwritten mouse face
15978 also for tool bar windows.
15979 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15980 DRAW is DRAW_IMAGE_RAISED.
15981 (clear_mouse_face): Return 1 if text with mouse face was
15982 actually redrawn. Make the function static.
15983 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
15984 optimize away highlighting if we pass over that same overlay again.
15985 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15986 to detect a case where we have to highlight a different region
15987 despite not having left the currently highlighted region.
15988 Set mouse_face_overlay in the x_display_info. Avoid changing the
15989 mouse pointer shape when show_mouse_face has already done it, or
15990 there is no need. Handle mouse-face and help-echo in strings.
15991 (glyph_rect): New function.
15992 (w32_mouse_position): Use it to raise the threshold for mouse
15993 movement event generation.
15994 (w32_initialize_display_info): Initialize the x_display_info's
15995 mouse_face_overlay.
15996 (w32_set_vertical_scroll_bar): Don't clear a zero height
15997 or width area.
15998 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15999 a widget to zero height.
16000
16001 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
16002 Protect unibyte strings created by replacing their multibyte
16003 equivalents in menu_items.
16004 (w32_menu_show): Don't overwrite an item's name with its key
16005 description in case the description is a multibyte string.
16006 (single_submenu): Some cleanup.
16007
16008 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
16009 (postprocess_image): New function.
16010 (lookup_image): Call it for all image types except PostScript.
16011 (x_kill_gs_process): Call postprocess_image.
16012 (tiff_error_handler, tiff_warning_handler): New functions.
16013 (tiff_load): Install them as handlers.
16014 (x_kill_gs_process): Recognize if someone has cleared the image
16015 cache under us.
16016 (valid_image_p): Protect better against invalid image
16017 specifications. Previous code could signal an error.
16018 (Fx_hide_tip, Fshow_tip): Doc fix.
16019 (Fv_max_tooltip_size): New variable.
16020 (syns_of_xfns): DEFVAR_LISP it.
16021 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
16022 window buffer to *tip* right after creating the frame. Set frame's
16023 window_width. Use a maximum tooltip size specified by
16024 Vx_max_tooltip_size, if that has valid contents.
16025 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
16026 Make sure the tooltip is completely visible.
16027 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
16028 (Fx_create_frame): Adjust the frame's height for presence
16029 of the tool bar before calling x_figure_window_size.
16030 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
16031 when the window gets smaller.
16032 (x_set_foreground_color): Set frame's cursor_pixel.
16033 (x_set_foreground_color, x_set_background_color): Cleaned up.
16034 (x_set_font): Handle case of x_new_fontset returning the same name
16035 as before, although there was a change in fontsets.
16036
16037 2001-10-21 Miles Bader <miles@gnu.org>
16038
16039 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
16040 (Flogxor): Add usage: string to doc string.
16041 * charset.c (Fstring): Likewise.
16042 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
16043 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
16044
16045 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16046
16047 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
16048
16049 * alloc.c: Reindent DEFUNs with doc: keywords.
16050
16051 * abbrev.c (Finsert_abbrev_table_description): Reindent.
16052
16053 * frame.c: Change doc-string comments to `new style' [w/`doc:'
16054 keyword].
16055
16056 See ChangeLog.9 for earlier changes.
16057
16058 ;; Local Variables:
16059 ;; coding: iso-2022-7bit
16060 ;; End:
16061
16062 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
16063 Copying and distribution of this file, with or without modification,
16064 are permitted provided the copyright notice and this notice are preserved.
16065
16066 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4