(Info-search): Fix previous change.
[bpt/emacs.git] / src / ChangeLog
... / ...
CommitLineData
12004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
2
3 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
4
52004-11-19 Richard M. Stallman <rms@gnu.org>
6
7 * search.c (Vsearch_whitespace_regexp): New variable.
8 (syms_of_search): Defvar it.
9 (compile_pattern_1): Call re_set_whitespace_regexp with it.
10 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
11 is non-nil.
12 (struct regexp_cache): New element whitespace_regexp.
13 (syms_of_search): Initialize whitespace_regexp elements.
14 (compile_pattern): Compare whitespace_regexp elements.
15 (compile_pattern_1): Set whitespace_regexp elements.
16
17 * regex.c (regex_compile): Substitute whitespace_regexp
18 for spaces, if it is nonzero.
19 (whitespace_regexp): New variable.
20 (re_set_whitespace_regexp): New function.
21
222004-11-19 Kim F. Storm <storm@cua.dk>
23
24 * indent.c (Fvertical_motion): Fix last change.
25
262004-11-18 Kim F. Storm <storm@cua.dk>
27
28 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
29 Instead, move back again if reseating moves too far ahead.
30
312004-11-17 Luc Teirlinck <teirllm@auburn.edu>
32
33 * xdisp.c (message3): Call clear_message.
34
352004-11-17 Kim F. Storm <storm@cua.dk>
36
37 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
38
392004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
40
41 * gtkutil.c (xg_get_file_name): Fix typo in
42 HAVE_GTK_FILE_SELECTION_NEW.
43
44 * xmenu.c (x_menu_in_use): Remove.
45 (x_menu_set_in_use): Also set popup_activated_flag.
46
47 * xfns.c (Fx_file_dialog): Call popup_activated instead of
48 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
49
50 * xterm.h: (x_menu_in_use): Remove.
51
522004-11-16 Richard M. Stallman <rms@gnu.org>
53
54 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
55 Use map-keymap-internal to implement that.
56
57 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
58
592004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
60
61 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
62 a window before using XWINDOW.
63
64 * window.c (make_window, Fselect_window, make_dummy_parent)
65 (save_window_save):
66 * frame.c (make_frame):
67 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
68
69 * lisp.h (NILP): Use EQ rather than XFASTINT.
70
712004-11-16 Kim F. Storm <storm@cua.dk>
72
73 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
74
75 * indent.c (Fvertical_motion): Fix last change. Only reseat when
76 moving backwards.
77
782004-11-16 Luc Teirlinck <teirllm@auburn.edu>
79
80 * dispextern.h: Extern reseat_at_previous_visible_line_start.
81
822004-11-16 Kenichi Handa <handa@m17n.org>
83
84 * xdisp.c (display_mode_element): Fix previous change (calculate
85 end position of substring to display correctly).
86
872004-11-16 Kim F. Storm <storm@cua.dk>
88
89 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
90 Reported by Andrew M. Scott.
91
922004-11-15 Kim F. Storm <storm@cua.dk>
93
94 * fns.c (Fsafe_plist_get): New defun.
95 (syms_of_fns): Defsubr it.
96
97 * lisp.h (Fsafe_plist_get): Add EXFUN.
98
99 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
100 Use Fsafe_plist_get.
101 (note_mode_line_or_margin_highlight, note_mouse_highlight):
102 Fix image map element parsing. Use Fsafe_plist_get.
103
1042004-11-15 Richard M. Stallman <rms@gnu.org>
105
106 * xdisp.c (get_next_display_element): Fix previous change.
107
1082004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
109
110 * window.c (shrink_windows): Handle special case of one window left
111 when trying to shrink the final reminder. Grow windows if
112 total_removed is less than total_shrink.
113
114 * xmenu.c (pop_down_menu): Remove global variable current_menu,
115 extract pointer from arg with XSAVE_VALUE.
116 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
117 Construct arg to record_unwind_protect with make_save_value.
118
1192004-11-13 Richard M. Stallman <rms@gnu.org>
120
121 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
122 (get_next_display_element): Fix previous change to apply only to \n.
123
124 * indent.c (Fvertical_motion): Scan to PT from start of line to
125 make iterator consistent.
126
127 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
128
1292004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
130
131 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
132
133 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
134 Record unwind with clean_up_file_dialog.
135
136 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
137 Declare.
138
139 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
140
1412004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
142
143 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
144 (xg_file_sel_destroy): Remove.
145 (xg_file_response_cb, pop_down_file_dialog)
146 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
147 New functions.
148 (xg_get_file_with_chooser, xg_get_file_with_selection):
149 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
150 Move common code to xg_get_file_name. Return widget created.
151 (xg_get_file_name): Set name, transient for, modal and destroy
152 with parent here. Connect response signal to xg_file_response_cb,
153 connect delete-event to gtk_true. Record pop_down_file_dialog
154 for unwind. Do event loop and call x_menu_wait_for_event in loop.
155 (xg_create_widget): Make dialogs modal.
156
157 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
158 Lisp_Object.
159 (popup_get_selection): Move unwind protect ...
160 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
161 Move destroy of widget to pop_down_menu.
162 (popup_widget_loop): Move unwind protect ...
163 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
164 Move destroy of widget to pop_down_menu.
165 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
166 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
167 x_mouse_leave and grabbed = 0 to pop_down_menu.
168
1692004-11-13 Kim F. Storm <storm@cua.dk>
170
171 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
172 (syms_of_xdisp): DEFVAR_BOOL it.
173 (make_cursor_line_fully_visible, try_cursor_movement)
174 (try_window_id): Use it.
175
1762004-11-12 Kim F. Storm <storm@cua.dk>
177
178 * dispextern.h (struct glyph_row): New member extra_line_spacing.
179 (struct it): New member max_extra_line_spacing.
180 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
181 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
182 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
183 part of last line is only extra line spacing (so the text on the
184 line is fully visible). Use helper macros.
185 Add W arg (to use them). All callers changed.
186 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
187 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
188
189 * window.c (window_scroll_pixel_based, Frecenter):
190 Use move_it_vertically_backward directly.
191 (Frecenter): Fix calculation of new start pos for negative arg.
192 Before, the new start pos was sometimes chosen too far back, so
193 the last line became only partially visible, and thus would be
194 either only semi-visible or automatically scrolled to the middle
195 of the window by redisplay.
196
197 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
198 (move_it_vertically_backward): Don't recure to move further back.
199 (move_it_vertically): Remove superfluous condition.
200 (move_it_by_lines): Clear last_height when moved 0 lines.
201 (resize_mini_window): Use it.max_extra_line_spacing.
202 (display_tool_bar_line): Clear row->extra_line_spacing.
203 (try_scrolling): Use move_it_vertically_backward directly.
204 (redisplay_window): Likewise.
205 (compute_line_metrics): Set row->extra_line_spacing.
206 (display_line, display_string): Likewise.
207 (x_produce_glyphs): Update it->max_extra_line_spacing.
208
209 * xmenu.c (pop_down_menu): Return nil.
210
2112004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
212
213 * xmenu.c (x_menu_wait_for_event): New function.
214 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
215 to handle timers.
216 (popup_widget_loop): Add argument do_timers.
217 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
218 do_timers to popup_widget_loop.
219 (xmenu_show): Call XMenuActivateSetWaitFunction so that
220 x_menu_wait_for_event is called by XMenuActivate.
221 (create_and_show_popup_menu): Pass 1 for do_timers to
222 popup_get_selection.
223 (pop_down_menu): New function.
224 (popup_get_selection, popup_widget_loop): Unwind protect to
225 pop_down_menu.
226 (popup_widget_loop): Add argument widget.
227 (create_and_show_popup_menu, create_and_show_dialog): Pass new
228 argument widget to popup_widget_loop.
229
2302004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
231
232 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
233
2342004-11-09 Kim F. Storm <storm@cua.dk>
235
236 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
237 Fix various comments referring to XEvents instead of input events.
238 (x_queue_event): Fix format strings.
239 (x_stop_queuing_selection_requests): Likewise.
240
241 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
242 (pint2hrstr): Add extra braces to silence compiler.
243
244 * print.c (print_object): Fix format string.
245
246 * lread.c (read1): Fix next_char matching.
247
248 * lisp.h (Fdelete): Add EXFUN.
249 (replace_range_2): Add prototype.
250
251 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
252
253 * intervals.h (NULL_INTERVAL_P): Add separate version when
254 ENABLE_CHECKING is not defined to silence compiler.
255 (compare_string_intervals): Add prototype.
256
257 * fringe.c (destroy_fringe_bitmap): Fix return type.
258 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
259
260 * emacs.c (Fdump_emacs): Fix format string.
261
262 * doc.c: Include <ctype.h>.
263 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
264
265 * data.c (store_symval_forwarding): Remove unused variables.
266
267 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
268
2692004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
270
271 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
272 to ${OLDXMENU}.
273
2742004-11-09 Kim F. Storm <storm@cua.dk>
275
276 * process.c (Fmake_network_process): Remove kludge for interrupted
277 connects on BSD. If connect is interrupted, just close socket and
278 start over rather than sleeping and retry with same socket.
279
2802004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
281
282 * .cvsignore: Add buildobj.lst.
283
284 * doc.c: New variable Vbuild_files.
285 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
286 file names from buildobh.lst. Only attach docstrings from files
287 that are in Vbuild_files.
288 (syms_of_doc): Defvar Vbuild_files.
289
290 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
291 and w32*.o.
292 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
293 (mostlyclean): Rm buildobj.lst
294
295 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
296 is linked.
297
2982004-11-09 Kim F. Storm <storm@cua.dk>
299
300 * fringe.c (update_window_fringes): Update fringe bitmaps if
301 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
302 also update previous row to get rid of misc. artifacts.
303
3042004-11-08 Kim F. Storm <storm@cua.dk>
305
306 * xdisp.c (fast_find_position): Fix start pos if header line present.
307 (note_mouse_highlight): Clear mouse face if we move out of text area.
308
3092004-11-08 Eli Zaretskii <eliz@gnu.org>
310
311 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
312 Don't include <sys/time.h> explicitly.
313 Include <stdio.h> unconditionally, not just on MacOS.
314
3152004-11-08 Kenichi Handa <handa@m17n.org>
316
317 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
318 don't pay attention to '\' before '*'.
319 (fontset_pattern_regexp): Change the meaning of the second arg.
320 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
321 (check_fontset_name): Try NAME as literal at first, and if it
322 failes, try NAME as pattern.
323
3242004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
325
326 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
327
3282004-11-07 Andreas Schwab <schwab@suse.de>
329
330 * lisp.h (Fmsdos_downcase_filename): Declare.
331 * dired.c (Fmsdos_downcase_filename): Don't declare here.
332 * fileio.c: Likewise.
333
3342004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
335
336 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
337 comparisons with integers instead of Lisp_Object address.
338 (Fmsdos_set_keyboard): Declare argument allkeys.
339
340 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
341
342 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
343 int/Lisp_Object mixup.
344
345 * fileio.c: Ditto.
346
3472004-11-06 Steven Tamm <steventamm@mac.com>
348
349 * editfns.c: Need to include sys/time.h before resource.h on darwin.
350
3512004-11-06 Richard M. Stallman <rms@gnu.org>
352
353 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
354
355 * xfaces.c (merge_named_face): GCPRO the face_name in the
356 named_merge_point struct that we make.
357 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
358
359 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
360 before deciding whether to inactivate mark.
361
3622004-11-06 Lars Brinkhoff <lars@nocrew.org>
363
364 * config.in: Regenerate (add HAVE_GETRUSAGE).
365 * editfns.c (Fget_internal_run_time): New function.
366 (syms_of_data): Defsubr it.
367 * fns.c (sxhash): As far as possible, merge calculation of
368 hash code for symbols and strings.
369
3702004-11-06 Eli Zaretskii <eliz@gnu.org>
371
372 * frame.c (syms_of_frame): Fix the example in the doc string.
373
3742004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
375
376 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
377
378 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
379 (create_and_show_dialog): Revert change from 2004-10-31.
380
3812004-11-05 Luc Teirlinck <teirllm@auburn.edu>
382
383 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
384
3852004-11-05 Kim F. Storm <storm@cua.dk>
386
387 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
388
389 * fileio.c (Ffile_modes): Doc fix.
390 (auto_save_1): Check for Ffile_modes nil value.
391
3922004-11-05 Kim F. Storm <storm@cua.dk>
393
394 * xselect.c (struct selection_event_queue, selection_queue)
395 (x_queue_selection_requests, x_queue_event)
396 (x_start_queuing_selection_requests)
397 (x_stop_queuing_selection_requests): Add new queue for selection
398 input events to replace previous XEvent queue in xterm.c.
399 (queue_selection_requests_unwind): Adapt to new queue.
400 (x_reply_selection_request): Adapt to new queue.
401 Unexpect wait_object in case of x errors (memory leak).
402 (x_handle_selection_request, x_handle_selection_clear): Make static.
403 (x_handle_selection_event): New function. May queue selection events.
404 (wait_for_property_change_unwind): Use save_value instead of cons.
405 Clear property_change_reply_object.
406 (wait_for_property_change): Abort if already waiting.
407 Use save_value instead of cons for unwind data.
408 (x_handle_property_notify): Skip events already arrived, but don't
409 free them, as "arrived" field is checked by wait_for_property_change,
410 and it will be freed by unwind or explicit unexpect_property_change.
411 (x_get_foreign_selection): Add to new queue.
412 (receive_incremental_selection): Don't unexpect wait_object when done
413 as it has already been freed by previous wait_for_property_change.
414
415 * xterm.h (x_start_queuing_selection_requests)
416 (x_stop_queuing_selection_requests, x_handle_selection_request)
417 (x_handle_selection_clear): Remove prototypes.
418 (x_handle_selection_event): Add prototype.
419
420 * xterm.c (handle_one_xevent): Don't queue X selection events
421 here, it may be too late if we start queuing after we have already
422 stored some selection events into the kbd buffer.
423 (struct selection_event_queue, queue, x_queue_selection_requests)
424 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
425 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
426 (x_catch_errors_unwind): Block input around final XSync.
427
428 * keyboard.h (kbd_buffer_unget_event): Add prototype.
429
430 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
431 (kbd_buffer_unget_event): New function.
432 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
433 and use x_handle_selection_event.
434 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
435
4362004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
437
438 * xselect.c (TRACE3): New debug macro.
439 (x_reply_selection_request): Use it.
440 (receive_incremental_selection): In call to TRACE0, the name of
441 a symbol is in xname.
442
4432004-11-05 Kim F. Storm <storm@cua.dk>
444
445 * fontset.c (fontset_pattern_regexp): Use unsigned char.
446
4472004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
448
449 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
450
451 * gtkutil.h (use_old_gtk_file_dialog): Declare.
452
453 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
454 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
455 * xfns.c (syms_of_xfns): ... to here.
456
457 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
458 it doesn't start with /.
459
4602004-11-04 Kenichi Handa <handa@m17n.org>
461
462 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
463 treat it as a literal character.
464
4652004-11-03 Kim F. Storm <storm@cua.dk>
466
467 * .gdbinit (ppt): New function.
468
4692004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
470
471 * xterm.c (x_window_to_scroll_bar): Only call
472 xg_get_scroll_id_for_window if toolkit scroll bars are used.
473
474 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
475 of save.
476
4772004-11-02 Andreas Schwab <schwab@suse.de>
478
479 * window.c (Fscroll_right): Fix last change.
480
4812004-11-02 Kim F. Storm <storm@cua.dk>
482
483 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
484
4852004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
486
487 * callproc.c (Fcall_process): Block input around vfork.
488
4892004-11-02 Kim F. Storm <storm@cua.dk>
490
491 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
492 (syms_of_eval): Defsubr it.
493
4942004-11-02 Richard M. Stallman <rms@gnu.org>
495
496 * insdel.c (replace_range_2): New function.
497
498 * casefiddle.c (casify_region): Handle changes in byte-length
499 using replace_range_2.
500
501 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
502
503 * xdisp.c (back_to_previous_visible_line_start):
504 Subtract 1 from pos when checking previous newline for invisibility.
505
506 * window.c (window_scroll_pixel_based): Update preserve_y
507 for header line if any.
508 (Fscroll_left, Fscroll_right): Don't call interactive_p;
509 use a new second argument instead.
510
511 * eval.c (Fcall_interactive_p): New function.
512 (interactive_p): Don't test INTERACTIVE here.
513 (Finteractive_p): Doc fix.
514
515 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
516
5172004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
518
519 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
520 comparing font names.
521
5222004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
523
524 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
525 Fx_file_dialog if only directories should be read.
526
527 * lisp.h: Fx_file_dialog takes 5 parameters.
528
529 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
530 Add parameter only_dir_p.
531 In Motif version, don't put DEFAULT_FILENAME in filter part of the
532 dialog, just text field part. Do not add DEFAULT_FILENAME
533 to list of files if it isn't there.
534 In GTK version, pass only_dir_p parameter to xg_get_file_name.
535
536 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
537 Check only_dir_p instead of comparing prompt to "Dired". When using
538 a save dialog, add option kNavDontConfirmReplacement, change title
539 to "Enter name", change text for save button to "Ok".
540
541 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
542 Check only_dir_p instead of comparing prompt to "Dired".
543
544 * gtkutil.c (xg_get_file_with_chooser)
545 (xg_get_file_with_selection): New functions, only defined ifdef
546 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
547 respectively.
548 (xg_get_file_name): Add parameter only_dir_p.
549 Call xg_get_file_with_chooser or xg_get_file_with_selection
550 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
551 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
552
553 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
554
555 * config.in: Rebuild (added HAVE_GTK_FILE_*).
556
5572004-11-01 Kim F. Storm <storm@cua.dk>
558
559 * process.c (connect_wait_mask, num_pending_connects):
560 Only declare and use them if NON_BLOCKING_CONNECT is defined.
561 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
562 (IF_NON_BLOCKING_CONNECT): New helper macro.
563 (wait_reading_process_output): Only declare and use local vars
564 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
565
5662004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
567
568 * w32term.c (x_scroll_run): Delete region objects after use.
569
5702004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
571
572 * xmenu.c: Add prototypes for forward function declarations.
573 (popup_get_selection): Remove parameter do_timers, remove call to
574 timer_check.
575 (create_and_show_popup_menu, create_and_show_dialog):
576 Remove parameter do_timers from call to popup_get_selection.
577
578 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
579 tool_bar_items and assign the result to f->tool_bar_items if
580 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
581 tool_bar_items to assignment of result.
582
583 * atimer.c (alarm_signal_handler): Do not call set_alarm if
584 pending_atmers is non-zero.
585
5862004-10-31 Kim F. Storm <storm@cua.dk>
587
588 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
589
5902004-10-28 Will <will@glozer.net>
591
592 * macterm.c: allow user to assign key modifiers to the Mac Option
593 key via a 'mac-option-modifier' variable.
594
5952004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
596
597 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
598 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
599 (x_handle_selection_request, x_handle_selection_clear)
600 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
601
6022004-10-28 Richard M. Stallman <rms@gnu.org>
603
604 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
605
606 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
607
6082004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
609
610 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
611 comment-starter over a 1-char one.
612
6132004-10-27 Richard M. Stallman <rms@gnu.org>
614
615 * xdisp.c (get_next_display_element): In mode lines,
616 treat newline and tab like other control characters.
617
618 * editfns.c (Fmessage): Doc fix.
619
620 * indent.c (vmotion): When moving up, check the newline before.
621 Make prevline an int, not a Lisp_Object.
622
6232004-10-27 Kim F. Storm <storm@cua.dk>
624
625 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
626 Only allocate info and discarded tables once.
627
628 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
629 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
630 (SAFE_FREE): Test it to determine if we need to unwind to free.
631 Remove size arg. All users changed.
632 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
633
6342004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
635
636 * gtkutil.c: Put empty line between comment and function body.
637 (xg_destroy_widgets): Rename from remove_from_container.
638 Just destroy all widgets in list. Argument wcont removed.
639 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
640 instead of remove_from_container.
641 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
642 (free_frame_tool_bar): Add comment.
643
644 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
645 is not NULL before strcmp.
646
6472004-10-26 Kim F. Storm <storm@cua.dk>
648
649 * callint.c (Fcall_interactively): Add 'U' code to get the
650 up-event discarded by a previous 'k' or 'K' argument.
651
6522004-10-26 David Kastrup <dak@gnu.org>
653
654 * buffer.c (syms_of_buffer): Fix a few typos.
655
6562004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
657
658 * xsmfns.c: Put empty line between comment and function body.
659 Use two spaces before comment end.
660
6612004-10-25 Kenichi Handa <handa@m17n.org>
662
663 * fontset.c (fontset_pattern_regexp): Optimize for the case that
664 PATTERN is full XLFD.
665
6662004-10-24 Kenichi Handa <handa@m17n.org>
667
668 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
669
670 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
671 (regex_compile): Return REG_ERANGEX if appropriate.
672
6732004-10-22 Kenichi Handa <handa@m17n.org>
674
675 * editfns.c (Ftranslate_region_internal): New function.
676 (syms_of_editfns): Defsubr it.
677
6782004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
679
680 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
681
6822004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
683
684 * xterm.h (x_output): New member `xic_base_fontname'.
685 (FRAME_XIC_BASE_FONTNAME): New macro.
686 (xic_free_xfontset): Declare.
687
688 * xfns.c (xic_create_xfontset): Share fontsets between frames
689 based on base_fontname.
690 (xic_free_xfontset): New function.
691 (free_frame_xic): Use it.
692 (xic_set_xfontset): Ditto.
693
694 * xterm.c (xim_destroy_callback): Ditto.
695
696
6972004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
698
699 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
700
7012004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
702
703 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
704 XSync.
705
706 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
707 New variables and constant.
708 (main): Calculate heap_bss_diff. If we are dumping and the
709 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
710 and exec ourself again.
711 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
712 print a warning.
713
714 * lastfile.c: Make my_endbss and my_endbss_static available on all
715 platforms.
716
717 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
718 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
719
7202004-10-19 Luc Teirlinck <teirllm@auburn.edu>
721
722 * data.c (Flocal_variable_if_set_p): Doc fix.
723
7242004-10-19 Jason Rumney <jasonr@gnu.org>
725
726 * w32.c (init_environment): Set emacs_dir correctly when running
727 emacs from the build directory.
728
7292004-10-19 Richard M. Stallman <rms@gnu.org>
730
731 * editfns.c (Fdelete_and_extract_region):
732 If region is empty, return null string.
733
7342004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
735
736 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
737 and canon_width.
738 (xg_frame_cleared): Remove.
739
740 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
741 (xg_find_top_left_in_fixed): Remove.
742 (xg_create_scroll_bar): Put an event box widget between
743 the scroll bar widget and the edit widget.
744 (xg_show_scroll_bar): Show the parent widget (the event box).
745 (xg_remove_scroll_bar): Destroy parent (the event box) also.
746 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
747 Move the parent (the event box) widget inside the fixed widget.
748 Move window clear to xterm.c.
749
750 * gtkutil.h (xg_frame_cleared): Remove.
751
752 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
753 (x_scroll_bar_create, XTset_vertical_scroll_bar):
754 Remove arguments left and width to xg_update_scrollbar_pos.
755 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
756
7572004-10-19 Kenichi Handa <handa@m17n.org>
758
759 * xdisp.c (display_mode_element): Fix display of wide chars.
760
7612004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
762
763 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
764 gdk_window_clear and move gdk_window_process_all_updates after
765 clear so events are sent to the X server in correct order.
766
7672004-10-18 Kenichi Handa <handa@m17n.org>
768
769 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
770 comparing font names.
771 (fs_query_fontset): Use fast_string_match for comparing fontset names.
772 (list_fontsets): Likewise.
773
774 * search.c (fast_string_match_ignore_case): New function.
775
776 * lisp.h (fast_string_match_ignore_case): Extern it.
777
7782004-10-17 Kim F. Storm <storm@cua.dk>
779
780 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
781 than bitmap if there is not left fringe.
782 (get_overlay_arrow_glyph_row): Also used on windows system.
783 (display_line): Display overlay string if no left fringe.
784
7852004-10-16 Jason Rumney <jasonr@gnu.org>
786
787 * w32fns.c (w32_font_match): Encode font name being matched.
788
7892004-10-16 Richard M. Stallman <rms@gnu.org>
790
791 * window.c (Fspecial_display_p): Doc fix.
792
7932004-10-15 Stefan <monnier@iro.umontreal.ca>
794
795 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
796 Don't ignore menus, because where-is-internal already does it for us.
797
7982004-10-15 Kim F. Storm <storm@cua.dk>
799
800 * xdisp.c (redisplay_window): Only update fringes and vertical
801 border on window frames.
802
8032004-10-14 Andreas Schwab <schwab@suse.de>
804
805 * m/ia64.h (DATA_SEG_BITS): Don't define.
806
8072004-10-14 Kim F. Storm <storm@cua.dk>
808
809 * xterm.h: Include Xutil.h after keysym.h to work around bug
810 in some X versions.
811
8122004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
813
814 * fns.c (map_char_table): Add missing gcpros.
815
8162004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
817
818 * keymap.c (get_keymap): An autoload form is not a keymap.
819
820 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
821
8222004-10-13 Kim F. Storm <storm@cua.dk>
823
824 * callproc.c (Fcall_process): Simplify handling of display arg.
825 Resume `display_on_the_fly' once a coding system is determined.
826
827 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
828
8292004-10-12 Kim F. Storm <storm@cua.dk>
830
831 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
832 caller, such as call-process, is not going to poll for input.
833 (calc_line_height_property): Handle case where it->object is nil.
834
835 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
836
8372004-10-12 Kenichi Handa <handa@m17n.org>
838
839 * xdisp.c (get_next_display_element):
840 If unibyte_display_via_language_environment is zero, display 8-bit
841 chars in octal in unibyte buffer.
842
8432004-10-12 Kim F. Storm <storm@cua.dk>
844
845 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
846 are no ordinary bindings.
847
8482004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
849
850 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
851
8522004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
853
854 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
855 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
856 (make_mac_frame): Add BLOCK_INPUT around the making of a
857 terminal frame.
858 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
859 * macgui.h (mktime): Use emacs_mktime.
860 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
861 Make a cancel file-open dialog be like C-g.
862 * mac.c (mktime): Use emacs_mktime.
863 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
864 (Fmac_paste_function): Add better error handling for carbon cut/paste.
865
8662004-10-10 Kim F. Storm <storm@cua.dk>
867
868 * keyboard.c (timer_resume_idle): New function to resume idle
869 timer without resetting timers on the idle list.
870 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
871 (timer_start_idle, timer_stop_idle): Declare static.
872 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
873
874 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
875
8762004-10-08 Steven Tamm <steventamm@mac.com>
877
878 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
879 * macterm.c (mac_check_for_quit_char): Remove warning for using
880 NULL where 0 should be used.
881 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
882 objc/malloc.h
883 * mac.c: Include time.h for Tiger compatibility.
884
8852004-10-07 Kim F. Storm <storm@cua.dk>
886
887 * xdisp.c (redisplay_window): Fix flicker on vertical line between
888 windows. Update vertical line after drawing window fringes, but
889 only if actually drawing any bitmaps--or there is no fringe.
890
891 * xterm.c (x_update_window_end): Likewise.
892 * macterm.c (x_update_window_end): Likewise.
893 * w32term.c (x_update_window_end): Likewise.
894
895 * fringe.c (draw_window_fringes): Return value now indicates if
896 any fringe bitmaps were redrawn (or there are no fringes).
897
898 * dispextern.h (draw_window_fringes): Update prototype.
899
9002004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
901
902 * macfns.c (mac_get_window_bounds): Add extern.
903 (x_real_positions): Use mac_get_window_bounds.
904
905 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
906 xmenu.c (YAILOM).
907
908 * macterm.c [!MAC_OSX]: Include Windows.h.
909 (front_emacs_window): Rename from mac_front_window. All uses
910 changed. Return the frontmost non-tooltip emacs window.
911 (mac_get_window_bounds): New function.
912 (x_calc_absolute_position): Use the difference of width and height
913 between the inner and outer window.
914 (x_set_offset): Specify window position by the coordinae of the
915 outer window. Adjust the position if the title bar is completely
916 outside the screen.
917 (app_is_suspended, app_sleep_time): Remove unused variables.
918 (do_app_resume, do_app_suspend): Remove their contents because
919 window-activate/deactivate events will do the job.
920 (do_zoom_window): Remove unused variables. Make compliant to the
921 standard way of zooming. Set f->left_pos and f->top_pos.
922 (XTread_socket): Don't use argument `expected'. Don't use
923 FrontWindow to determine the clicked window. Exclude unprocessed
924 mouseUp cases in the early stage. Add parentheses to fix operator
925 precedence.
926 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
927
9282004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
929
930 * config.in: Regenerate.
931
932 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
933 HAVE_EXECSHIELD.
934
9352004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
936
937 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
938 a row if Alt or Meta has been found for that row. Also stop scanning
939 for Keysyms for that row.
940
9412004-10-04 Kim F. Storm <storm@cua.dk>
942
943 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
944 to list. Include overlay arrow bitmap in return value.
945
946 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
947 bars with fractional column width. If scroll bar separates two
948 windows, move it towards the window it belongs to. Only update
949 the padding area below the scroll bar widget when necessary,
950 i.e. when scroll bar widget is created, moved, or resized.
951
952 * xdisp.c (define_frame_cursor1): Do not change frame cursor
953 while tracking/dragging mouse.
954 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
955
956 * window.c (coordinates_in_window): Relax check for cursor
957 on vertial border between mode lines.
958 (Fset_window_fringes): Do not allow negative widths.
959 (Fset_window_scroll_bars): Likewise.
960
961 * .gdbinit (pp): Shorthand for p ARG + pr.
962 (ff): New command: flush frame updates (X only).
963
9642004-10-03 Michael Albinus <michael.albinus@gmx.de>
965
966 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
967
9682004-09-30 Kenichi Handa <handa@m17n.org>
969
970 * process.c (send_process): Free composition data.
971
972 * fileio.c (Finsert_file_contents): Free composition data.
973
974 * coding.c (code_convert_region): Don't skip ASCIIs if there are
975 compositions to encode.
976 (encode_coding_string): Likewise. Free composition data.
977
9782004-09-30 Florian Weimer <fw@deneb.enyo.de>
979
980 * coding.c (code_convert_region): Free composition data.
981
9822004-09-29 Kim F. Storm <storm@cua.dk>
983
984 * fringe.c: Remove limit on number of bitmaps.
985 (fringe_bitmaps, fringe_faces): Change to pointers.
986 (max_fringe_bitmaps): New var.
987 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
988 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
989
990 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
991 (struct glyph_row): Reorder fringe_bitmap related fields.
992 (struct it): Likewise.
993
994 * w32term.c (fringe_bmp): Change to pointer.
995 (max_fringe_bmp): New var.
996 (w32_define_fringe_bitmap): Expand fringe_bmp.
997 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
998 (w32_destroy_fringe_bitmap): Likewise.
999
10002004-09-29 Kim F. Storm <storm@cua.dk>
1001
1002 * fringe.c: Simplify last change.
1003 (lookup_fringe_bitmap): New function.
1004 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
1005 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
1006 Keep standard bitmaps in Vfringe_bitmaps.
1007 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
1008 (Fset_fringe_bitmap_face): Likewise.
1009
1010 * dispextern.h (lookup_fringe_bitmap): Add prototype.
1011 (valid_fringe_bitmap_p): Remove prototype.
1012
1013 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
1014
10152004-09-29 Kim F. Storm <storm@cua.dk>
1016
1017 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
1018 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
1019
1020 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
1021
1022 * fringe.c (Vfringe_bitmaps): New variable.
1023 (syms_of_fringe): DEFVAR_LISP it.
1024 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
1025 Change arg to Lisp_Object and fail if not an integer.
1026 (get_fringe_bitmap_name, resolve_fringe_bitmap)
1027 (destroy_fringe_bitmap): New functions.
1028 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
1029 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
1030 clear its fringe property.
1031 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
1032 Fdestroy_fringe_bitmap.
1033 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
1034 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
1035 and set fringe property. Signal error if no free slots.
1036 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
1037 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
1038
1039 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
1040 symbols with a fringe property.
1041
10422004-09-27 Kim F. Storm <storm@cua.dk>
1043
1044 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
1045 Doc fix. Format may now be a symbol or alist, not a cons.
1046
1047 * fringe.c (update_window_fringes): Handle new formats of
1048 indicate-buffer-boundaries (symbol or alist). No longer
1049 allow a simple cons.
1050 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
1051
10522004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1053
1054 * config.in: Rebuild.
1055
10562004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1057
1058 * config.in: Rebuild.
1059
1060 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
1061
10622004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
1063
1064 * xterm.c (x_term_init): Work around a bug in some X servers.
1065
10662004-09-18 Richard M. Stallman <rms@gnu.org>
1067
1068 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
1069
1070 * xdisp.c (try_window_reusing_current_matrix):
1071 Handle the case where we reach the old displayed text,
1072 out of sync with the old line boundary.
1073
10742004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
1075
1076 * fileio.c (Finsert_file_contents): Fix case of replacement in a
1077 narrowed buffer.
1078
10792004-09-14 Kim F. Storm <storm@cua.dk>
1080
1081 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
1082
1083 * xfaces.c (Qface_no_inherit): New var.
1084 (syms_of_xfaces): Intern and staticpro it.
1085 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
1086 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
1087 Don't increment face_change_count when face has non-nil
1088 face-no-inherit property.
1089
10902004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
1091
1092 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
1093 (Fbyte_code): Remove dead code after `wrong_type_argument'.
1094
1095 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
1096 before doing the mark_stack_check_gcpros since they're not on the stack.
1097
10982004-09-12 Kim F. Storm <storm@cua.dk>
1099
1100 * editfns.c (Fformat): Handle format strings with multiple text
1101 properties. Reverse text property list from the format string,
1102 so the positions are in increasing order.
1103
11042004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1105
1106 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
1107 x_uncatch_errors so that possible protocol errors are delivered.
1108
11092004-09-10 Eli Zaretskii <eliz@gnu.org>
1110
1111 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
1112 blockinput.h.
1113 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
1114 charset.h, and coding.h
1115 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
1116 (term.o): Depend on window.h and keymap.h.
1117 (abbrev.o): Depend on syntax.h.
1118 (callint.o): Depend on keymap.h.
1119 (casefiddle.o): Depend on charset.h and keymap.h.
1120 (category.o): Depend on keymap.h.
1121 (coding.o): Depend on dispextern.h.
1122 (cmds.o): Depend on keyboard.h and keymap.h.
1123 (dispnew.o): Depend on indent.h and intervals.h.
1124 (doc.o): Depend on keymap.h.
1125 (editfns.o): Depend on frame.h.
1126 (emacs.o): Depend on dispextern.h.
1127 (fileio.o): Don't depend on ccl.h.
1128 (filelock.o): Depend on charset.h and coding.h.
1129 (frame.o): Depend on w32term.h and macterm.h.
1130 (insdel.o): Depend on region-cache.h.
1131 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
1132 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
1133 (search.o): Depend on $(INTERVALS_SRC).
1134 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
1135 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
1136 xterm.h, w32term.h, and macterm.h.
1137 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
1138 w32term.h, and macterm.h.
1139 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
1140 region-cache.h, xterm.h, w32term.h, and macterm.h.
1141 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
1142 (data.o): Depend on frame.h.
1143 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
1144 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
1145 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
1146 (intervals.o): Depend on keymap.h.
1147
1148 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
1149 Add debugging print-out to termscript.
1150
11512004-09-09 Richard M. Stallman <rms@gnu.org>
1152
1153 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
1154
11552004-09-08 Richard M. Stallman <rms@gnu.org>
1156
1157 * window.c (Fset_window_buffer): Doc fix.
1158
1159 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
1160
11612004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
1162
1163 * minibuf.c (history_delete_duplicates): New variable.
1164 (read_minibuf): Use it.
1165 (syms_of_minibuf): Create the corresponding lisp variable.
1166
11672004-09-08 Kim F. Storm <storm@cua.dk>
1168
1169 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
1170 overlay just before point.
1171
11722004-09-07 Luc Teirlinck <teirllm@auburn.edu>
1173
1174 * buffer.h (struct buffer): Add auto_save_file_format field.
1175 * buffer.c (reset_buffer, init_buffer_once):
1176 Handle auto_save_file_format field.
1177 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
1178 `buffer-auto-save-file-format'.
1179 * fileio.c: Delete declaration for removed Vauto_save_file_format.
1180 (build_annotations): Adapt to replacement of
1181 `auto-save-file-format' with the new buffer-local variable
1182 `buffer-auto-save-file-format'.
1183 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
1184
11852004-09-07 Jason Rumney <jasonr@gnu.org>
1186
1187 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
1188
1189 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
1190 Handle Unicode menu titles.
1191
11922004-09-07 Kim F. Storm <storm@cua.dk>
1193
1194 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
1195 property from text property or overlay strings at point.
1196
11972004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1198
1199 * xmenu.c (update_submenu_strings): YAILOM.
1200 (set_frame_menubar): Make sure last_i is initialized.
1201
12022004-09-03 Jason Rumney <jasonr@gnu.org>
1203
1204 * w32menu.c (_widget_value): Add lname and lkey.
1205 (digest_single_submenu): Set lname and lkey in widget_value
1206 instead of name and key.
1207 (update_submenu_strings): New function.
1208 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1209 call update_submenu_strings.
1210
1211 * w32menu.c (globals_of_w32menu): Check for Unicode API.
1212 (digest_single_submenu, w32_menu_show): Encode menu strings as
1213 UTF-8 if Unicode API is available.
1214 (utf8to16): New function.
1215 (add_menu_item): Use it when calling Unicode API.
1216
12172004-09-03 Kim F. Storm <storm@cua.dk>
1218
1219 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
1220 in overlay or text-property strings; set cursor on corresponding
1221 glyph rather than at end of the string.
1222
12232004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1224
1225 * macfns.c (x_real_positions): Save the current window port and
1226 set a new one before obtaining the global coordinate.
1227 Use FRAME_MAC_WINDOW.
1228 (x_set_name, x_set_title): Encode title to UTF8.
1229 Use SetWindowTitleWithCFString.
1230 (Fx_server_version): Get correct OS version.
1231
1232 * macmenu.c (add_menu_item): Remove unused variable `i'.
1233 Don't let separator items destroy refence constants of other menu items.
1234
1235 * macterm.c (x_update_end): Move SetPortWindowPort to inside
1236 BLOCK_INPUT.
1237 (x_set_offset): Use FRAME_MAC_WINDOW.
1238
1239 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
1240 nontext_cursor if it is on a scroll bar.
1241
1242 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
1243 Carbon support.
1244 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
1245 Use LIBS_CARBON.
1246
12472004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1248
1249 * xfns.c (x_set_name_internal): New function. Check if we shall call
1250 xfree before ENCODE_UTF_8.
1251 (x_set_name, x_set_title): Call x_set_name_internal.
1252
12532004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
1254
1255 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
1256 reload it.
1257
12582004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1259
1260 * macmenu.c (_widget_value): Add lname and lkey.
1261 (single_submenu): Set lname and lkey in widget_value
1262 instead of name and key.
1263 (update_submenu_strings): New function.
1264 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1265 call update_submenu_strings.
1266
1267 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
1268 instead of name and key.
1269 (update_submenu_strings): New function.
1270 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1271 call update_submenu_strings.
1272
1273 * gtkutil.h (_widget_value): Added lname and lkey.
1274
12752004-08-30 Steven Tamm <steventamm@mac.com>
1276
1277 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
1278 by using different names for inner loop variables.
1279
12802004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1281
1282 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
1283 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
1284
1285 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
1286 tool bar items is 0.
1287
12882004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1289
1290 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
1291 strings in menu items.
1292 (single_submenu): Use ENCODE_MENU_STRING
1293 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
1294 button release isn't passed to event loop
1295 (add_menu_item): Use SetMenuItemWithCFString
1296
12972004-08-26 Steven Tamm <steventamm@mac.com>
1298
1299 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
1300 tool-bar/menu click
1301 * macfns.c (Fx_file_dialog): Implemented using NavServices
1302
13032004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1304
1305 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
1306
1307 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1308 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1309 (x_top_window_to_frame): Return 0 if wdesc is None.
1310
13112004-08-22 Richard M. Stallman <rms@gnu.org>
1312
1313 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
1314 HAVE_TERMIOS]: If there's no char for this signal, drop through
1315 and use system calls.
1316
1317 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
1318
13192004-08-20 Kim F. Storm <storm@cua.dk>
1320
1321 * process.c (wait_reading_process_output): Rename from
1322 wait_reading_process_input. All uses changed.
1323 (wait_reading_process_output_1): Rename from
1324 wait_reading_process_input_1. All uses changed.
1325
1326 * dispnew.c (Fsleep_for): Remove obsolete code.
1327
13282004-08-20 Kenichi Handa <handa@m17n.org>
1329
1330 * syntax.c (skip_chars): Fix for unibyte case.
1331
13322004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1333
1334 * syntax.c (char_quoted): Mixup byte/char pos.
1335 (back_comment): Fixup globals in all cases.
1336
13372004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1338
1339 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
1340 passing it to gtk_window_set_title.
1341
13422004-08-19 Kim F. Storm <storm@cua.dk>
1343
1344 * process.c (wait_reading_process_input): Clean up.
1345 Add wait_for_cell, wait_proc, and just_wait_proc args
1346 to avoid overloading `read_kbd' and `do_display' args.
1347 Change read_kbd arg to int. All callers changed.
1348
1349 * process.c (process_send_signal): Use CDISABLE.
1350
1351 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
1352
13532004-08-18 Kim F. Storm <storm@cua.dk>
1354
1355 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
1356 forward to wait_reading_process_input via DO_DISPLAY arg.
1357 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
1358 object, only process output from that process; also inhibit
1359 running timers if DO_DISPLAY==-2.
1360
13612004-08-17 Kim F. Storm <storm@cua.dk>
1362
1363 * process.c (process_send_signal): Fix last change--use
1364 _POSIX_VDISABLE instead of CVDISABLE when available.
1365
13662004-08-16 Richard M. Stallman <rms@gnu.org>
1367
1368 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
1369 Set VQUIT and VINTR chars to the standard ones if they are unset.
1370 [AIX]: Don't do that here. And don't force VINTR to standard
1371 when SIGNALS_VIA_CHARACTERS.
1372
1373 * process.c (process_send_signal)
1374 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
1375 Do nothing if the character is CVDISABLE.
1376
1377 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
1378
1379 * intervals.c (move_if_not_intangible):
1380 Force POSITION to be between BEGV and ZV.
1381
13822004-08-14 John Paul Wallington <jpw@gnu.org>
1383
1384 * buffer.c (Frestore_buffer_modified_p): Doc fix.
1385
1386 * fileio.c (Fread_file_name): Doc fix.
1387
1388 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1389
13902004-08-09 Luc Teirlinck <teirllm@auburn.edu>
1391
1392 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
1393
13942004-08-08 Luc Teirlinck <teirllm@auburn.edu>
1395
1396 * keyboard.c: Declare Qdisabled_command_function instead of
1397 Qdisabled_command_hook.
1398 (Fcommand_execute): Use Qdisabled_command_function instead of
1399 Qdisabled_command_hook.
1400 (syms_of_keyboard): Ditto.
1401
14022004-08-07 Luc Teirlinck <teirllm@auburn.edu>
1403
1404 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
1405 (syms_of_keymap) <key-translation-map>: Doc fixes.
1406
14072004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
1408
1409 * window.c (window_list_1): YAILOM.
1410
1411 * fileio.c (make_temp_name): Handle multibyte prefixes.
1412
14132004-08-06 Luc Teirlinck <teirllm@auburn.edu>
1414
1415 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
1416 Doc fix.
1417
14182004-08-03 Kenichi Handa <handa@m17n.org>
1419
1420 * coding.c (decode_coding_string): Adjust coding->consumed, and
1421 etc. with shrinked_bytes.
1422
14232004-08-03 Kim F. Storm <storm@cua.dk>
1424
1425 * indent.c (compute_motion): Fix check for full width window
1426 in non-window case. Do not count left truncation glyph on
1427 window systems.
1428
14292004-08-02 Luc Teirlinck <teirllm@auburn.edu>
1430
1431 * data.c (Finteractive_form): Doc fix.
1432
14332004-08-02 Kim F. Storm <storm@cua.dk>
1434
1435 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
1436 properly accounting for continuation glyph on non-window systems.
1437 (Fcompute_motion): Use actual window width if WIDTH is nil, and
1438 actual window width/height if TOPOS is nil, properly accounting for
1439 continuation glyphs on non-window systems, and optional header lines.
1440 (vmotion): Let compute_motion calculate actual window width.
1441
1442 * window.c (window_scroll_line_based): Let compute_motion
1443 calculate actual window width.
1444
14452004-08-02 Kim F. Storm <storm@cua.dk>
1446
1447 * process.c (read_process_output): Use whole read buffer.
1448 Don't trigger adaptive read buffering on errors.
1449
14502004-07-31 Luc Teirlinck <teirllm@auburn.edu>
1451
1452 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
1453
1454 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
1455
1456 * callint.c (Fcall_interactively): Doc fix.
1457
14582004-07-30 Richard M. Stallman <rms@gnu.org>
1459
1460 * abbrev.c (Fexpand_abbrev): Undo previous change.
1461
14622004-07-30 Kim F. Storm <storm@cua.dk>
1463
1464 * editfns.c (Fformat): Allocate extra (dummy) element in info.
1465
14662004-07-28 Luc Teirlinck <teirllm@auburn.edu>
1467
1468 * eval.c (Fdefvar, Fdefconst): Doc fixes.
1469
14702004-07-27 Kim F. Storm <storm@cua.dk>
1471
1472 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
1473 we have ensured that the glyph fits on the current line (or returned
1474 MOVE_LINE_CONTINUED otherwise).
1475
14762004-07-26 Kim F. Storm <storm@cua.dk>
1477
1478 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
1479 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
1480 if target position is at end of display line but char is not a newline.
1481
14822004-07-25 Richard M. Stallman <rms@gnu.org>
1483
1484 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
1485 instead of ON_VERTICAL_BORDER, when on scroll bar.
1486 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
1487
1488 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
1489
1490 * window.c (Fcoordinates_in_window_p):
1491 Take account of FRAME_INTERNAL_BORDER_WIDTH.
1492
1493 * alloc.c (check_cons_list): New function (contents commented out).
1494
14952004-07-24 Luc Teirlinck <teirllm@auburn.edu>
1496
1497 * xfaces.c (Fcolor_supported_p): Doc fix.
1498
1499 * frame.c (Fselect_frame, Fset_frame_selected_window)
1500 (Fframe_visible_p, Fraise_frame): Doc fixes.
1501
15022004-07-24 Richard M. Stallman <rms@gnu.org>
1503
1504 * keyboard.h (not_single_kboard_state): Declare.
1505
1506 * fileio.c (Fwrite_region): Doc fix.
1507
1508 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
1509
1510 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
1511 only when a real abbrev is present.
1512
1513 * xfns.c (x_icon_verify): New function.
1514 (Fx_create_frame): Use it.
1515
15162004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
1517
1518 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
1519
15202004-07-21 Kim F. Storm <storm@cua.dk>
1521
1522 * window.h (struct glyph_matrix): New members nrows_scale_factor
1523 and ncols_scale_factor.
1524
1525 * window.c (make_window): Initialize nrows_scale_factor and
1526 ncols_scale_factor members.
1527
1528 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
1529 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
1530 (required_matrix_height): Apply nrows_scale_factor.
1531 (required_matrix_width): Apply ncols_scale_factor.
1532
1533 * xdisp.c (display_line): Increment nrows_scale_factor and set
1534 fonts_changed_p if past last allocated row.
1535 (append_glyph, append_composite_glyph, produce_image_glyph)
1536 (append_stretch_glyph): Increment ncols_scale_factor and set
1537 fonts_changed_p if current area is full.
1538
15392004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1540
1541 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
1542
15432004-07-19 Luc Teirlinck <teirllm@auburn.edu>
1544
1545 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
1546 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
1547 (Fset_window_start, Fscroll_up, Fscroll_down)
1548 (Fother_window_for_scrolling, Fscroll_other_window)
1549 (Fsave_window_excursion, Fset_window_vscroll)
1550 (syms_of_window) <window-size-fixed>: Doc fixes.
1551
15522004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1553
1554 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
1555 ENCODE_SYSTEM for filenames.
1556
15572004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1558
1559 * mac.c (sys_select): Block input around call to
1560 ReceiveNextEvent to prevent breakage. Correctly handle
1561 blocking on event queue only by calling ReceiveNextEvent
1562 instead of select (since GUI events aren't on an fd).
1563 (sys_read): Remove function
1564 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
1565
15662004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1567
1568 * mac.c (sys_select): Redo sys_select to use alarm-based
1569 polling instead of 1 sec timeouts (like solaris).
1570
1571 * macterm.c (x_make_frame_visible): Comment in polling on
1572 frame creation.
1573
1574 * keyboard.c: Undef SIGIO on Carbon
1575
1576 * atimer.c (alarm_signal_handler): Call alarm handlers after
1577 scheduling.
1578
1579 * eval.c (Feval): Remove quit_char test
1580
1581 * process.c (wait_reading_process_input): Remove clearing
1582 stdin for select call on process input.
1583
15842004-07-18 Luc Teirlinck <teirllm@auburn.edu>
1585
1586 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
1587 capitalization error in docstring.
1588
15892004-07-17 Juanma Barranquero <lektu@terra.es>
1590
1591 * keyboard.c (not_single_kboard_state): Do nothing unless
1592 MULTI_KBOARD is defined.
1593
15942004-07-17 Richard M. Stallman <rms@gnu.org>
1595
1596 * window.c (coordinates_in_window): Inside the window but outside
1597 its box to the L or R, return ON_VERTICAL_BORDER.
1598 (window_list_1): Rotate the list to start with WINDOW.
1599
1600 * print.c (print_preprocess): Test for print_depth at limit
1601 before entering in being_printed.
1602
1603 * keyboard.c (not_single_kboard_state): New function.
1604 (stuff_buffered_input): Now no-op only if no SIGTSTP.
1605
1606 * frame.c (Fdelete_frame): If we're in single_bboard_state on
1607 this kboard, and we delete its last frame, go to any_kboard_state.
1608
1609 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
1610
16112004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1612
1613 * w32fns.c (Fx_file_dialog): Encode strings in system coding
1614 system before passing them to OS functions for display.
1615
16162004-07-15 David Kastrup <dak@gnu.org>
1617
1618 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
1619 Apparently fixes an abort condition.
1620
16212004-07-14 Luc Teirlinck <teirllm@auburn.edu>
1622
1623 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
1624 instead of a cons.
1625
16262004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
1627
1628 * keyboard.c (echo_dash): Do nothing if there already is a dash
1629 at the end of the echo string.
1630
16312004-07-12 Kim F. Storm <storm@cua.dk>
1632
1633 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
1634 if GC_MARK_STACK.
1635
16362004-07-10 Luc Teirlinck <teirllm@auburn.edu>
1637
1638 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
1639
1640 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
1641 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
1642 (Freplace_buffer_in_windows, Fset_window_buffer)
1643 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
1644 (syms_of_window): Expand docstring of `display-buffer-function'.
1645
16462004-07-09 Luc Teirlinck <teirllm@auburn.edu>
1647
1648 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
1649 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
1650 that time values of the type (HIGH . LOW) are considered obsolete.
1651
16522004-07-06 Luc Teirlinck <teirllm@auburn.edu>
1653
1654 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
1655 docstring.
1656
1657 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
1658
16592004-07-06 John Paul Wallington <jpw@gnu.org>
1660
1661 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
1662
1663 * fns.c (Fclear_string): Signal an error if STRING is not a string.
1664
16652004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1666
1667 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
1668 instead of CGMainDisplayID (only in OSX 10.2 and later).
1669
16702004-07-04 John Paul Wallington <jpw@gnu.org>
1671
1672 * fileio.c (read_file_name_completion_ignore_case): New variable.
1673 (syms_of_fileio): Declare and initialise it.
1674 (Fread_file_name): Bind `completion-ignore-case' to respect it.
1675
16762004-07-03 Eli Zaretskii <eliz@gnu.org>
1677
1678 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
1679 for event.x and event.y.
1680
16812004-07-01 Kenichi Handa <handa@m17n.org>
1682
1683 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
1684 after getting a new string by pre-write-conversion.
1685
16862004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
1687
1688 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
1689 (x_calc_absolute_position): Remove unused var `child'.
1690
1691 * xfaces.c (x_supports_face_attributes_p)
1692 (Fdisplay_supports_face_attributes_p): YAILOM.
1693 (tty_supports_face_attributes_p): Remove unused var `i'.
1694
1695 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
1696 back_unibyte_ok.
1697
1698 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
1699
1700 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
1701
1702 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
1703
17042004-06-30 Andreas Schwab <schwab@suse.de>
1705
1706 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
1707 (Finit_image_library): Pass LIBRARIES through to
1708 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
1709 (lookup_image_type): Pass Qnil as second argument to
1710 Finit_image_library.
1711
1712 * lisp.h (Finit_image_library): Declare.
1713
17142004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1715
1716 * macterm.c (do_window_activate, do_window_deactivate): Remove.
1717 (XTread_socket): Send mouse button events to the toolbox
1718 dispatcher even when the mouse is grabbed. Don't process window
1719 activate events for non-Emacs windows. Replace function calls to
1720 do_window_activate and do_window_deactivate with their contents.
1721 Reset mouse grabbing status when a window is deactivated.
1722
17232004-06-29 Steven Tamm <steventamm@mac.com>
1724
1725 * macterm.c (mac_get_emulated_btn)
1726 (mac_event_to_emacs_modifiers): Fix emulated mouse button
1727 support to correctly mask out modifiers.
1728
17292004-06-29 David Kastrup <dak@gnu.org>
1730
1731 * search.c (Fset_match_data): Allow buffer before end of list
1732 which can happen if set-match-data is using a pre-consed list.
1733
17342004-06-28 Steven Tamm <steventamm@mac.com>
1735
1736 * macterm.c (XTread_socket): Correctly set the frame position
1737 after the window is moved.
1738
17392004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1740
1741 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
1742 gpix and gmask just before return to avoid memory leak.
1743 (xg_get_image_for_pixmap): Add workaround for monochrome displays
1744 so insensitive and activated icons look ok.
1745
17462004-06-27 Jason Rumney <jasonr@gnu.org>
1747
1748 * w32fns.c (file_dialog_callback): Disable edit control if set
1749 to directories only on CDN_INITDONE message.
1750 (Fx_file_dialog): Default to directories only when prompt starts
1751 with "Dired".
1752
17532004-06-25 Kim F. Storm <storm@cua.dk>
1754
1755 * alloc.c (allocate_misc): Update total_free_markers.
1756 (free_misc): New function.
1757 (safe_alloca_unwind, free_marker): Use it.
1758
1759 * lisp.h (free_misc): Add prototype.
1760
1761 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
1762
17632004-06-24 Richard M. Stallman <rms@gnu.org>
1764
1765 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
1766 (syms_of_emacs): Lisp variables deleted.
1767
17682004-06-23 David Kastrup <dak@gnu.org>
1769
1770 * search.c (Freplace_match): Adjust the match-data more thoroughly
1771 when replacing strings in the buffer.
1772 (Fmatch_data): When INTEGERS is non-nil and the last match was in
1773 a buffer, add the buffer as last element to the match data.
1774 (Fset_match_data): If an additional element of the match-data is a
1775 buffer, restore it to last_thing_searched.
1776 (save_search_regs): Save last_thing_searched as part of the match data.
1777 (restore_match_data): Restore it again.
1778
17792004-06-23 Luc Teirlinck <teirllm@auburn.edu>
1780
1781 * keymap.c (Ftext_char_description): Doc fix.
1782 * doc.c (Fsnarf_documentation): Doc fix.
1783
17842004-06-22 Kim F. Storm <storm@cua.dk>
1785
1786 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
1787
1788 * lisp.h (struct Lisp_Save_Value): New member dogc.
1789 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
1790 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
1791 (SAFE_FREE_LISP): New macro.
1792
1793 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
1794 (make_save_value): Init new dogc member.
1795 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
1796
1797 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
1798 SAFE_FREE_LISP macros.
1799
18002004-06-22 Kim F. Storm <storm@cua.dk>
1801
1802 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
1803 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
1804 in that memory area are unknown to GC. Add comments.
1805
1806 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
1807
18082004-06-21 Kim F. Storm <storm@cua.dk>
1809
1810 * lisp.h (MAX_ALLOCA): Define here.
1811 (safe_alloca_unwind): Add prototype.
1812 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1813
1814 * alloc.c (safe_alloca_unwind): New function.
1815
1816 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1817
1818 * charset.c (Fstring): Use SAFE_ALLOCA.
1819
1820 * coding.c (MAX_ALLOCA): Remove define.
1821
1822 * data.c (MAX_ALLOCA): Remove define.
1823 (Faset): Use SAFE_ALLOCA.
1824
1825 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1826
1827 * fns.c (string_make_multibyte, string_to_multibyte)
1828 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1829 (MAX_ALLOCA): Remove define.
1830 (Fbase64_encode_region, Fbase64_encode_string)
1831 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1832 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1833 memory leak if encoding fails.
1834
1835 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1836
18372004-06-21 Eli Zaretskii <eliz@gnu.org>
1838
1839 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1840
18412004-06-20 Richard M. Stallman <rms@gnu.org>
1842
1843 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1844
1845 * search.c (match_limit): Cleaner err msg when no match data available.
1846
1847 * window.c (syms_of_window): Doc fix.
1848
1849 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1850 for Vtransient_mark_mode.
1851
1852 * buffer.c (syms_of_buffer): Doc fix.
1853
18542004-06-21 David Kastrup <dak@gnu.org>
1855
1856 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1857 and unbinding of `case-fold-search' according to
1858 `completion-ignore-case' around calls of string-match and
1859 predicates, respectively. Should give satisfactory performance
1860 in all relevant cases.
1861
18622004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1863
1864 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1865 clip_x/y_origin.
1866
1867 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1868
1869 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1870
1871 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1872 on Mac OSX.
1873
18742004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1875
1876 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1877
18782004-06-16 Kim F. Storm <storm@cua.dk>
1879
1880 * dispextern.h (Vimage_types): Remove extern.
1881
18822004-06-16 Miles Bader <miles@gnu.org>
1883
1884 * image.c (lookup_image_type): Initialize image type if necessary.
1885
18862004-06-15 Kim F. Storm <storm@cua.dk>
1887
1888 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1889 margin at top of window.
1890 (try_window_reusing_current_matrix): Calculate proper cursor position
1891 after scrolling up with non-zero scroll margin, as the old cursor
1892 position corresponds to value of PT before executing this command.
1893 (try_window_id): Consider scroll margin at bottom of window too;
1894 otherwise we fail to scroll when hl-line-mode is enabled.
1895
1896 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1897 proper format and class is a lower-case word.
1898
18992004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1900
1901 * gtkutil.c (xg_get_image_for_pixmap): New function.
1902 (xg_get_gdk_pixmap_and_mask): Remove.
1903 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1904 xg_get_gdk_pixmap_and_mask.
1905
1906 * xterm.h (struct x_display_info): Typo in comment fixed.
1907
19082004-06-14 Juanma Barranquero <lektu@terra.es>
1909
1910 * dispextern.h (Vimage_types): Make it conditional on
1911 HAVE_WINDOW_SYSTEM.
1912
1913 * image.c (Vimage_types): Move from xdisp.c.
1914 (Vimage_type_cache): New variable.
1915 (define_image_type): New argument indicating whether an image
1916 library was loaded; cache loaded status and return t on success,
1917 nil otherwise.
1918 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1919 (w32_delayed_load): New function to load an image library from a
1920 list of possible filenames.
1921 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1922 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
1923 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1924 (Finit_image_library): New function, extracted from `init_image'.
1925 Try to initialize an image library on demand and cache whether we
1926 were successful or not.
1927 (syms_of_image): Initialize `Vimage_types' and
1928 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1929 Export `init-image-library'.
1930 (init_image): Remove initialization of all image types, except xbm
1931 and pbm.
1932
1933 * xdisp.c (Vimage_types): Delete (moved to image.c).
1934
19352004-06-14 Andreas Schwab <schwab@suse.de>
1936
1937 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1938 Avoid calling specbind when completion-regexp-list is empty.
1939
19402004-06-13 Richard M. Stallman <rms@gnu.org>
1941
1942 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1943 (re_wctype, re_iswctype, re_wctype_to_bit):
1944 Non-function definitions moved here from regex.c.
1945
1946 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1947 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1948 (re_wctype, re_iswctype, re_wctype_to_bit):
1949 Non-function definitions moved to regex.h.
1950
1951 * window.c (Fselect_window): Doc fix.
1952
1953 * syntax.c: Include regex.h.
1954 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1955 If requested, make a list of classes, then check the scanned
1956 chars for membership in them.
1957 (in_classes): New function.
1958 Doc fix.
1959
1960 * keyboard.c (cmd_error): Don't call any_kboard_state
1961 if inside a recursive edit level.
1962
19632004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1964
1965 * keyboard.c (command_loop): Call any_kboard_state before
1966 command_loop_2 when at top level.
1967
19682004-06-13 Andreas Schwab <schwab@suse.de>
1969
1970 * print.c (print_object): Always use %ld for printing EMACS_INT.
1971
1972 * keyboard.c (cancel_hourglass_unwind): Return a value.
1973 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1974 (Fexecute_extended_command): Likewise.
1975
1976 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1977 avoid clashes.
1978 (SYNTAX): Likewise.
1979 (SYNTAX_WITH_FLAGS): Likewise.
1980 (SYNTAX_MATCH): Likewise.
1981
1982 * syntax.c (char_quoted): Avoid warning about undefined operation.
1983 (find_defun_start): Likewise.
1984 (scan_lists): Likewise.
1985 (INC_FROM): Likewise.
1986 (scan_sexps_forward): Likewise.
1987
1988 * image.c: Include <ctype.h>.
1989
1990 * xfaces.c (face_attr_equal_p): Declare parameters.
1991
19922004-06-13 Kenichi Handa <handa@m17n.org>
1993
1994 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1995
19962004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1997
1998 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1999
20002004-06-12 Kenichi Handa <handa@m17n.org>
2001
2002 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
2003 ccl_prog_stack_struct and update it.
2004 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
2005 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
2006 ccl->eof_ic on EOF.
2007 (ccl_debug_hook): New function.
2008 (struct ccl_prog_stack): New member eof_ic.
2009 (ccl_driver): Handle EOF in subrountine call correctly.
2010
20112004-06-11 Kenichi Handa <handa@m17n.org>
2012
2013 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
2014
20152004-06-11 Kim F. Storm <storm@cua.dk>
2016
2017 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
2018
20192004-06-11 Juanma Barranquero <lektu@terra.es>
2020
2021 * keyboard.c (Fposn_at_point): Doc fix.
2022
20232004-06-11 David Kastrup <dak@gnu.org>
2024
2025 * search.c (match_limit): Don't flag an error if match-data
2026 exceeding the allocated search_regs.num_regs gets requested, just
2027 return Qnil.
2028
20292004-06-08 Miles Bader <miles@gnu.org>
2030
2031 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
2032
20332004-06-07 Juanma Barranquero <lektu@terra.es>
2034
2035 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
2036 (Fcurrent_time_string, Fcurrent_time_zone)
2037 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
2038
20392004-06-07 Miles Bader <miles@gnu.org>
2040
2041 * xfaces.c (struct named_merge_point): New type.
2042 (push_named_merge_point): New function.
2043 (merge_named_face): New function.
2044 (merge_face_ref, face_at_buffer_position, face_at_string_position):
2045 Use `merge_named_face'.
2046 (merge_face_inheritance): Function removed.
2047 (merge_face_ref): Rename from `merge_face_vector_with_property'.
2048 Add new `err_msgs' and `named_merge_points' args. Return error
2049 status. Only print error messages if ERR_MSGS is true. Don't try to
2050 do :inherit attribute validation.
2051 (merge_face_heights): Handle `unspecified' in both directions.
2052 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
2053 Call `merge_face_ref' instead of `merge_face_inheritance'.
2054 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
2055 (compute_char_face, face_at_buffer_position)
2056 (face_at_string_position): Call `merge_face_ref' instead of
2057 `merge_face_vector_with_property'.
2058
20592004-06-07 Kenichi Handa <handa@m17n.org>
2060
2061 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
2062 the necessary places.
2063
20642004-06-07 Kim F. Storm <storm@cua.dk>
2065
2066 * process.c (Fdelete_process): Undo 2004-05-28 change.
2067 Instead, call status_notify also for network process.
2068 (status_message): Use process instead of status as arg.
2069 Give messages "deleted" or "connection broken by remote peer" for
2070 an exited network process.
2071 (status_notify): Change call to status_message.
2072 (read_process_output): Increase readmax to 4096. Do not increase
2073 buffer size for datagram channels (default is now large enough).
2074
20752004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2076
2077 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
2078 problem due to newly defined variable.
2079
20802004-06-06 Miles Bader <miles@gnu.org>
2081
2082 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
2083 immediately if non-interactive or not initialized.
2084
20852004-06-05 Richard M. Stallman <rms@gnu.org>
2086
2087 * minibuf.c (Fcompleting_read): Doc fix.
2088
20892004-06-05 Andreas Schwab <schwab@suse.de>
2090
2091 * macfns.c (x_create_tip_frame): Fix declaration after statement.
2092
20932004-06-05 Juanma Barranquero <lektu@terra.es>
2094
2095 * keymap.c (Fdescribe_vector): Fix docstring.
2096 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
2097
20982004-06-05 Miles Bader <miles@gnu.org>
2099
2100 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
2101 attributes have different values than the default face.
2102
21032004-06-04 Eli Zaretskii <eliz@gnu.org>
2104
2105 * xfaces.c (x_supports_face_attributes_p): Make this function
2106 conditional on HAVE_WINDOW_SYSTEM.
2107 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
2108 Don't call x_supports_face_attributes_p if it was not compiled in.
2109
21102004-06-04 Miles Bader <miles@gnu.org>
2111
2112 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
2113 from Ftty_supports_face_attributes_p.
2114 (x_supports_face_attributes_p): New function.
2115 (Ftty_supports_face_attributes_p): Function deleted.
2116 (Fdisplay_supports_face_attributes_p): New function.
2117 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
2118 (face_attr_equal_p): New function.
2119 (lface_equal_p): Use it.
2120
21212004-06-03 Juanma Barranquero <lektu@terra.es>
2122
2123 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
2124 (Vw32_color_map): Fix typo in docstring.
2125 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
2126 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
2127 Make argument names match their use in docstring.
2128
21292004-06-02 Juanma Barranquero <lektu@terra.es>
2130
2131 Work around bugs/problems with MinGW builds of graphics libraries
2132 called from MSVC builds of Emacs.
2133
2134 * image.c (lookup_image): Make pointer to img static.
2135 (png_read_from_memory): Disable "global" optimization.
2136
21372004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
2138
2139 * eval.c (Fcondition_case): Fix usage. Simplify.
2140
2141 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
2142
21432004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2144
2145 * macfns.c: Don't include ccl.h.
2146 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
2147 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
2148 TextUtils.h.
2149 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
2150 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
2151 display height/width.
2152 (compute_tip_xy, Vx_max_tooltip_size): Declare.
2153 (unwind_create_tip_frame, compute_tip_xy): New functions.
2154 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
2155 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
2156 and last_show_tip_args.
2157
2158 * macgui.h [!MAC_OSX]: Include Gestalt.h.
2159 (Cursor, No_Cursor): New defines.
2160 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
2161 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
2162
2163 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
2164
2165 * macterm.c: Don't include Gestalt.h.
2166 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
2167 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
2168 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
2169 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
2170 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
2171 (construct_mouse_click, XTmouse_position)
2172 (x_scroll_bar_report_motion, x_calc_absolute_position)
2173 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
2174 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
2175 (note_mouse_movement): Clear the mouse face and reset the pointer
2176 shape when the pointer goes outside the frame without grabbing.
2177 (mac_front_window): New function.
2178 (mac_window_to_frame): New macro.
2179 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
2180 (do_window_activate, do_window_deactivate, do_app_resume)
2181 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
2182 (do_zoom_window, mac_do_receive_drag, XTread_socket)
2183 (mac_check_for_quit_char): Use mac_front_window and/or
2184 mac_window_to_frame.
2185 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
2186 scroll-bar click event.
2187 (mac_define_frame_cursor): Change the pointer shape.
2188 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
2189 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
2190 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
2191 (do_window_update): Don't do anything if the updated window is the
2192 tooltip window.
2193 (do_mouse_moved): Handle mouse movement events here (previously in
2194 XTread_socket). Clear the mouse face if
2195 dpyinfo->mouse_face_hidden is set.
2196 (do_os_event, do_events): Remove (now in XTread_socket).
2197 (XTread_socket): Immediately return if interrupt_input_blocked.
2198 Loop until all the events in the queue are processed.
2199 Rearrange codes for mouse grabbing. Add tooltip support. Include the
2200 contents of do_os_event and do_events. Remove mouse movement
2201 handling (now in do_mouse_moved). Add the case where
2202 Vmouse_highlight has an integer value.
2203 (NewMacWindow): Remove.
2204 (make_mac_frame): Do what NewMacWindow previously did. Don't do
2205 excess initializations.
2206 (make_mac_terminal_frame): Previous initializations in
2207 make_mac_frame are moved here.
2208 (mac_initialize_display_info):
2209 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
2210
2211 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
2212 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
2213
22142004-05-29 Richard M. Stallman <rms@gnu.org>
2215
2216 * lisp.h (truncate_undo_list): Update decl.
2217
2218 * alloc.c (undo_outer_limit): New variable.
2219 (syms_of_alloc): Defvar it.
2220 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
2221
2222 * undo.c (truncate_undo_list): New arg LIMITSIZE.
2223
2224 * alloc.c (lisp_align_malloc): Check for base == 0
2225 regardless of HAVE_POSIX_MEMALIGN.
2226 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
2227
22282004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2229
2230 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
2231 (marker_blocks_pending_free): Remove.
2232 (Fgarbage_collect): Sweep after cleaning up undo-lists.
2233 Mark the undo lists after claning them up.
2234 Don't free block in marker_blocks_pending_free.
2235 (mark_buffer): Don't mark undo_list.
2236 (gc_sweep): Sweep hash-tables and strings first.
2237 Do free marker blocks that are empty.
2238
22392004-05-28 Jim Blandy <jimb@redhat.com>
2240
2241 * regex.c (print_partial_compiled_pattern): Add missing 'break'
2242 after 'case wordend'. For symbeg and symend, print to stderr,
2243 like the other cases.
2244
22452004-05-28 Noah Friedman <friedman@splode.com>
2246
2247 * process.c (Fdelete_process): Do not call remove_process.
2248
22492004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2250
2251 * alloc.c (struct backtrace): Remove.
2252 (Fgarbage_collect): Use the new mark_backtrace.
2253
2254 * eval.c (mark_backtrace): New function.
2255
2256 * minibuf.c (run_exit_minibuf_hook): New function.
2257 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
2258 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
2259
22602004-05-27 Kim F. Storm <storm@cua.dk>
2261
2262 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
2263 over display properties, e.g. images, that replace buffer text.
2264
22652004-05-25 Kim F. Storm <storm@cua.dk>
2266
2267 * alloc.c (marker_blocks_pending_free): New var.
2268 (gc_sweep): Store free marker blocks on that list.
2269 (Fgarbage_collect): Free them after undo-list cleanup.
2270
2271 * process.c (wait_reading_process_input): Check connect_wait_mask
2272 before actually accepting connection in case it has already been
2273 accepted due to recursion.
2274
22752004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
2276
2277 * coding.c (Fset_safe_terminal_coding_system_internal):
2278 Set suppress_error in safe_terminal_coding, not terminal_coding.
2279
22802004-05-22 Richard M. Stallman <rms@gnu.org>
2281
2282 * alloc.c (Fmake_string): Doc fix.
2283
2284 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
2285 and the alist pairs too.
2286
2287 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
2288
2289 * emacs.c (main): Update copyright year.
2290
2291 * fileio.c (Fread_file_name): Expand DIR if not absolute.
2292
2293 * insdel.c (del_range_2, replace_range): Don't write an anchor
2294 if the gap is empty.
2295
2296 * xdisp.c (try_scrolling): If scroll-up-aggressively or
2297 scroll-down-aggressively is small but positive, put point
2298 near the screen edge.
2299
23002004-05-22 Juanma Barranquero <lektu@terra.es>
2301
2302 * keymap.c (Fdefine_key): Doc fix.
2303
23042004-05-22 Kim F. Storm <storm@cua.dk>
2305
2306 * alloc.c (struct backtrace): Add debug_on_exit member.
2307 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
2308 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
2309 the removed cons cells.
2310 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
2311 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
2312 any cons cells pointing to unallocated stings.
2313 Do not lisp_free any marker blocks, as there may still be pointers
2314 to them from buffer undo lists at this stage of GC.
2315
2316 * keyboard.c (struct backtrace): Add debug_on_exit member.
2317 (Fcommand_execute): Clear it.
2318
23192004-05-20 Luc Teirlinck <teirllm@auburn.edu>
2320
2321 * intervals.c (lookup_char_property): Do not prematurely return nil.
2322
23232004-05-19 Jim Blandy <jimb@redhat.com>
2324
2325 Add support for new '\_<' and '\_>' regexp operators, matching the
2326 beginning and end of symbols.
2327
2328 * regex.c (enum syntaxcode): Add Ssymbol.
2329 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
2330 (re_opcode_t): New opcodes `symbeg' and `symend'.
2331 (print_partial_compiled_pattern): Print the new opcodes properly.
2332 (regex_compile): Parse the new operators.
2333 (analyse_first): Skip sym(beg|end) (they match only the empty string).
2334 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
2335 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
2336 (re_match_2_internal): Match symbeg and symend.
2337
2338 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
2339
23402004-05-19 Kim F. Storm <storm@cua.dk>
2341
2342 * .gdbinit (xsymbol): Fix last change.
2343
23442004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
2345
2346 * .gdbinit (xprintstr): New fun.
2347 (xstring, xprintsym): Use it.
2348
2349 * w32proc.c (create_child): Use INTMASK.
2350
2351 * alloc.c (Fgarbage_collect): Do all the marking before flushing
2352 unmarked elements of the undo list.
2353
23542004-05-18 David Ponce <david@dponce.com>
2355
2356 * print.c (print): Reset print_depth before to call print_object.
2357
23582004-05-18 Jason Rumney <jasonr@gnu.org>
2359
2360 * w32console.c: Prefix RIF functions with w32con_ to avoid
2361 namespace clash with functions in term.c and w32term.c.
2362
2363 * w32menu.c (add_menu_item, w32_menu_display_help)
2364 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
2365
2366 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
2367
23682004-05-18 Eli Zaretskii <eliz@gnu.org>
2369
2370 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
2371
2372 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
2373 with make_number.
2374 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
2375 with XINT.
2376
23772004-05-18 Kim F. Storm <storm@cua.dk>
2378
2379 * blockinput.h (INPUT_BLOCKED_P): New macros.
2380
2381 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
2382 (Ftop_level): Unblock input if blocked.
2383
2384 * buffer.h (GET_OVERLAYS_AT): New macro.
2385 * msdos.c (IT_note_mouse_highlight): Use it.
2386 * textprop.c (get_char_property_and_overlay): Use it.
2387 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
2388 * xfaces.c (face_at_buffer_position): Use it.
2389
2390 * print.c (print_object): Increase buf size.
2391
23922004-05-17 Jason Rumney <jasonr@gnu.org>
2393
2394 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
2395 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
2396 Lisp_Object using i member.
2397 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
2398 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
2399 consistently.
2400
2401 * w32proc.c (create_child): Use make_number instead of masking pid.
2402
2403 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
2404 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
2405 Use EQ to compare Lisp_Objects.
2406 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
2407
2408 * w32term.c (w32_num_mouse_buttons): Rename from
2409 Vw32_num_mouse_buttons and make it an int.
2410
2411 * w32.c (init_environment): Use it.
2412
2413 * w32fns.c (w32_wnd_proc): Likewise.
2414
2415 * w32proc.c (w32_pipe_read_delay): Rename from
2416 Vw32_pipe_read_delay and make it an int.
2417
2418 * w32.c (_sys_read_ahead): Use it.
2419
2420 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
2421
2422 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
2423
2424 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
2425 (key_event): Don't mix Lisp_Object and int.
2426
2427 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
2428
2429 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
2430 modifiers in language change event.
2431
24322004-05-17 Kim F. Storm <storm@cua.dk>
2433
2434 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
2435 Such objects may be freed markers which still exist on an undo list.
2436
24372004-05-16 Juanma Barranquero <lektu@terra.es>
2438
2439 * data.c (Fset_default): Make argument names match their use in
2440 docstring.
2441
24422004-05-15 Andreas Schwab <schwab@suse.de>
2443
2444 * emacs.c (gdb_array_mark_flag): Define.
2445 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
2446
24472004-05-15 Eli Zaretskii <eliz@gnu.org>
2448
2449 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
2450 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
2451 defined for the MS-DOS build.
2452
24532004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
2454
2455 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
2456
24572004-05-14 Kenichi Handa <handa@m17n.org>
2458
2459 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
2460
24612004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2462
2463 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
2464 section to frame.c section.
2465 (Fxw_display_color_p, Fx_file_dialog): Declare if
2466 HAVE_WINDOW_SYSTEM defined.
2467
2468 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
2469
2470 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
2471
2472 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
2473 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
2474 (XTread_socket): Fix int/Lisp_Object mixup.
2475 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
2476
2477 * macterm.h (struct frame, struct face, struct image)
2478 (display_x_get_resource, Fx_display_color_p)
2479 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
2480 Add prototypes.
2481
24822004-05-14 Kim F. Storm <storm@cua.dk>
2483
2484 * process.c (wait_reading_process_input): Make reentrant.
2485 Make Available and Connecting non-static. Save and restore value
2486 of waiting_for_user_input_p.
2487
24882004-05-13 Kim F. Storm <storm@cua.dk>
2489
2490 * keyboard.c (mark_kboards): Don't mark x and y members
2491 that are overloaded in selection request events.
2492
24932004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
2494
2495 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
2496
24972004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
2498
2499 * window.c (Fdisplay_buffer, Fsplit_window)
2500 (split-height-threshold): Doc fix.
2501
25022004-05-13 Juanma Barranquero <lektu@terra.es>
2503
2504 * xfaces.c (Ftty_supports_face_attributes_p)
2505 (Finternal_copy_lisp_face): Fix typo in docstring.
2506 (Finternal_get_lisp_face_attribute): Fix docstring.
2507
25082004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2509
2510 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
2511
25122004-05-11 Steven Tamm <steventamm@mac.com>
2513
2514 * macfns.c (Fx_create_frame): Default to using tool-bar by
2515 setting tool-bar-lines to 1 in default-frame-alist.
2516
25172004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2518
2519 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
2520 (xpm_get_color_table_v, xpm_make_color_table_h)
2521 (xpm_put_color_table_h, xpm_get_color_table_h)
2522 (xpm_str_to_color_key, xpm_load_image, xpm_load)
2523 (syms_of_image): Support XPM on Carbon Emacs. Does not
2524 depend on libXpm, but only supports XPM version 3 without extensions.
2525
25262004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2527
2528 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
2529 instead of FRAME_X_P
2530
25312004-05-11 Kim F. Storm <storm@cua.dk>
2532
2533 * process.c (read_process_output): Grow decoding_buf when needed;
2534 this could cause a crash in allocate_string and compact_small_strings.
2535
25362004-04-29 Jim Blandy <jimb@redhat.com>
2537
2538 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
2539 against proper opcode.
2540
25412004-05-10 Juanma Barranquero <lektu@terra.es>
2542
2543 * process.c (Fstart_process): Fix docstring.
2544
2545 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
2546 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
2547 (Fsplit_char, Fchar_charset): Make argument names match their use
2548 in docstring.
2549
25502004-05-10 Richard M. Stallman <rms@gnu.org>
2551
2552 * print.c (print_preprocess): Use being_printed, loop_count and
2553 halftail to detect overdeep nesting and cyclic cdr chains.
2554
25552004-05-10 Andreas Schwab <schwab@suse.de>
2556
2557 * lisp.h (Fmake_symbolic_link): Declare.
2558
2559 * fileio.c (Frename_file): Remove extra argument in call to
2560 Fmake_symbolic_link.
2561
25622004-05-10 Kim F. Storm <storm@cua.dk>
2563
2564 * xdisp.c (calc_line_height_property): Use string position when
2565 object is a string.
2566
25672004-05-10 Kenichi Handa <handa@m17n.org>
2568
2569 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
2570 inhibit-modification-hooks to t temporarily before calling
2571 Ferase_buffer.
2572
2573 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
2574 inhibit-modification-hooks to t temporarily before calling
2575 Ferase_buffer.
2576
2577 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
2578 inhibit-modification-hooks to t temporarily before calling
2579 Ferase_buffer.
2580
2581 * fns.c (count_combining): Delete it.
2582 (concat): Don't check combining bytes.
2583
25842004-05-09 Jason Rumney <jasonr@gnu.org>
2585
2586 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
2587 (globals_of_w32fns): Set it.
2588
25892004-05-09 Piet van Oostrum <piet@cs.uu.nl>
2590
2591 * data.c (Fquo): Simplify.
2592
25932004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
2594
2595 * data.c (Fquo): If any argument is float, do the computation in
2596 floating point.
2597
25982004-05-08 Juanma Barranquero <lektu@terra.es>
2599
2600 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
2601 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
2602 Fix spelling of Emacs on docstring.
2603 (Fset_process_coding_system, Fprocess_coding_system)
2604 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
2605 Make argument names match their use in docstring.
2606 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
2607 Fix docstring.
2608
2609 * editfns.c (Finsert_buffer_substring): Make argument names match their
2610 use in docstring.
2611
2612 * syntax.c (Fmodify_syntax_entry): Fix docstring.
2613
26142004-05-07 Steven Tamm <steventamm@mac.com>
2615
2616 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
2617 around call to ReceiveEvent to avoid certain crashes.
2618
26192004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2620
2621 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
2622 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
2623 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
2624 Save/restore the current graphics port and device handle when
2625 drawing into an offscreen graphics world.
2626
2627 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
2628 (gif_load): Likewise.
2629
26302004-05-07 Juanma Barranquero <lektu@terra.es>
2631
2632 * window.c (Fset_window_buffer): Fix docstring.
2633
26342004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
2635
2636 * emacs.c (main) [VMS]: Fix var ref.
2637
26382004-05-06 Romain Francoise <romain@orebokech.com>
2639
2640 * data.c (Fsetq_default): Fix docstring.
2641
26422004-05-06 Jason Rumney <jasonr@gnu.org>
2643
2644 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
2645 to avoid name clash.
2646
26472004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2648
2649 * fileio.c (barf_or_query_if_file_exists): Use lstat.
2650 (Frename_file): Handle renaming of symlinks across file systems.
2651 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
2652
26532004-05-04 Kim F. Storm <storm@cua.dk>
2654
2655 * xdisp.c (Qtotal): New var.
2656 (syms_of_xdisp): Intern and staticpro it.
2657 (calc_line_height_property): New arg total. Set it if
2658 line-spacing property has format (total . VALUE).
2659 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
2660 Handle total line-spacing property.
2661
26622004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2663
2664 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
2665 "under" scroll bar when size/position changes.
2666
26672004-05-03 Jason Rumney <jasonr@gnu.org>
2668
2669 * makefile.nt: Remove.
2670
26712004-05-02 Eli Zaretskii <eliz@gnu.org>
2672
2673 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
2674 Avoid compiler warnings.
2675
2676 * Makefile.in (region-cache.o): Depend on config.h.
2677
26782004-05-02 Romain Francoise <romain@orebokech.com>
2679
2680 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
2681 with continuation lines, too.
2682
26832004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
2684
2685 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
2686
26872004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
2688
2689 * xdisp.c (calc_line_height_property): YAILOM (yet another
2690 int/Lisp_Object mixup).
2691
26922004-05-01 Eli Zaretskii <eliz@gnu.org>
2693
2694 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
2695 undo bad effect of pack(4) in some versions of system headers.
2696
26972004-05-01 Jason Rumney <jasonr@gnu.org>
2698
2699 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
2700
27012004-04-30 Kim F. Storm <storm@cua.dk>
2702
2703 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
2704 (syms_of_buffer) <cursor-type>: Doc fix.
2705
2706 * dispextern.h (struct it): Remove member use_default_face.
2707 Add members override_ascent, override_descent, override_boff.
2708
2709 * xdisp.c (init_iterator): Handle line-spacing float value.
2710 Initialize override_ascent member.
2711 (append_space_for_newline): Reset override_ascent.
2712 Remove use_default_face.
2713 (calc_line_height_property): New function to calculate value of
2714 line-height and line-spacing properties. Look at overlays, too.
2715 Set override_ascent, override_descent, override_boff members when
2716 using another face than the current face. Float values are now
2717 relative to the frame default font, by default; accept a cons
2718 of ratio and face name to specify value relative to a specific face.
2719 (x_produce_glyphs): Use calc_line_height_property.
2720 Use override_ascent etc. when set to handle different face heights.
2721 A negative line-spacing property value is interpreted as a total
2722 line height, rather than inter-line spacing.
2723 (note_mouse_highlight): Allocate room for 40 overlays initially.
2724
27252004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
2726
2727 * data.c (Fsubr_name): New fun.
2728 (syms_of_data): Defsubr it.
2729
27302004-04-29 Kim F. Storm <storm@cua.dk>
2731
2732 * xdisp.c (null_glyph_slice): New var.
2733 (append_glyph, append_composite_glyph, append_stretch_glyph):
2734 Use it to initialize glyph slice.
2735
27362004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
2737
2738 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
2739 (on_hot_spot_p): Make sure we always return a value.
2740 (Flookup_image_map): Remove unused var ix and iy.
2741 (note_mode_line_or_margin_highlight): Remove unused var `image'.
2742
27432004-04-27 Eli Zaretskii <eliz@gnu.org>
2744
2745 * msdos.c (init_environment): If one of the TMP... environment
2746 variables is set to a drive letter without a trailing slash,
2747 append a slash.
2748
27492004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
2750
2751 * editfns.c (lisp_time_argument): Provide externally.
2752
2753 * fileio.c (Fset_file_times): New function.
2754 (syms_of_fileio): Intern and staticpro it.
2755
27562004-04-27 Kim F. Storm <storm@cua.dk>
2757
2758 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
2759 header line strings.
2760
2761 * dispextern.h (struct it): New member use_default_face.
2762
2763 * xdisp.c (Qline_height): New variable.
2764 (syms_of_xdisp): Intern and staticpro it.
2765 (append_space_for_newline): Partially undo 2004-04-25 change;
2766 add default_face_p arg, and restore callers.
2767 Clear it->use_default_face after use.
2768 (x_produce_glyphs): Set default font for ascii char if
2769 it->use_default_font is set. Change line-spacing property to set
2770 just extra line spacing. Handle new line-height property.
2771
27722004-04-26 Andreas Schwab <schwab@suse.de>
2773
2774 * print.c (print_object): Print non-ascii characters in bool
2775 vector representation as octal escapes.
2776
2777 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
2778 * print.c (print_object): Use it instead of BITS_PER_CHAR for
2779 bool vectors.
2780 * lread.c (read1): Likewise.
2781 * alloc.c (Fmake_bool_vector): Likewise.
2782 * data.c (Faref, Faset): Likewise.
2783 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
2784 (mapcar1): Likewise.
2785
27862004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2787
2788 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
2789
27902004-04-26 Miles Bader <miles@gnu.org>
2791
2792 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
2793
27942004-04-26 Juanma Barranquero <lektu@terra.es>
2795
2796 * buffer.c (Fpop_to_buffer): Fix docstring.
2797
27982004-04-26 Steven Tamm <steventamm@mac.com>
2799
2800 * lread.c (init_lread): Don't display missing lisp directory
2801 warnings with Carbon Emacs because self-contained bundled Emacs
2802 may be built without correct installation path.
2803
28042004-04-25 Kim F. Storm <storm@cua.dk>
2805
2806 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2807
2808 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2809
2810 * xdisp.c (append_space_for_newline): Rename from append_space.
2811 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2812 (x_produce_glyphs): Handle line-spacing property on newline char.
2813 If value is t, adjust ascent and descent to fit current row height.
2814 If value is an integer or float, set extra_line_spacing to integer
2815 value, or to float value x current line height.
2816
28172004-04-23 Kenichi Handa <handa@m17n.org>
2818
2819 * fontset.c (Finternal_char_font): If POSITION is nil, return
2820 font for displaying CH with the default face.
2821
28222004-04-23 Juanma Barranquero <lektu@terra.es>
2823
2824 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2825
28262004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2827
2828 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2829 Don't make assumptions about the relative place of i and val.
2830 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2831
28322004-04-21 Kim F. Storm <storm@cua.dk>
2833
2834 * dispextern.h (struct glyph_slice): New struct.
2835 (struct glyph): New member slice.
2836 (GLYPH_SLICE_EQUAL_P): New macro.
2837 (GLYPH_EQUAL_P): Use it.
2838 (struct glyph_string): New member slice.
2839 (struct it_slice): New struct.
2840 (struct it): New member slice, add member to stack too.
2841 New member constrain_row_ascent_descent_p.
2842 (image_ascent): Add prototype.
2843
2844 * dispnew.c (buffer_posn_from_coords): Return full image width
2845 and height even for image slices (posn is relative to full image).
2846 (marginal_area_string): Adjust x0,y0 for image slice.
2847
2848 * image.c (image_ascent): Add slice arg; calculate ascent for
2849 image slice (or full image).
2850
2851 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2852 (syms_of_keyboard): Defsubr them.
2853
2854 * lisp.h (pos_visible_p): Fix prototype.
2855
2856 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2857 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2858 (x_draw_image_foreground, x_draw_image_relief)
2859 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2860 Draw sliced images.
2861
2862 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2863 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2864 (x_draw_image_foreground, x_draw_image_relief)
2865 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2866 Draw sliced images.
2867
2868 * w32term.h (image_ascent): Remove prototype.
2869
2870 * window.c (Fpos_visible_in_window_p): Return pixel position if
2871 PARTIALLY arg is non-nil. Simplify. Doc fix.
2872 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2873 to return/set vscroll in pixels.
2874
2875 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2876
2877 * xdisp.c (Qslice): New variable.
2878 (syms_of_xdisp): Intern and staticpro it.
2879 (pos_visible_p): Return pixel position in new x and y args.
2880 (init_iterator): Reset it->slice info.
2881 (handle_display_prop): Parse (slice ...) property.
2882 (push_it, pop_it): Save/restore slice info.
2883 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2884 force repositioning of tall row if window is vscrolled, as that
2885 would reset vscroll.
2886 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2887 increasing row height if row is non-empty.
2888 (fill_image_glyph_string): Copy slice info.
2889 (take_vertical_position_into_account): Simplify.
2890 (produce_image_glyph): Handle iterator slice info, setup glyph
2891 slice info. Do not force minimum line height.
2892 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2893 do not increase height (ascent/descent) of non-empty row when
2894 adding normal character glyph; instead reduce glyph ascent/descent
2895 appropriately; if row is higher than current glyph, adjust glyph
2896 descent/ascent to reposition glyph within the existing row.
2897 Likewise, when char is newline, only set ascent/descent if row is
2898 currently empty.
2899 (note_mouse_highlight): Handle hotspots with sliced image.
2900
2901 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2902 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2903 (x_draw_image_foreground, x_draw_image_relief)
2904 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2905 Draw sliced images.
2906
2907 * xterm.h (image_ascent): Remove prototype.
2908
29092004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2910
2911 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2912
29132004-04-20 John Paul Wallington <jpw@gnu.org>
2914
2915 * fns.c (Fassoc, Feql): Fix indentation.
2916
2917 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
2918
29192004-04-19 John Paul Wallington <jpw@gnu.org>
2920
2921 * fns.c (Feql): New function.
2922 (syms_of_fns): Defsubr it.
2923
29242004-04-18 Jason Rumney <jasonr@gnu.org>
2925
2926 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2927 after closing the clipboard.
2928
29292004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2930
2931 * buffer.c (Fbuffer_base_buffer): Doc fix.
2932
29332004-04-17 Kim F. Storm <storm@cua.dk>
2934
2935 * keymap.c (Fkey_description): Add optional PREFIX arg.
2936 Combine prefix with KEYS to make up the full key sequence to describe.
2937 Correlate meta_prefix_char and following (simple) key to describe
2938 as meta modifier. All callers changed.
2939 (describe_map): Rename arg `keys' to `prefix'. Remove local
2940 `elt_prefix' var. Use Fkey_description with prefix instead of
2941 elt_prefix combined with Fsingle_key_description.
2942 (describe_vector): Declare static. Replace arg `elt_prefix' with
2943 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2944 if !KEYMAP_P. Use Fkey_description with prefix instead of
2945 Fsingle_key_description.
2946
2947 * keymap.h (Fkey_description): Fix prototype.
2948 (describe_vector): Remove prototype.
2949
2950 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2951
2952 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2953 (png_load): Fix calculation of transparent background color on X
2954 and W32 platforms.
2955
29562004-04-16 Juanma Barranquero <lektu@terra.es>
2957
2958 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2959 not too large before computing how much to scroll.
2960
29612004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2962
2963 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2964
29652004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2966
2967 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2968 Add hyperlink to Elisp manual to the docstring.
2969
29702004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2971
2972 * callint.c (fix_command): Use XDCR.
2973
29742004-04-14 Nick Roberts <nick@nick.uklinux.net>
2975
2976 * window.c (Fget_lru_window): Doc fix.
2977
29782004-04-14 Kim F. Storm <storm@cua.dk>
2979
2980 * editfns.c (Fformat): Fix allocation size of precision array.
2981
2982 * dispnew.c (update_window): Only set changed_p if
2983 scrolling_window actually did scroll.
2984 (scrolling_window): Only return 1 if we actually did scroll.
2985
2986 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2987 height to glyph height when cursor row is not fully visible.
2988 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2989 failure in case row is higher than window. Callers changed.
2990 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2991 Try to scroll partially visible, higher-than-window cursor row.
2992 (redisplay_window): Always try to scroll partially visible,
2993 higher-than-window cursor row - both initially and again with
2994 centering_position = 0.
2995 Clear desired matrix before retrying with centering_position = 0.
2996
29972004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2998
2999 * syntax.c (scan_lists): Simplify backward string scan.
3000 Fix off-by-one boundary check for string and comment fences.
3001
30022004-04-13 Joe Buehler <jbuehler@hekimian.com>
3003
3004 * sheap.c, unexcw.c: New files.
3005
30062004-04-12 Luc Teirlinck <teirllm@auburn.edu>
3007
3008 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
3009 base buffer has been killed. Correct the error message if the
3010 base buffer does not exist.
3011
30122004-04-12 Joe Buehler <jbuehler@hekimian.com>
3013
3014 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
3015 Cygwin itself. Add support for Xaw3d scrollbars.
3016
3017 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
3018
3019 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
3020
3021 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
3022 before Cygwin unexec.
3023
3024 * Makefile.in: Link changes for Cygwin unexec() support.
3025
30262004-04-12 Andreas Schwab <schwab@suse.de>
3027
3028 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
3029
30302004-04-11 Luc Teirlinck <teirllm@auburn.edu>
3031
3032 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
3033 IGNORE argument equals NAME. Doc fix.
3034
30352004-04-11 Masatake YAMATO <jet@gyve.org>
3036
3037 * buffer.c (fix_start_end_in_overlays): Make overlays
3038 empty if they are backwards.
3039
30402004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
3041
3042 * xfaces.c (face_color_supported_p): Fix compilation without X11.
3043
30442004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
3045
3046 * doc.c (Fsnarf_documentation): Ignore new file name entries.
3047
30482004-04-06 Kim F. Storm <storm@cua.dk>
3049
3050 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
3051 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
3052
3053 * w32term.c (w32_read_socket): Set mouse_face_hidden after
3054 clearing highlight.
3055
3056 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
3057
3058 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
3059 clearing highlight.
3060
3061 * indent.c (vmotion): Do not reserve one column for continuation
3062 marks on window frames.
3063
30642004-04-04 Eli Zaretskii <eliz@gnu.org>
3065
3066 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
3067 from GCC.
3068
30692004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
3070
3071 * .gdbinit-union: Remove.
3072
3073 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
3074 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
3075 ($nonvalbits): Remove.
3076 ($valmask): Set it by calling xreload to avoid redundancy.
3077
3078 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
3079 (gdb_emacs_intbits): Remove.
3080
30812004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3082
3083 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
3084
30852004-03-30 Kenichi Handa <handa@m17n.org>
3086
3087 * editfns.c (Fformat): Fix initialization of the array info.
3088
30892004-03-30 Kim F. Storm <storm@cua.dk>
3090
3091 * xterm.c (x_mouse_click_focus_ignore_position): New var.
3092 (syms_of_xterm): DEFVAR_BOOL it.
3093 (ignore_next_mouse_click_timeout): New var.
3094 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
3095 Use it to filter mouse clicks following focus event.
3096
30972004-03-29 David Ponce <david@dponce.com>
3098
3099 * callint.c (Fcall_interactively): Fix last change.
3100
31012004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3102
3103 * eval.c (Fcommandp): Simplify.
3104
3105 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
3106 Extend to handle all kinds of functions.
3107
3108 * lisp.h (Finteractive_form): Declare.
3109
3110 * callint.c (Fcall_interactively): Use it.
3111
31122004-03-26 Kim F. Storm <storm@cua.dk>
3113
3114 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
3115 to catch errors in calc_pixel_width_or_height during redisplay.
3116
31172004-03-26 Masatake YAMATO <jet@gyve.org>
3118
3119 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
3120
3121 * lisp.h (fix_start_end_in_overlays): Likewise.
3122
3123 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
3124
3125 * editfns.c (Ftranspose_regions): Likewise.
3126
31272004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3128
3129 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
3130
31312004-03-19 Richard M. Stallman <rms@gnu.org>
3132
3133 * s/sol2-6.h: Delete previous change.
3134
31352004-03-19 Kim F. Storm <storm@cua.dk>
3136
3137 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
3138 to_charpos corresponds to newline in right fringe. Use local
3139 BUFFER_POS_REACHED_P macro.
3140
31412004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3142
3143 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
3144 to compile on non-window system.
3145
31462004-03-19 Kim F. Storm <storm@cua.dk>
3147
3148 * dispextern.h (calc_pixel_width_or_height): Add prototype.
3149
3150 * image.c (Qcenter): Move to xdisp.c.
3151
3152 * xdisp.c (Qcenter): Declare here.
3153 (syms_of_xdisp): Intern and staticpro it.
3154 (handle_single_display_prop): Allow space display property on all
3155 platforms.
3156 (display_mode_line): Set mode_line_p before displaying line.
3157 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
3158 handling. Remove complex cases for fringes and scroll-bars.
3159 Add left, right, and center alignment positions. Add text (area)
3160 width/height. Return width or height for image specs.
3161 (produce_stretch_glyph): Improve handling of :align-to. Is now
3162 relative to left of text area by default, but other base offsets
3163 can be specified -- also for text lines.
3164
3165 * term.c (produce_glyphs): Handle IT_STRETCH.
3166 (produce_stretch_glyph): New function to handle space width and
3167 align-to display properties on non-window systems.
3168
31692004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3170
3171 * fileio.c (Fread_file_name): Set completion-ignore-case for
3172 case-insensitive systems.
3173
31742004-03-14 Masatake YAMATO <jet@gyve.org>
3175
3176 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
3177 when keymap and cursor are setup.
3178
31792004-03-14 Steven Tamm <steventamm@mac.com>
3180
3181 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
3182
31832004-03-14 Kim F. Storm <storm@cua.dk>
3184
3185 * dispextern.h (x_find_image_file): Add prototype.
3186
3187 * image.c (x_find_image_file): Make extern.
3188
3189 * xfns.c (x_find_image_file): Remove prototype.
3190
31912004-03-13 Eli Zaretskii <eliz@gnu.org>
3192
3193 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
3194
3195 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
3196
31972004-03-12 Richard M. Stallman <rms@gnu.org>
3198
3199 * fns.c (internal_equal): New arg PROPS controls comparing
3200 text properties. All callers changed.
3201 (Fequal_including_properties): New function.
3202 (syms_of_fns): defsubr it.
3203
32042004-03-12 Kim F. Storm <storm@cua.dk>
3205
3206 Fix image support on MAC. From YAMAMOTO Mitsuharu.
3207
3208 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
3209 (image_background, image_background_transparent): Fix prototypes.
3210
3211 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
3212
3213 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
3214 (x_query_font, x_find_ccl_program, x_set_window_size)
3215 (x_make_frame_visible, mac_initialize, XCreatePixmap)
3216 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
3217 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
3218
3219 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
3220 (x_query_font, x_find_ccl_program, x_set_window_size)
3221 (x_make_frame_visible, mac_initialize, XCreatePixmap)
3222 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
3223 (mac_draw_line_to_pixmap): Add prototypes.
3224
32252004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3226
3227 * macterm.c (XTread_socket): Fix mouse click on tool bar.
3228
32292004-03-11 Kim F. Storm <storm@cua.dk>
3230
3231 * dispextern.h: Move image related prototypes from xfns.c section
3232 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
3233 HAVE_X_WINDOWS.
3234
3235 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
3236 Move gtkutil.o to new GTK_OBJ list.
3237 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
3238 (GTK_OBJ) [USE_GTK]: New declaration.
3239 (obj): Add $(GTK_OBJ) to list.
3240
32412004-03-11 Steven Tamm <steventamm@mac.com>
3242
3243 * image.c [MAC_OSX]: Include sys/stat.h
3244
3245 * macfns.c (syms_of_macfns): Remove definitions of things now
3246 defined in image.c
3247
32482004-03-11 Kim F. Storm <storm@cua.dk>
3249
3250 The following changes consolidates the identical/similar image
3251 support code previously found in xfns.c, w32fns.c, and macfns.c
3252 into a new file image.c.
3253
3254 * makefile.w32-in (OBJ1): Add image.o.
3255 ($(BLD)/image.$(O)): Add dependencies.
3256
3257 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
3258 (image.o): Add dependencies.
3259
3260 * image.c: New file with consolidated image support code.
3261 (COLOR_TABLE_SUPPORT): New define to control whether
3262 color table support is available (X only).
3263 (Bitmap_Record): Common name for x_bitmap_record,
3264 w32_bitmap_record, and mac_bitmap_record.
3265 (XImagePtr): Common name for pointer to XImage or equivalent.
3266 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
3267 to XImagePtr on X+MAC, and to HDC on W32.
3268 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
3269 (NO_PIXMAP): Common name for "None" or equivalent.
3270 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
3271 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
3272 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
3273 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
3274 Define with suitable equivalents on W32 and MAC for code sharing.
3275 (XDrawLine): Define on MAC for code sharing.
3276 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
3277 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
3278 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3279 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3280 (x_reference_bitmap, x_create_bitmap_from_data)
3281 (x_create_bitmap_from_file, x_destroy_bitmap)
3282 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3283 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3284 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3285 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3286 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3287 (define_image_type, lookup_image_type, valid_image_p)
3288 (image_error, enum image_value_type, struct image_keyword)
3289 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3290 (make_image, free_image, prepare_image_for_display, image_ascent)
3291 (four_corners_best, image_background, image_background_transparent)
3292 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3293 (make_image_cache, free_image_cache, clear_image_cache)
3294 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3295 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3296 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3297 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3298 (init_image_func_pointer, image_load_quartz2d)
3299 (struct ct_color, init_color_table, free_color_table)
3300 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3301 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3302 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3303 (x_disable_image, x_build_heuristic_mask)
3304 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3305 (TIFF support, GIF support, Ghostscript support): Consolidate image
3306 code from xfns.c, w32fns.c, and macfns.c.
3307 (syms_of_image): Consolidate image related symbol setup here.
3308 (init_image): Consolidate image related initializations here.
3309
3310 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
3311 and init_image. Remove call to init_xfns.
3312
3313 * macterm.h (struct mac_bitmap_record): Add file member.
3314 Not currently used, but simplifies code sharing.
3315
3316 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3317 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3318 (x_reference_bitmap, x_create_bitmap_from_data)
3319 (x_create_bitmap_from_file, x_destroy_bitmap)
3320 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3321 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3322 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3323 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3324 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3325 (define_image_type, lookup_image_type, valid_image_p)
3326 (image_error, enum image_value_type, struct image_keyword)
3327 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3328 (make_image, free_image, prepare_image_for_display, image_ascent)
3329 (four_corners_best, image_background, image_background_transparent)
3330 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3331 (make_image_cache, free_image_cache, clear_image_cache)
3332 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3333 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3334 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3335 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3336 (init_image_func_pointer, image_load_quartz2d)
3337 (struct ct_color, init_color_table, free_color_table)
3338 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3339 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3340 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3341 (x_disable_image, x_build_heuristic_mask)
3342 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3343 (TIFF support, GIF support, Ghostscript support): Merge with image
3344 code from xfns.c and macfns.c into image.c.
3345 (syms_of_xfns): Move image related symbols to image.c.
3346 (init_external_image_libraries, init_xfns): Remove; initialization
3347 moved to init_image in image.c.
3348
3349 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3350 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3351 (x_reference_bitmap, x_create_bitmap_from_data)
3352 (x_create_bitmap_from_file, x_destroy_bitmap)
3353 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3354 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3355 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3356 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3357 (define_image_type, lookup_image_type, valid_image_p)
3358 (image_error, enum image_value_type, struct image_keyword)
3359 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3360 (make_image, free_image, prepare_image_for_display, image_ascent)
3361 (four_corners_best, image_background, image_background_transparent)
3362 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3363 (make_image_cache, free_image_cache, clear_image_cache)
3364 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3365 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3366 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3367 (struct ct_color, init_color_table, free_color_table)
3368 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3369 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3370 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3371 (x_disable_image, x_build_heuristic_mask)
3372 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3373 (TIFF support, GIF support, Ghostscript support): Merge with image
3374 code from xfns.c and macfns.c into image.c.
3375 (syms_of_xfns): Move image related symbols to image.c.
3376 (init_external_image_libraries, init_xfns): Remove; initialization
3377 moved to init_image in image.c.
3378
3379 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3380 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3381 (x_reference_bitmap, x_create_bitmap_from_data)
3382 (x_create_bitmap_from_file, x_destroy_bitmap)
3383 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3384 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3385 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3386 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3387 (define_image_type, lookup_image_type, valid_image_p)
3388 (image_error, enum image_value_type, struct image_keyword)
3389 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3390 (make_image, free_image, prepare_image_for_display, image_ascent)
3391 (four_corners_best, image_background, image_background_transparent)
3392 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3393 (make_image_cache, free_image_cache, clear_image_cache)
3394 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3395 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3396 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3397 (struct ct_color, init_color_table, free_color_table)
3398 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3399 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3400 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3401 (x_disable_image, x_build_heuristic_mask)
3402 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3403 (TIFF support, GIF support, Ghostscript support): Merge with
3404 w32fns.c and macfns.c image code into image.c.
3405 (syms_of_xfns): Move image related symbols to image.c.
3406 (init_xfns): Remove; initialization moved to init_image in image.c.
3407
3408 * lisp.h (syms_of_image, init_image): Add protoypes.
3409 (init_xfns): Remove prototype.
3410
3411 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3412 (x_reference_bitmap, x_create_bitmap_from_data)
3413 (x_create_bitmap_from_file, x_destroy_bitmap)
3414 (x_create_bitmap_mask): Move prototypes from dispextern.h.
3415 (gamma_correct) [MAC_OS]: Add prototype.
3416
3417 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3418 (x_reference_bitmap, x_create_bitmap_from_data)
3419 (x_create_bitmap_from_file, x_destroy_bitmap)
3420 (x_create_bitmap_mask): Move prototypes to dispextern.h.
3421
34222004-03-09 Kenichi Handa <handa@etlken2>
3423
3424 * coding.c (decode_coding_emacs_mule): Handle insufficent source
3425 correctly.
3426
34272004-03-04 Richard M. Stallman <rms@gnu.org>
3428
3429 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
3430
3431 * window.c (Fdisplay_buffer): Doc fix.
3432
3433 * buffer.c (Fpop_to_buffer): Doc fix.
3434
34352004-03-03 Kim F. Storm <storm@cua.dk>
3436
3437 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
3438
34392004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
3440
3441 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
3442
34432004-03-02 Richard M. Stallman <rms@gnu.org>
3444
3445 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
3446
34472004-03-02 Kenichi Handa <handa@m17n.org>
3448
3449 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
3450
34512004-03-02 Kim F. Storm <storm@cua.dk>
3452
3453 * window.h (struct window): New member overlay_arrow_bitmap.
3454
3455 * window.c (make_window): Initialize overlay_arrow_bitmap.
3456
3457 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
3458 implement and integrate multiple overlay arrows with redisplay.
3459 (syms_of_xdisp): DEFVAR_LISP and initialize it.
3460 (last_arrow_position, last_arrow_string): Replace by properties.
3461 (Qlast_arrow_position, Qlast_arrow_string)
3462 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
3463 (syms_of_xdisp): Intern and staticpro them.
3464 (overlay_arrow_string_or_property, update_overlay_arrows)
3465 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
3466 (overlay_arrow_at_row): New functions for multiple overlay arrows.
3467 (redisplay_internal): Use them instead of directly accessing
3468 Voverlay_arrow_position etc. for multiple overlay arrows.
3469 (mark_window_display_accurate): Use update_overlay_arrows.
3470 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
3471 (try_window_id): Use overlay_arrows_changed_p.
3472 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
3473 (display_line): Use overlay_arrow_at_row to check multiple
3474 overlay arrows, and get relevant overlay-arrow-string and
3475 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
3476 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
3477 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
3478
3479 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
3480 (update_window_fringes): Remove unused code.
3481
34822004-03-01 Jason Rumney <jasonr@gnu.org>
3483
3484 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
3485
34862004-03-01 Juanma Barranquero <lektu@terra.es>
3487
3488 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
3489
3490 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
3491
34922004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3493
3494 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
3495 how many colors can be displayed.
3496
34972004-03-01 Kenichi Handa <handa@m17n.org>
3498
3499 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
3500 correctly.
3501
35022004-02-28 Kim F. Storm <storm@cua.dk>
3503
3504 * dispnew.c (update_window): Update header line also if there are
3505 no other changes in window (move code after set_cursor label).
3506
3507 * lisp.h (mark_window_display_accurate): Remove prototype.
3508
3509 * window.c (window_loop, Fforce_window_update): Force mode line
3510 updates by setting prevent_redisplay_optimizations_p and
3511 update_mode_lines.
3512
35132004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3514
3515 * xfns.c (x_window): Fix indentation.
3516
3517 * xterm.c (x_calc_absolute_position): Call x_real_positions
3518 to get WM window sizes and use those to calculate position.
3519 (x_set_offset): Remove code commented out.
3520
35212004-02-28 Miles Bader <miles@gnu.org>
3522
3523 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
3524
35252004-02-28 Kim F. Storm <storm@cua.dk>
3526
3527 * keyboard.c (kbd_buffer_store_event_hold): New function to store
3528 an event into kbd fifo, but with special handling of quit event;
3529 a quit event is saved for later, and further events are discarded
3530 until the saved quit event has been processed.
3531 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
3532 (gen_help_event): Store help event in kbd fifo.
3533 (NREAD_INPUT_EVENTS): Remove.
3534 (read_avail_input): Adapt to new read_socket_hook interface.
3535 Remove allocation and initialization of local input_event buffer,
3536 as read_socket_hook stores events directly in fifo. Allocate and
3537 initialize local hold_quit event to handle postponed quit event
3538 (and store it if set by kbd_buffer_store_event_hold).
3539
3540 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
3541 (gen_help_event): Fix prototype.
3542
3543 * macterm.c (XTread_socket): Remove bufp_r and
3544 numcharsp args. Add hold_quit arg.
3545 Rework to use just one, local, inev input_event. Store inev
3546 directly in fifo using kbd_buffer_store_event_hold.
3547
3548 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
3549 (read_input_waiting): Adapt to new read_socket_hook interface.
3550 Remove allocation and initialization of local input_event buffer,
3551 as read_socket_hook stores events directly in fifo. Allocate and
3552 initialize local hold_quit event to handle postponed quit event
3553 (and store it if set by kbd_buffer_store_event_hold).
3554
3555 * term.c (read_socket_hook): Fix arg list.
3556
3557 * termhooks.h (read_socket_hook): Fix prototype.
3558
3559 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
3560 numcharsp args. Add hold_quit arg.
3561 Rework to use just one, local, inev input_event. Store inev
3562 directly in fifo using kbd_buffer_store_event_hold.
3563
3564 * w32inevt.h (w32_console_mouse_position): Fix prototype.
3565
3566 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
3567 Add hold_quit arg. Rework to use just one, local, inev
3568 input_event. Store inev directly in fifo using
3569 kbd_buffer_store_event_hold. Update count in one place.
3570 Postpone call to gen_help_event until inev is stored; use new
3571 local do_help for this.
3572 Remove local emacs_event in handing of ButtonPress event; just use
3573 inev instead (so no reason to copy it later).
3574
3575 * xsmfns.c (x_session_check_input): Remove numchars arg.
3576
3577 * xterm.c (x_focus_changed, x_detect_focus_change):
3578 Remove numchars arg. Always store event into bufp arg.
3579 Return nothing. Callers changed accordingly.
3580 (glyph_rect): Simplify.
3581 (STORE_KEYSYM_FOR_DEBUG): New macro.
3582 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
3583 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
3584 (current_hold_quit) [USE_GTK]: Add.
3585 (event_handler_gdk): Adapt to new handle_one_xevent.
3586 (handle_one_xevent): Remove bufp_r and numcharsp args.
3587 Add hold_quit arg. Rework to use just one, local, inev
3588 input_event. Store inev directly in fifo using
3589 kbd_buffer_store_event_hold. Update count in one place.
3590 Postpone call to gen_help_event until inev is stored; use new
3591 local do_help for this.
3592 Simplify handling of keysyms (consolidate common code). Fix bug
3593 where count was updated with nchars instead of nbytes.
3594 Remove local emacs_event in handing of ButtonPress event; just use
3595 inev instead (so no reason to copy it later).
3596 Remove `out' label. Rename label `ret' to `done'; add various
3597 `goto done' to clarify code flow in deeply nested blocks.
3598 (x_dispatch_event): Simplify as handle_one_xevent now calls
3599 kbd_buffer_store_event itself.
3600 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3601 arg. Call handle_one_xevent with new arglist. Store event from
3602 x_session_check_input in fifo.
3603 [USE_GTK]: Setup current_hold_quit.
3604 Decrement handling_signal before unblocking input.
3605 (x_initialize) [USE_GTK]: Initialize current_count.
3606
3607 * xterm.h (x_session_check_input): Fix prototype.
3608
36092004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3610
3611 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
3612
3613 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
3614 macgui.h).
3615
3616 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
3617
3618 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
3619 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
3620 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
3621 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
3622 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
3623 (Bitmap): Remove typedef.
3624 (Pixmap): Change int to GWorldPtr.
3625
3626 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3627
3628 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3629 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
3630 New #define to extract 16-bit depth color components from unsigned
3631 long representation.
3632 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
3633 colors used for masks.
3634 (struct mac_display_info): Add color_p. Remove n_cbits.
3635
3636 * macfns.c: Include sys/types.h and sys/stat.h.
3637 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
3638 Include QuickTime/QuickTime.h.
3639 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
3640 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
3641 functions defined in macterm.c.
3642 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
3643 (ZPixmap): New #define for compatibility with xfns.c.
3644 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3645 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
3646 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
3647 New functions.
3648 (four_corners_best, x_create_x_image_and_pixmap)
3649 (x_destroy_x_image, unwind_create_frame, x_disable_image)
3650 (x_edge_detection, init_color_table, colors_in_color_table)
3651 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
3652 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
3653 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
3654 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
3655 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
3656 long mixup.
3657 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
3658 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
3659 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
3660 (x_set_cursor_type, Fxw_color_values, valid_image_p)
3661 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
3662 (x_alloc_image_color, clear_image_cache, lookup_image)
3663 (x_find_image_file, xbm_read_bitmap_file_data)
3664 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
3665 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
3666 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
3667 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
3668 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
3669 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
3670 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
3671 #if 0.
3672 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
3673 #if 0. Free white_relief.gc and black_relief.gc.
3674 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
3675 New functions (from xfns.c).
3676 (Fx_create_frame): Record unwind_create_frame.
3677 (Fxw_display_color_p): Use dpyinfo->color_p.
3678 (Fx_display_grayscale_p, Fx_display_planes): Don't use
3679 dpyinfo->n_cbits.
3680 (Fx_display_color_cells): Use dpyinfo->n_planes;
3681 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
3682 (Qheuristic, cross_disabled_images, emboss_matrix)
3683 (laplace_matrix): New variables (from xfns.c).
3684 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
3685 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
3686 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
3687 (image_background_transparent): New function (from xfns.c).
3688 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3689 (image_load_quicktime): Add declaration.
3690 [MAC_OSX] (image_load_quartz2d): Likewise.
3691 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
3692 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
3693 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
3694 (xbm_load_image_from_file, x_laplace_read_row)
3695 (x_laplace_write_row, pbm_read_file): Remove functions.
3696 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
3697 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
3698 (colors_in_color_table): Sync with xfns.c (although not used).
3699 (lookup_rgb_color): Don't lookup color table. Just do gamma
3700 correction.
3701 (COLOR_INTENSITY): New #define (from xfns.c).
3702 (x_disable_image): New function (from xfns.c).
3703 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3704 (x_build_heuristic_mask): Sync with xfns.c.
3705 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3706 (HAVE_PBM): Remove #ifdef.
3707 (pbm_load): Sync with xfns.c. Set img->width and img->height
3708 before IMAGE_BACKGROUND.
3709 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
3710 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
3711 Don't enclose with #if HAVE_PNG.
3712 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
3713 symbol _CGImageCreateWithPNGDataProvider is defined.
3714 Otherwise use image_load_quicktime.
3715 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
3716 [HAVE_PNG] (png_load): Sync with xfns.c.
3717 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3718 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
3719 HAVE_JPEG.
3720 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
3721 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
3722 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
3723 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
3724 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
3725 (tiff_image_p, tiff_load): Don't enclose declarations with #if
3726 HAVE_TIFF.
3727 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
3728 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
3729 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
3730 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
3731 New functions (from xfns.c).
3732 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
3733 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
3734 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
3735 Don't enclose with #if HAVE_GIF.
3736 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
3737 animated gif. Otherwise use image_load_quicktime.
3738 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
3739 gif_DrawText to avoid conflict with QuickdrawText.h.
3740 [HAVE_GIF] (gif_load): Sync with xfns.c.
3741 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
3742 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
3743 Ghostscript is not supported yet).
3744 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
3745 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
3746 cross_disabled_images (from xfns.c). Remove #if 0 for supported
3747 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3748 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
3749 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3750 HAVE_PNG. Call EnterMovies to support animated gifs.
3751 Call init_image_func_pointer to bind a symbol
3752 _CGImageCreateWithPNGDataProvider if it is defined.
3753
3754 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3755 (x_draw_bar_cursor): Sync declaration with xterm.c.
3756 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
3757 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
3758 graphics).
3759 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
3760 (mac_draw_line_to_pixmap, XCreatePixmap)
3761 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
3762 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
3763 New functions.
3764 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
3765 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3766 Cast bits to char *.
3767 (reflect_byte): New function (from w32fns.c).
3768 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
3769 due to byte alignment.
3770 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
3771 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3772 (XSetForeground): Remove static (now used in macfns.c).
3773 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
3774 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
3775 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
3776 (x_draw_glyph_string_box, x_draw_image_foreground)
3777 (x_draw_image_foreground_1, x_draw_image_glyph_string)
3778 (x_draw_stretch_glyph_string, x_draw_glyph_string)
3779 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
3780 Sync with xterm.c.
3781 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
3782 than the xterm.c version when a strictly horizontal or vertical
3783 line is drawn.
3784 (XTset_terminal_window): Add static.
3785 (x_make_frame_visible): Add UNBLOCK_INPUT.
3786 (x_free_frame_resources): New funcion (from xterm.c).
3787 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
3788 occurs in tool bar area.
3789 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
3790 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
3791 Initialize image cache.
3792 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
3793 Enclose unused functions with #if 0.
3794 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
3795 (decode_mac_font_name): New function to apply code conversions
3796 from a mac font name to an XLFD font name according to its script code.
3797 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
3798 font name to a mac font name according to REGISTRY and ENCODING fields.
3799 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
3800 whose name starts with `.'.
3801 (init_font_name_table): Use decode_mac_font_name. Add both
3802 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
3803 of a font is smJapanese.
3804 (mac_do_list_fonts): New function to list fonts that match a given
3805 pattern.
3806 (x_list_fonts, XLoadQueryFont): Use it.
3807 (XLoadQueryFont): Set rbearing field for each variable width
3808 character to avoid needless redraw.
3809 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3810
38112004-02-26 Kim F. Storm <storm@cua.dk>
3812
3813 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3814 as read_socket_hook handler on X aborts if buffer is too small
3815 and W32 handler doesn't always check buffer limit.
3816
3817 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3818 right-fringe similar to a display margin image. Specifically,
3819 the characters having the fringe prop are no longer shown, and
3820 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3821 do this. Set fringe bitmap face_id in it->face_id.
3822 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3823 still realize it->face (i.e. the fringe bitmap face).
3824
38252004-02-25 Miles Bader <miles@gnu.org>
3826
3827 * xdisp.c (check_it): Check string/string_pos consistency.
3828 (init_iterator): Initialize string-related fields properly.
3829
38302004-02-11 Miles Bader <miles@gnu.org>
3831
3832 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3833
38342004-02-10 Miles Bader <miles@gnu.org>
3835
3836 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3837 BLOCK_INPUT can be nested, so it doesn't make much sense.
3838
38392004-02-24 Michael Mauger <mmaug@yahoo.com>
3840
3841 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3842 (xbm_read_bitmap_data): Use unsigned char for image data.
3843
38442004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3845
3846 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3847
38482004-02-22 Jason Rumney <jasonr@gnu.org>
3849
3850 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3851 correctly over other bitmaps.
3852
38532004-02-21 Eli Zaretskii <eliz@gnu.org>
3854
3855 * emacs.c (USAGE1): Split into two halves.
3856 (USAGE2): Second half of the old USAGE1.
3857 (USAGE3): Rename from USAGE2.
3858 (USAGE4): Rename from USAGE3.
3859
38602004-02-21 Juri Linkov <juri@jurta.org>
3861
3862 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3863 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3864 --file. Fix -f, -l. Sort options. Untabify.
3865 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3866
38672004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3868
3869 * category.c (Fdefine_category, Fcategory_docstring)
3870 (Fget_unused_category, Fset_category_table)
3871 (Fcategory_set_mnemonics): Doc fixes.
3872
38732004-02-20 Kim F. Storm <storm@cua.dk>
3874
3875 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3876 The following changes are relative to the 2004-01-21 revision.
3877 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3878 in one call to read_socket_hook. Value is 8.
3879 (read_avail_input): Separate and rework handling of read_socket_hook
3880 and non-read_socket_hook cases. Use smaller input_event buffer
3881 in read_socket_hook case, and repeat if full buffer is read.
3882 Use new local variable 'discard' to skip input after C-g.
3883 In non-read_socket_hook case, just use a single input_event, and
3884 call kbd_buffer_store_event on the fly for each character.
3885
38862004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3887
3888 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3889 Remove unused `gu' alternative.
3890
38912004-02-19 Andreas Schwab <schwab@suse.de>
3892
3893 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3894 warning.
3895
38962004-02-18 Kim F. Storm <storm@cua.dk>
3897
3898 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3899 Fix last change.
3900
39012004-02-17 Kim F. Storm <storm@cua.dk>
3902
3903 * xdisp.c (fast_find_position): Fix return value of new version;
3904 it was inverted compared to the 21.1 version.
3905 (get_window_cursor_type): Don't look at glyph if NULL.
3906 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
3907
3908 * keyboard.c: Rework previous change; it didn't consider that the
3909 buf array was allocated on the stack.
3910 (prev_read): Remove variable.
3911 (read_avail_input_buf): New static event buffer array.
3912 (in_read_avail_input): New static variable to handle re-entrancy.
3913 (read_avail_input): Change buf to pinter to read_avail_input_buf.
3914 Use in_read_avail_input to handle re-entrance; when re-entered,
3915 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3916 Do not initialize read_avail_input_buf in full here; instead assume it
3917 is always cleared on entry. To ensure that, we clear (just) the
3918 entries that were used before we return.
3919 (init_keyboard): Initialize read_avail_input_buf here.
3920
39212004-02-16 Jesper Harder <harder@ifa.au.dk>
3922
3923 * cmds.c (Fend_of_line): Doc fix.
3924
39252004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3926
3927 * keyboard.c (prev_read): New static variable.
3928 (read_avail_input): Use it to zero out only those slots in buf[]
3929 that were used last time we were called.
3930
39312004-02-16 Eli Zaretskii <eliz@gnu.org>
3932
3933 * Makefile.in (obj): Move fringe.o from here...
3934 (XOBJ, MAC_OBJ): ...to here.
3935
39362004-02-16 Stephen Eglen <stephen@gnu.org>
3937
3938 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3939
39402004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3941
3942 * data.c (Fbyteorder):
3943 * fringe.c (Fdefine_fringe_bitmap):
3944 * xdisp.c (handle_single_display_prop):
3945 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3946
39472004-02-16 Jason Rumney <jasonr@gnu.org>
3948
3949 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3950
39512004-02-15 Steven Tamm <steventamm@mac.com>
3952
3953 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3954 controlling emulation of a three button mouse with option and
3955 command keys.
3956 (Qreverse, mac_get_enumlated_btn): Handle the emulation
3957 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
3958
39592004-02-15 Kim F. Storm <storm@cua.dk>
3960
3961 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3962
3963 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3964 Perform byte-swapping.
3965
39662004-02-14 Kim F. Storm <storm@cua.dk>
3967
3968 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3969 bits from char to short to facilitate wider bitmaps.
3970 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3971 member.
3972
3973 * fringe.c (struct fringe_bitmap): Change member bits from char to
3974 short to facilitate 16 bits wide bitmaps. Modify all standard
3975 bitmaps accordingly.
3976 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3977 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3978 (draw_fringe_bitmap): Ditto.
3979 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3980 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3981 handle up to 16 bits wide bitmaps.
3982 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
3983 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
3984
3985 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3986 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3987 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3988
3989 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3990 so it is no longer necessary to expand them here.
3991
3992 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3993
39942004-02-12 Kim F. Storm <storm@cua.dk>
3995
3996 * window.c (Fwindow_fringes): Doc fix.
3997
39982004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3999
4000 * xselect.c (x_get_foreign_selection): Add new optional parameter
4001 time_stamp.
4002 (Fx_get_selection_internal): Ditto, pass time_stamp to
4003 x_get_foreign_selection.
4004
4005 * data.c (Fbyteorder): New function.
4006
40072004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4008
4009 * atimer.c: Move include stdio.h to same place as in other files.
4010
4011 * region-cache.c: Ditto.
4012
4013 * sysdep.c: Ditto.
4014
4015 * xfaces.c: Ditto.
4016
40172004-02-09 Sam Steingold <sds@gnu.org>
4018
4019 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4020
40212004-02-09 Kim F. Storm <storm@cua.dk>
4022
4023 * fringe.c: New file. Move original fringe related declarations
4024 and code from dispextern.h and xdisp.c here.
4025 Rework code to support user defined fringe bitmaps, redefining
4026 standard bitmaps, ability to overlay user defined bitmap with
4027 overlay arrow bitmap, and add faces to bitmaps.
4028 (Voverflow_newline_into_fringe): Declare here.
4029 (enum fringe_bitmap_align): New enum.
4030 (..._bits): All bitmaps are now defined without bitswapping; that
4031 is now done in init_fringe_once (if necessary).
4032 (standard_bitmaps): New array with specifications for the
4033 standard fringe bitmaps.
4034 (fringe_faces): New array.
4035 (valid_fringe_bitmap_id_p): New function.
4036 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
4037 (draw_fringe_bitmap): New function which draws fringe bitmap,
4038 possibly overlaying bitmap with cursor in right fringe or the
4039 overlay arrow in the left fringe.
4040 (update_window_fringes): Do not handle overlay arrow here.
4041 Compare and copy fringe bitmap faces.
4042 (init_fringe_bitmap): New function.
4043 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
4044 define and destroy user defined fringe bitmaps.
4045 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
4046 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
4047 (syms_of_fringe): New function. Defsubr new DEFUNs.
4048 DEFVAR_LISP Voverflow_newline_into_fringe.
4049 (init_fringe_once, init_fringe): New functions.
4050 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4051
4052 * Makefile.in (obj): Add fringe.o.
4053 (fringe.o): New dependencies.
4054
4055 * dispextern.h (FRINGE_ID_BITS): New definition for number of
4056 bits allocated to hold a fringe number. Increase number of bits
4057 from 4 to 8 to allow user defined fringe bitmaps.
4058 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
4059 left_user_fringe_face_id, right_user_fringe_bitmap,
4060 right_user_fringe_face_id.
4061 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
4062 Move to new file fringe.c.
4063 (MAX_FRINGE_BITMAPS): Define here.
4064 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
4065 and overlay_p. Change member which to int.
4066 (struct redisplay_interface): New members define_fringe_bitmap
4067 and destroy_fringe_bitmap.
4068 (valid_fringe_bitmap_id_p): Add prototype.
4069 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
4070
4071 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
4072 arrows.
4073 (update_frame): Do flush_display if force_flush_display_p to
4074 ensure display (specifically fringes) are updated in a timely
4075 manner when resizing the frame by dragging the mouse.
4076 (update_window_line): Update row if overlay arrow changed.
4077 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
4078 or overlay arrow changed.
4079
4080 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
4081 syms_of_fringe, and init_fringe.
4082
4083 * frame.h (struct frame): New member force_flush_display_p.
4084
4085 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
4086 Add prototypes.
4087
4088 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
4089 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
4090 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
4091 Use cursor color for displaying cursor in fringe.
4092 (x_redisplay_interface): Add null handlers for
4093 define_fringe_bitmap and destroy_fringe_bitmap functions.
4094
4095 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
4096 xterm.c to handle overlayed fringe bitmaps and to use cursor color
4097 for displaying cursor in fringe.
4098 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
4099 specific functions to define and destroy fringe bitmaps in fringe_bmp.
4100 (w32_redisplay_interface): Add them to redisplay_interface.
4101 (w32_term_init): Call w32_init_fringe instead of explicitly
4102 defining fringe bitmaps in fringe_bmp array.
4103 (x_delete_display): Call w32_reset_fringes instead of explicitly
4104 destroying fringe bitmaps in fringe_bmp array.
4105
4106 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
4107 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
4108 (continued_bits, continuation_bits, ov_bits, first_line_bits)
4109 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
4110 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
4111 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
4112 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
4113 Move fringe handling vars and code to new file fringe.c.
4114 (handle_display_prop): Handle left-fringe and right-fringe
4115 display properties; store user fringe bitmaps in iterator.
4116 (move_it_in_display_line_to): Handle cursor in fringe at eob.
4117 (clear_garbaged_frames): Set force_flush_display_p if resized.
4118 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
4119 (display_line): Handle cursor in fringe at eob.
4120 (display_line): Set row user fringe bitmaps from iterator.
4121
4122 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
4123 Use cursor color for displaying cursor in fringe.
4124 (x_redisplay_interface): Add null handlers for
4125 define_fringe_bitmap and destroy_fringe_bitmap functions.
4126
41272004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4128
4129 * macfns.c (Fx_change_window_property): Make doc string and
4130 parameters same as for X version.
4131
4132 * w32fns.c (Fx_change_window_property): Ditto.
4133
41342004-02-07 Kim F. Storm <storm@cua.dk>
4135
4136 * xdisp.c (hscroll_window_tree): Position cursor near to right
4137 margin in hscrolled window when jumping to end of line (rather
4138 than centering cursor).
4139
4140 * process.c (wait_reading_process_input): Don't do adaptive read
4141 buffering if waiting for a specific process.
4142
41432004-02-05 Luc Teirlinck <teirllm@auburn.edu>
4144
4145 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
4146 (Fread_minibuffer, Feval_minibuffer)
4147 (Fread_string, Fread_no_blanks_input)
4148 (Fcompleting_read): Doc fixes.
4149 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
4150 completion-regexp-list. Define Qcase_fold_search and staticpro it.
4151 (read_minibuf): Fix initial comment.
4152 (Ftry_completion, Fall_completions, Ftest_completion): Bind
4153 case-fold-search to the value of completion-ignore-case when
4154 checking completion-regexp-list.
4155 (Fdisplay_completion_list): Make it handle arguments that are
4156 symbols. Doc fix.
4157
41582004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4159
4160 * xterm.h: Add declaration of free_frame_menubar.
4161
4162 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
4163 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
4164 (Fx_change_window_property): Add declaration of parameters type and
4165 format. Remove unused variable cons.
4166
4167 * xselect.c: Include stdio,h.
4168
41692004-02-05 Kenichi Handa <handa@m17n.org>
4170
4171 * fns.c (Fset_char_table_range): Fix previous change.
4172
4173 * buffer.c (Fset_buffer_multibyte): Fix docstring.
4174
41752004-02-04 Luc Teirlinck <teirllm@auburn.edu>
4176
4177 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
4178
41792004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
4180
4181 * keymap.c (Vmouse_events): Rename from Vmenu_events.
4182 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
4183
41842004-02-04 Kenichi Handa <handa@m17n.org>
4185
4186 * fns.c (Fset_char_table_range): Handle charsets ascii,
4187 eight-bit-control, and eight-bit-graphic correctly.
4188
41892004-02-03 Jason Rumney <jasonr@gnu.org>
4190
4191 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
4192
4193 * w32fns.c (x_to_w32_font): Likewise.
4194
41952004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4196
4197 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
4198 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
4199
4200 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
4201 ClientMessages.
4202
4203 * xselect.c: Include termhooks.h and X11/Xproto.h
4204 (x_check_property_data, x_fill_property_data)
4205 (x_property_data_to_lisp, mouse_position_for_drop)
4206 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
4207 (Fx_send_client_event): Move here from xfns.c.
4208 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
4209
4210 * xfns.c (x-send-client-message): Move to xselect.c
4211 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
4212 OUTER_P.
4213 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
4214 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
4215 if vector_ret_p is true.
4216 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
4217
42182004-02-02 Eli Zaretskii <eliz@gnu.org>
4219
4220 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
4221 basename of FILE relative to it, not FILE itself.
4222
42232004-02-02 Kenichi Handa <handa@m17n.org>
4224
4225 * coding.c (coding_restore_composition): Check invalid
4226 composition data more rigidly.
4227
42282004-01-30 Luc Teirlinck <teirllm@auburn.edu>
4229
4230 * fileio.c (Fread_file_name_internal): Correctly handle the case
4231 where insert-default-directory is nil.
4232 (Fread_file_name): Always return an empty string if the user exits
4233 with an empty minibuffer. Adapt the docstring accordingly.
4234 (syms_of_fileio): Adapt the docstring of insert-default-directory
4235 to the change in Fread_file_name.
4236
42372004-01-29 Eli Zaretskii <eliz@gnu.org>
4238
4239 * alloca.c [!alloca]: Fix the prototype for xfree.
4240
42412004-01-29 Kenichi Handa <handa@m17n.org>
4242
4243 * fns.c (string_char_to_byte): Optimize for ASCII only string.
4244 (string_byte_to_char): Likewise.
4245
42462004-01-28 Peter Runestig <peter@runestig.com>
4247
4248 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
4249
42502004-01-27 Steven Tamm <steventamm@mac.com>
4251
4252 * unexmacosx.c (unexec_copy): Do not copy more than was
4253 requested to prevent overwriting during unexec.
4254
42552004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4256
4257 * process.c (sigchld_handler): Add comment about not calling malloc.
4258
4259 * process.h: Add extern to synch_process_termsig.
4260
42612004-01-27 Steven Tamm <steventamm@mac.com>
4262
4263 * macterm.c (make_mac_frame, make_mac_terminal_frame):
4264 Move setting of scroll bars from make_mac_frame to
4265 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
4266
42672004-01-26 Richard M. Stallman <rms@gnu.org>
4268
4269 * search.c (Freplace_match): Handle nonexistent
4270 back-references properly.
4271
42722004-01-03 Richard M. Stallman <rms@gnu.org>
4273
4274 * window.c (decode_any_window): New function.
4275 (Fwindow_height, Fwindow_width, Fwindow_edges)
4276 (Fwindow_pixel_edges, Fwindow_inside_edges)
4277 (Fwindow_inside_pixel_edges): Use decode_any_window.
4278
42792004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4280
4281 * process.h: synch_process_termsig new variable.
4282
4283 * callproc.c: Define synch_process_termsig.
4284 (Fcall_process): Initiate synch_process_termsig to zero and
4285 check if non-zero and get signal name after subprocess has ended.
4286
4287 * process.c (sigchld_handler): Set synch_process_termsig
4288 if terminated by a signal. synch_process_death setting removed.
4289
4290 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
4291
42922004-01-26 Andreas Schwab <schwab@suse.de>
4293
4294 * print.c (print_preprocess): Declare size as EMACS_INT to not
4295 lose bits.
4296 (print_object): Likewise.
4297 * alloc.c (Fpurecopy): Likewise.
4298
42992004-01-25 Luc Teirlinck <teirllm@auburn.edu>
4300
4301 * window.c (Fwindow_minibuffer_p): Doc fix.
4302
43032004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
4304
4305 * editfns.c (Fformat): Make both passes accept the same set of flags.
4306
43072004-01-23 Kenichi Handa <handa@m17n.org>
4308
4309 * fns.c (Fmd5): If OBJECT is a buffer different from the current
4310 one, set buffer to OBJECT temporarily.
4311
43122004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4313
4314 * keyboard.c (kbd_buffer_gcpro): Remove.
4315 (kbd_buffer_store_event, clear_event, Fdiscard_input)
4316 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
4317 Don't initialize and/or maintain the variable any more. It was made
4318 redundant by my commit of 2003-06-15.
4319
4320 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
4321
43222004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4323
4324 * lisp.h: Add undef DECL_ALIGN.
4325
43262004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4327
4328 * process.c (wait_reading_process_input) [SYNC_INPUT]:
4329 Check interrupt_input_pending explicitly.
4330
4331 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
4332
4333 * keyboard.c (handle_async_input): New fun,
4334 extracted from input_available_signal.
4335 (input_available_signal, reinvoke_input_signal): Use it.
4336
43372004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
4338
4339 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
4340
4341 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
4342 manipulation macros for when tags are in the lower bits.
4343 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
4344 (DECL_ALIGN): New macro.
4345 (DEFUN): Use it.
4346
4347 * lisp.h [ENABLE_CHECKING]: Don't force union type.
4348
4349 * s/darwin.h (__attribute__): Remove outdated workaround.
4350
4351 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
4352
4353 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
4354 Don't check range of malloc address.
4355 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
4356
4357 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
4358
4359 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
4360
43612004-01-19 Kenichi Handa <handa@m17n.org>
4362
4363 * fontset.c (fontset_font_pattern): Fix previous change.
4364
43652004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
4366
4367 * xdisp.c (Voverflow_newline_into_fringe)
4368 (move_it_in_display_line_to, redisplay_internal)
4369 (update_window_fringes, redisplay_window, display_line, window):
4370 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
4371 that it compiles without a window-system.
4372 * dispnew.c (direct_output_for_insert, update_window): Likewise.
4373
43742004-01-16 Kim F. Storm <storm@cua.dk>
4375
4376 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
4377
4378 * buffer.c (init_buffer_once): Set buffer_defaults and
4379 buffer_local_flags for indicate_buffer_boundaries.
4380 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
4381 default- variable for it.
4382
4383 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
4384 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
4385 New members exact_window_width_line_p and cursor_in_fringe_p for
4386 overflowing newlines into right fringe.
4387 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
4388 and indicate_bottom_line_p for buffer boundaries and scrolling.
4389 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
4390 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
4391 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
4392 and HOLLOW_SQUARE_BITMAP.
4393 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
4394 Add prototypes.
4395
4396 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
4397 instead of related indicator fields.
4398 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
4399 (direct_output_for_insert): Handle exact width lines like
4400 contined lines. Call update_window_fringes.
4401 (update_window): Call update_window_fringes.
4402 (scrolling_window): Don't skip desired rows with changed bitmaps.
4403 Check if fringe bitmaps changes when assigning scrolled rows.
4404
4405 * xdisp.c (Voverflow_newline_into_fringe): New variable.
4406 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
4407 (move_it_in_display_line_to): Overflow newline into fringe for
4408 rows that are exactly as wide as the window.
4409 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
4410 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
4411 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
4412 (fringe_bitmaps): Add new bitmaps.
4413 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
4414 Select proper bitmap for cursor in fringe when appropriate.
4415 Handle alignment of bitmap to top or bottom of row.
4416 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
4417 done by update_window_fringes.
4418 (update_window_fringes, draw_window_fringes): New functions.
4419 (redisplay_internal): Call update_window_fringes in case only
4420 cursor row is updated.
4421 (redisplay_window): Call update_window_fringes.
4422 Explicitly call draw_window_fringes if redisplay was done using
4423 the current matrix or the overlay arrow is in the window.
4424 (try_window_reusing_current_matrix): Mark scrolled rows for
4425 fringe update (to update buffer-boundaries / scrolling icons).
4426 (find_last_unchanged_at_beg_row): Handle exact width lines line
4427 continued lines.
4428 (display_line): Overflow newline into fringe for rows that are
4429 exactly as wide as the window. Don't append space for newline
4430 in this case.
4431 (notice_overwritten_cursor): Explicitly clear cursor bitmap
4432 in fringe as if it had been overwritten.
4433 (erase_phys_cursor): Erase cursor bitmap in fringe.
4434 (syms_of_xdisp): Mark show-trailing-whitespace and
4435 void-text-area-pointer as user options.
4436 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
4437
4438 * xterm.c (x_update_window_end): Call draw_window_fringes.
4439 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4440 in row instead of actually drawing fringe bitmaps.
4441 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4442 (x_draw_window_cursor): Draw cursor in fringe.
4443
4444 * w32term.c (x_update_window_end): Call draw_window_fringes.
4445 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4446 in row instead of actually drawing fringe bitmaps.
4447 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4448 (w32_draw_window_cursor): Draw cursor in fringe.
4449
4450 * macterm.c (x_update_window_end): Call draw_window_fringes.
4451 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4452 in row instead of actually drawing fringe bitmaps.
4453 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4454 (mac_draw_window_cursor): Draw cursor in fringe.
4455
44562004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4457
4458 * xterm.c (handle_one_xevent): Don't handle characters that are part
4459 of an old style (XLookupString) compose sequence.
4460
44612004-01-15 Kenichi Handa <handa@m17n.org>
4462
4463 * search.c (Freplace_match): Use make_multibyte_string or
4464 make_unibyte_string according to the buffer multibyteness.
4465
44662004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
4467
4468 * alloc.c (struct interval_block, struct string_block)
4469 (struct symbol_block, struct marker_block, live_string_p)
4470 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
4471 Better preserve alignment for objects in blocks.
4472 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
4473
4474 * lread.c (defvar_per_buffer): Remove dead declaration.
4475
4476 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
4477 space size.
4478
44792004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4480
4481 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
4482 if a key press should pop down. Only pop down if a key is pressed
4483 outside the menu/dialog.
4484 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
4485 popup_get_selection.
4486 (create_and_show_dialog): Pass 1 for down_on_keypress to
4487 popup_get_selection.
4488
44892004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4490
4491 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
4492 BLOCK/UNBLOCK_INPUT.
4493
44942004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4495
4496 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
4497 specified.
4498
44992004-01-08 Kenichi Handa <handa@m17n.org>
4500
4501 * editfns.c (Fformat): Fix '&' to '&&'.
4502
45032004-01-08 Andreas Schwab <schwab@suse.de>
4504
4505 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
4506 size if PSEUDOVECTOR_FLAG is set.
4507
45082004-01-07 Kenichi Handa <handa@m17n.org>
4509
4510 * charset.c (Fdeclare_equiv_charset): Fix docstring.
4511
4512 * fontset.c (fontset_ref_via_base): Fix previous change.
4513
45142004-01-07 Kim F. Storm <storm@cua.dk>
4515
4516 * process.c (read_process_output): Only activate adaptive
4517 buffering if we read less than 256 bytes at a time.
4518
45192004-01-06 Kim F. Storm <storm@cua.dk>
4520
4521 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
4522 object and image object. Return glyph width and height.
4523 (mode_line_string, marginal_area_string): Ditto.
4524
4525 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4526 (marginal_area_string): Fix prototypes.
4527
4528 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
4529 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
4530 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
4531
4532 * keyboard.c (make_lispy_position): Use modified mode_line_string,
4533 buffer_posn_from_coords, and marginal_area_string functions to
4534 include both string object and image object in the lispy position.
4535 Also add actual glyph width and height to position.
4536 (read_key_sequence): Use real buffer position from mouse
4537 event to find keymap property even when click is in marginal area.
4538
4539 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
4540 mode_line_string and marginal_area_string functions to handle
4541 both string object and image object properties.
4542
45432004-01-06 Andreas Schwab <schwab@suse.de>
4544
4545 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
4546 character.
4547
45482004-01-02 Andreas Schwab <schwab@suse.de>
4549
4550 * macterm.c (emacs_options, x_initialized, same_x_server):
4551 Remove unused (and duplicated) definitions.
4552
45532004-01-02 Kim F. Storm <storm@cua.dk>
4554
4555 * process.h (struct Lisp_Process): New members for adaptive read
4556 buffering: adaptive_read_buffering, read_output_delay, and
4557 read_output_skip.
4558
4559 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
4560 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
4561 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
4562 (process_output_delay_count, process_output_skip): New vars.
4563 (Vprocess_adaptive_read_buffering): New variable.
4564 (make_process): Initialize adaptive read buffering members.
4565 (Fstart_process): Set adaptive_read_buffering member.
4566 (deactivate_process): Cleanup adaptive read buffering.
4567 (wait_reading_process_input): Temporarily omit delayed
4568 subprocesses from the set of file descriptors to read from;
4569 adjust the select timeout if we skipped any subprocesses.
4570 (read_process_output): Increase adaptive read buffering delay if
4571 we read less than a full buffer; reduce delay when we read a
4572 full buffer.
4573 (send_process): Simplify using local Lisp_Process var.
4574 Reset adaptive read buffering delay after write.
4575 (init_process): Initialize process_output_delay_count and
4576 process_output_skip.
4577 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
4578
45792004-01-01 Jason Rumney <jasonr@gnu.org>
4580
4581 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
4582
45832003-12-30 Luc Teirlinck <teirllm@auburn.edu>
4584
4585 * print.c (Ferror_message_string): Add hyperlink in the docstring
4586 to the definition of `signal' in the Elisp manual.
4587 * eval.c (Fsignal): Ditto.
4588
45892003-12-29 James Clark <jjc@jclark.com>
4590
4591 * fns.c (internal_equal): Return t for two NaN arguments.
4592
45932003-12-29 Richard M. Stallman <rms@gnu.org>
4594
4595 * data.c (store_symval_forwarding): Handle setting
4596 default-fill-column, etc., by changing the value in
4597 buffers that use the default.
4598
4599 * minibuf.c (Fset_minibuffer_window): Doc fix.
4600
4601 * fileio.c (choose_write_coding_system): Ignore auto_saving
4602 if using the visited file for auto saves.
4603 (Fwrite_region): Don't update SAVE_MODIFF
4604 if auto-saving in visited file.
4605
46062003-12-29 Kenichi Handa <handa@m17n.org>
4607
4608 * dispextern.h (face_font_available_p): Extern it.
4609
4610 * fontset.c (Voverriding_fontspec_alist): New variable.
4611 (lookup_overriding_fontspec): New function.
4612 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
4613 (fontset_font_pattern): Likewise.
4614 (regulalize_fontname): New function.
4615 (Fset_fontset_font): Call regulalize_fontname.
4616 (Fset_overriding_fontspec_internal): New function.
4617 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
4618 Defsubr Sset_overriding_fontspec_internal.
4619
4620 * xfaces.c (face_font_available_p): New function.
4621
46222003-12-28 Richard M. Stallman <rms@gnu.org>
4623
4624 * buffer.c (Fother_buffer): Don't crash if BUF is nil
4625 or if its name is nil.
4626
4627 * buffer.c (Fkill_buffer): Don't delete auto-save file
4628 if it's the same as the visited file.
4629
46302003-12-28 Luc Teirlinck <teirllm@auburn.edu>
4631
4632 * coding.c (Fcheck_coding_system): Doc fix.
4633
46342003-12-28 Kim F. Storm <storm@cua.dk>
4635
4636 * Makefile.in (eval.o): Depend on dispextern.h.
4637
4638 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
4639 image glyph using image's ascent.
4640 (mode_line_string): Return image glyph as object clicked on.
4641 Adjust y0 for image glyph using image's ascent.
4642
4643 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
4644 (struct glyph): New members, ascent and descent. Used to save
4645 this glyph's ascent and descent, instead of having.
4646 (struct glyph): Declare member face_id using FACE_ID_BITS.
4647 (find_hot_spot): Add prototype.
4648
4649 * keyboard.c (Qimage): Remove extern (now in lisp.h).
4650 (QCmap): Declare extern.
4651 (make_lispy_position): When position is inside image hot-spot,
4652 use hot-spot element's id as posn element.
4653
4654 * lisp.h (IMAGEP): New macro to test for image object type.
4655 (Qimage): Declare extern.
4656
4657 * macfns.c (Qimage): Remove extern (now in lisp.h).
4658 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4659
4660 * macterm.c (Qface, Qmouse_face): Remove unused externs.
4661
4662 * w32fns.c (Qimage): Remove extern (now in lisp.h).
4663 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4664
4665 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
4666
4667 * w32term.c (Qface, Qmouse_face): Remove unused externs.
4668
4669 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
4670 pointer types.
4671 (Qrelative_width, Qalign_to): Remove unused variables.
4672 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
4673 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
4674 image maps.
4675 (x_y_to_hpos_vpos): Return glyph relative coordinates through
4676 new dx and dy args.
4677 Remove buffer_only_p arg (always 0). Simplify code accordingly.
4678 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
4679 than row's ascent and height, to get sensible height on tall rows.
4680 (build_desired_tool_bar_string): Remove Qimage extern.
4681 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
4682 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
4683 image glyph is alone on the last line.
4684 (append_glyph, append_composite_glyph, produce_image_glyph)
4685 (append_stretch_glyph): Set glyph's ascent and descent.
4686 (on_hot_spot_p): New function to check if position is inside an
4687 rectangular, circular, or polygon-shaped image hot-spot,
4688 (find_hot_spot): New function to search for image hot-spot.
4689 (Flookup_image_map): New defun to search for image hot-spot.
4690 (define_frame_cursor1): New aux function to determine frame pointer.
4691 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4692 Handle `pointer' text property and :pointer image property to
4693 control frame pointer shape. Detect image hot-spots for pointer
4694 and help_echo properties. Use define_frame_cursor1.
4695 (note_mouse_highlight): Use Vvoid_text_area_pointer.
4696 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
4697 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
4698
4699 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
4700
4701 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
4702 (Qimage): Remove extern (now in lisp.h).
4703 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4704
4705 * xmenu.c (show_help_event): Remove unused code.
4706
4707 * xterm.c (Qface, Qmouse_face): Remove unused externs.
4708 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
4709 row's ascent and descent, to get a sensible height on tall rows.
4710
47112003-12-25 Luc Teirlinck <teirllm@auburn.edu>
4712
4713 * minibuf.c (Fcompleting_read): Undo previous change.
4714
47152003-12-25 Lars Hansen <larsh@math.ku.dk>
4716
4717 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
4718 Arguments GCPRO'ed in call to file name handler.
4719
47202003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
4721
4722 * termcap.c (tgetst1): Scan for "%pN"; if all
4723 N are continuous in [1,9], remove all "%pN".
4724
47252003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4726
4727 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
4728
4729 * xfaces.c (lface_fully_specified_p): Take into account that
4730 MAC OS always have unspecified stipple.
4731
47322003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4733
4734 * tparam.c (tparam1): Add handling for `%pN', which
4735 means use param N for the next substitution.
4736
47372003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4738
4739 * xfaces.c (Fcolor_gray_p): Fix omission bug:
4740 In case `frame' is nil, consult the selected frame.
4741 (Fcolor_supported_p): Likewise.
4742
47432003-12-23 Luc Teirlinck <teirllm@auburn.edu>
4744
4745 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
4746 Doc fixes.
4747
4748 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
4749 and an integer. Adapt the introductory comment accordingly.
4750 (Fread_from_minibuffer): Delete code moved into read_minibuf.
4751 Doc fix.
4752 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
4753 read_minibuf.
4754 (Fcompleting_read): Delete code moved into read_minibuf.
4755 (Ftest_completion): Make it handle obarrays and hash tables correctly.
4756
47572003-12-03 Kenichi Handa <handa@m17n.org>
4758
4759 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
4760 encoding sequence.
4761
47622003-12-01 Kenichi Handa <handa@m17n.org>
4763
4764 * composite.c (syms_of_composite): Don't make the compostion hash
4765 table week.
4766
47672003-11-30 Luc Teirlinck <teirllm@auburn.edu>
4768
4769 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
4770 * textprop.c (Fget_char_property_and_overlay): New function.
4771 (syms_of_textprop): Defsubr it.
4772
47732003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4774
4775 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
4776 to compile on terminal configuration.
4777
4778 * fileio.c (Fread_file_name): Check use_file_dialog also before
4779 calling Fx_file_dialog.
4780
4781 * fns.c: use_file_dialog: New variable.
4782 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
4783
47842003-11-29 Kim F. Storm <storm@cua.dk>
4785
4786 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
4787 (syms_of_msdos): Don't intern and staticpro them.
4788
47892003-11-27 Kim F. Storm <storm@cua.dk>
4790
4791 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
4792 coordinates relative to glyph at posn. If glyph is an image,
4793 return that as object at posn. Callers changed.
4794 (mode_line_string, marginal_area_string): Calculate and return
4795 pixel coordinates relative to glyph. Callers changed.
4796
4797 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4798 (marginal_area_string): Fix prototypes.
4799 (window_box_left_offset, window_box_right_offset): Add prototypes.
4800
4801 * frame.h (get_specified_cursor_type, get_window_cursor_type):
4802 Remove prototypes.
4803
4804 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
4805
4806 * keyboard.c (make_lispy_position): Add x and y coordinates
4807 relative to the current glyph as 7th element of position.
4808 If glyph is an image, return it in the object element.
4809 (read_key_sequence): Skip checks for keymap property in cases
4810 where POSN_STRING is not a string (e.g. an image).
4811
4812 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4813 (Vshow_text_cursor_in_void): New variable.
4814 (glyph_to_pixel_coords): Don't use negative hpos.
4815 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4816 (append_stretch_glyph): Change ascent arg to be actual value
4817 in pixels rather than ratio to height. Callers changed.
4818 (calc_pixel_width_or_height): New aux function, implementing
4819 pixel based artihmetic for glyph widths and heights.
4820 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4821 :width, :height, :align-to, and :ascent, thus allowing these to
4822 be specified in pixels as well as multiples of characters.
4823 Don't produce stretch glyphs with zero width or height.
4824 (get_specified_cursor_type): Declare static.
4825 (get_window_cursor_type): Declare static. Add glyph arg to be
4826 able to know when cursor is on an image; always substitute
4827 hollow-box cursor for filled-box cursor on images, to avoid
4828 negative images and flicker when blinking the cursor.
4829 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4830 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4831 than vertical scroll-bar cursor in display margins.
4832 (note_mouse_highlight): Use non-text cursor rather than text
4833 cursor in fringes and over images in the text area.
4834 Use non-text cursor when mouse pointer is outside editable text,
4835 i.e. in the void after end-of-line or end-of-buffer; this was
4836 already done for W32, but is now standard for all systems --
4837 user can toggle show-text-cursor-in-void to get old behaviour.
4838 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4839 Vdisplay_pixels_per_inch.
4840
48412003-11-25 Andreas Schwab <schwab@suse.de>
4842
4843 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4844 EMACS_INT to not lose bits.
4845 (Ffillarray): Don't set bits beyond the size of a bool vector.
4846
48472003-11-25 Kim F. Storm <storm@cua.dk>
4848
4849 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4850 define this defun on systems that cannot use stderr as lvalue.
4851
48522003-11-24 Gerd Moellmann <gerd@gnu.org>
4853
4854 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4855 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4856 ld's default is incompatible with unexec.
4857
48582003-11-23 Kim F. Storm <storm@cua.dk>
4859
4860 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4861 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4862 (Fforce_window_update): New defun.
4863 (syms_of_window): Defsubr it.
4864 (Fset_window_margins, Fset_window_fringes): Doc fix.
4865
4866 * print.c (Fredirect_debugging_output): New defun.
4867 (syms_of_print): Defsubr it.
4868
48692003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4870
4871 * fns.c (Fset_char_table_parent): Doc fix.
4872
48732003-11-22 Kim F. Storm <storm@cua.dk>
4874
4875 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4876 for glyph clicked on, rather than (unused) pixel positions.
4877 (mode_line_string, marginal_area_string): Change X and Y args to
4878 pointers for returning actual row/column for glyph clicked on.
4879 Simplify and optimize loops.
4880
4881 * dispextern.h (mode_line_string, marginal_area_string):
4882 Update prototypes.
4883
4884 * keyboard.c (make_lispy_position): New function for generating
4885 mouse click positions from frame and pixel coordinates.
4886 Enhanced to return buffer position and actual row/column for
4887 events outside the text area using updated mode_line_string and
4888 marginal_area_string functions.
4889 Return left-fringe and right-fringe clicks as such, rather than
4890 clicks in text area.
4891 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4892 pixel_to_glyph_coords, as we never use the results.
4893 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4894 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4895 Eliminate unused code in WHEEL_EVENT handling.
4896 (make_lispy_movement): Use make_lispy_position.
4897
4898 * window.c (coordinates_in_window): Remove redundant tests.
4899 Fix returned X pixel value for left-margin.
4900
4901 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4902 mode_line_string and marginal_area_string parameters.
4903
49042003-11-22 Lars Hansen <larsh@math.ku.dk>
4905
4906 * w32.c (struct the_group, getgrgid): Add.
4907 * mac.c (struct my_group, getgrgid): Add.
4908
49092003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4910
4911 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4912
49132003-11-21 Lars Hansen <larsh@math.ku.dk>
4914
4915 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4916 include in call to file name handler. Optionally translate numeric
4917 UID and GID to strings. Update docstring.
4918 (directory_files_internal): Add parameter ID-FORMAT.
4919 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4920 include in call to file name handler and call to
4921 directory_files_internal. Update Docstring.
4922 (Fdirectory_files): Add dummy parameter in call to
4923 directory_files_internal.
4924 * lisp.h (Qinteger): Add.
4925 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4926 (Ffile_attributes): Add parameter.
4927 * data.c (Qinteger): Export.
4928
49292003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4930
4931 * fns.c (Freverse, Fnreverse): Doc fixes.
4932
49332003-11-19 Kim F. Storm <storm@cua.dk>
4934
4935 * xdisp.c (init_iterator): Initialize it->start to position
4936 before reseating (in case start position is invisible).
4937 (init_to_row_start): Set it->start to row-start.
4938 (redisplay_window): Accept optional_new_start if start position
4939 is invisible (in which case IT_CHARPOS overshoots PT).
4940 (display_line): Setup row->start from it->start (rather than
4941 it->current which is wrong if first char on line is invisible).
4942 When done, reseat it->start to it->current (= start of next row).
4943 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4944 is only partially visible.
4945
4946 * dispextern.h (struct it): New member start.
4947
49482003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4949
4950 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4951 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4952 of block_index outside of the macro call.
4953 (Fgarbage_collect): Remove null code.
4954
4955 * m/amdx86-64.h: Don't redefine XPNTR.
4956
4957 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4958 of VALMASK.
4959
4960 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4961 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4962 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4963
4964 * lisp.h (VALMASK): Only define for non-union type.
4965 (MARKBIT): Remove.
4966 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4967 (XTYPE): Define unconditionally.
4968 (XSETTYPE): Remove one more remnant.
4969 (EQ): Define differently for the union and non-union cases.
4970 (INTMASK): New bit mask.
4971 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4972 (GC_EQ): Delegate to EQ.
4973
4974 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4975
49762003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4977
4978 * xterm.c (x_window_to_scroll_bar): Move check of display to
4979 where window_id is compared.
4980
49812003-11-17 Kim F. Storm <storm@cua.dk>
4982
4983 * dispextern.h (struct it): New member first_vpos.
4984
4985 * xdisp.c (start_display): Set it->first_vpos.
4986 (try_window_id): Use first_vpos to start display in first _text_
4987 line if no reusable lines at start of window with header line.
4988
49892003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4990
4991 * w32fns.c (XPutPixel):
4992 * w32bdf.c (w32_init_bdf_font):
4993 * sunfns.c (sel_read):
4994 * process.c (Fmake_network_process):
4995 * frame.c (store_frame_param):
4996 * fontset.c (Fset_fontset_font):
4997 * emacs.c (shut_down_emacs):
4998 * ccl.c (ccl_driver): Remove period at end of error message.
4999
5000 * config.in: Regenerate.
5001
5002 * xfns.c (x_window_to_frame, x_any_window_to_frame)
5003 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5004 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
5005 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
5006 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
5007
5008 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
5009
5010 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
5011 (XTmouse_position, handle_one_xevent): Pass Display* to
5012 x_window_to_scroll_bar.
5013 (x_window_to_scroll_bar): Take a Display* argument.
5014 Check that display for frame is equal to Display* argument.
5015 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
5016 x_display_info_for_display instead. Use Display in xev instead
5017 of GDK_DISPLAY.
5018 (x_dispatch_event): Call x_display_info_for_display.
5019 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
5020 (x_connection_closed): Call xg_display_close for GTK.
5021 (x_term_init): Call xg_display_open for additional displays.
5022 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
5023 for GTK.
5024
5025 * xmenu.c (single_menu_item, mouse_position_for_popup)
5026 (x_activate_menubar): Formatting adjustments.
5027
5028 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
5029 adjustments.
5030
5031 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
5032 (xg_display_close, xg_create_default_cursor)
5033 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
5034 handling.
5035 (xg_left_ptr_cursor): Remove.
5036 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
5037 cursor here.
5038 (xg_win_to_widget): Take Display* argument, call
5039 gdk_xid_table_lookup_for_display.
5040 (xg_create_frame_widgets, xg_get_file_name, create_menus)
5041 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
5042 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
5043 in FRAME_X_DISPLAY_INFO.
5044 (xg_get_scroll_id_for_window): Take Display* argument.
5045 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
5046 (xg_initialize): Remove xg_left_ptr_cursor.
5047
5048 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
5049 Display* argument.
5050 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
5051
50522003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5053
5054 * xterm.c (x_detect_focus_change): Do not change focus frame for
5055 Enter/LeaveNotify if the current focus frame has explicit focus.
5056
50572003-11-14 Kim F. Storm <storm@cua.dk>
5058
5059 * dispnew.c (update_text_area): Fix redisplay error when hscroll
5060 is active and first glyph is only partially visible.
5061
50622003-11-13 Kenichi Handa <handa@m17n.org>
5063
5064 * xdisp.c (select_frame_for_redisplay): New function.
5065 (redisplay_internal): Record also selected_frame for
5066 unwind_redisplay. Call select_frame_for_redisplay before
5067 redrawing each frame.
5068 (unwind_redisplay): Argument changed to a cons.
5069
50702003-11-12 Luc Teirlinck <teirllm@auburn.edu>
5071
5072 * fns.c (Fstring_to_multibyte): Doc fix.
5073
50742003-11-11 Kenichi Handa <handa@m17n.org>
5075
5076 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
5077
50782003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5079
5080 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
5081 program specified positions.
5082
50832003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5084
5085 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
5086
50872003-11-08 Kenichi Handa <handa@m17n.org>
5088
5089 * Makefile.in (lisp): Add kannada.el.
5090 (shortlisp): Likewise.
5091
50922003-11-07 Kenichi Handa <handa@m17n.org>
5093
5094 * coding.c (coding_allocate_composition_data):
5095 Reset coding->composing to COMPOSITION_NO.
5096 (coding_restore_composition): Detect invalid composition data.
5097 Give Fstring and Fvector a Lispy integer, not C int.
5098
50992003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
5100
5101 * floatfns.c (Flogb): Don't use VALMASK.
5102
5103 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
5104 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
5105
5106 * lisp.h (XINT): Move the cast to clarify what is going on.
5107 (GCTYPEMASK, XSETTYPE): Remove.
5108 (XGCTYPE): Make it an alias of XTYPE.
5109
51102003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5111
5112 * xterm.c (x_term_init): Fix formatting.
5113
51142003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5115
5116 * gtkutil.h (xg_have_tear_offs): Declare.
5117 (xg_keep_popup, xg_did_tearoff): Remove.
5118
5119 * gtkutil.c: Remove variable xg_did_tearoff.
5120 (xg_have_tear_offs): New function.
5121 (tearoff_remove): Just decrease xg_detached_menus.
5122 (tearoff_activate): Increase xg_detached_menus and call
5123 tearoff_remove when tearoff is removed.
5124 (xg_keep_popup): Remove function.
5125 (create_menus): Give add_tearoff_p as argument to recursive
5126 call to create_menus.
5127 (xg_create_widget): Use variables instead of multiple
5128 strcmp. Tell create_menus to create tear off only for
5129 menu bar menus.
5130 (xg_update_menubar): Change title for a detached menu also.
5131 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
5132 of deep_p.
5133 (xg_initialize): Initialize xg_detached_menus, remove
5134 initialization of xg_did_tearoff.
5135
5136 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
5137 xg_have_tear_offs returns non-zero.
5138 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
5139 call to xg_keep_popup.
5140
51412003-11-01 Andrew Choi <akochoi@shaw.ca>
5142
5143 * macterm.c (XTread_socket): Handle menubar selection and grow
5144 window only for mouseDown events.
5145
51462003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5147
5148 * xterm.c (x_term_init): For GTK part, increase x_initialized
5149 to check for more than one display. Use error instead of return 0.
5150
51512003-10-31 Andrew Choi <akochoi@shaw.ca>
5152
5153 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
5154 (copy_dysymtab): Call it.
5155
51562003-10-31 Luc Teirlinck <teirllm@auburn.edu>
5157
5158 * eval.c (Fdefvaralias): Doc fix.
5159
51602003-10-26 Luc Teirlinck <teirllm@auburn.edu>
5161
5162 * data.c (Fsetplist): Doc fix.
5163
51642003-10-14 Lute Kamstra <lute@gnu.org>
5165
5166 * window.c (Fset_window_fringes): Clarify docstring.
5167
51682003-10-14 Kim F. Storm <storm@cua.dk>
5169
5170 * window.c (Fset_window_margins): Simplify arg checking.
5171
51722003-10-13 Richard M. Stallman <rms@gnu.org>
5173
5174 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
5175 (print_partial_compiled_pattern): Replace assert with a printout.
5176 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
5177
5178 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
5179
5180 * window.c (Fset_window_margins): Allow only integers as args.
5181 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
5182 Doc fixes.
5183
51842003-10-13 Lute Kamstra <lute@gnu.org>
5185
5186 * window.c (Fset_window_fringes): Elaborate docstring.
5187
51882003-10-12 Andrew Choi <akochoi@shaw.ca>
5189
5190 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
5191
5192 * s/darwin.h (GC_MARK_STACK): Define.
5193
51942003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5195
5196 * window.c (shrink_windows): New function.
5197 (size_window): Call shrink_windows to calculate window sizes when
5198 shrinking frame with more than one window.
5199
52002003-10-12 Kim F. Storm <storm@cua.dk>
5201
5202 * xdisp.c (compute_fringe_widths): Doc fix.
5203
52042003-10-08 Kenichi Handa <handa@m17n.org>
5205
5206 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
5207
52082003-10-07 Kenichi Handa <handa@m17n.org>
5209
5210 * coding.c (Qcoding_system_define_form): New variable.
5211 (syms_of_coding): Intern and staticpro it.
5212 (Fcheck_coding_system): Try to autoload the definition of
5213 CODING-SYSTEM.
5214
52152003-10-05 Luc Teirlinck <teirllm@auburn.edu>
5216
5217 * fns.c (Frequire): Doc fix.
5218
52192003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5220
5221 * xfns.c (Fx_send_client_event): New function as a base for
5222 manipulating extended window manager hints.
5223 (Fx_send_client_event): Remove unused variable s.
5224
5225 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
5226 that function is removed.
5227
5228 * xterm.c (x_set_offset): Use move_offset_left/top instead of
5229 x/y_pixels_outer_diff.
5230 (x_check_expected_move): Calculate move_offset_left/top.
5231
5232 * xterm.h (struct x_output): New members: move_offset_top/left.
5233
5234 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
5235 call x_set_offset directly.
5236
5237 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
5238
5239 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
5240
5241 * xterm.c (x_delete_display): Free font names and font_encoder
5242 in dpyinfo->font_table.
5243
5244 * xfns.c (Fx_close_connection): Only call XFreeFont here.
5245 Move xfree of font names to x_delete_display.
5246
5247 * xterm.h (struct x_display_info): New member, wm_type.
5248 (struct x_output): New members, expected_top/left and
5249 check_expected_move.
5250
5251 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
5252 is received.
5253 (handle_one_xevent): Rename x_check_expected_move from
5254 x_check_fullscreen_move.
5255 (x_set_offset): Only add WM decoration sizes to modified_top/left
5256 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
5257 (x_check_expected_move): Rename from x_check_fullscreen_move.
5258 Removed fullscreen specific code. Use check_expected_move,
5259 expected_left/top instead. Also, set wm_type.
5260 (x_term_init): Initialize wm_type to unknown.
5261
5262 * frame.c (x_fullscreen_move): Remove addition of WM decoration
5263 sizes to move_x/y.
5264
52652003-10-03 Kenichi Handa <handa@m17n.org>
5266
5267 * macterm.c (x_load_font): Clear all members of FONTP before start
5268 filling them.
5269
52702003-10-02 Kenichi Handa <handa@m17n.org>
5271
5272 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
5273 before calling find_ccl_program_func. Call find_ccl_program_func
5274 only when fontp->font_encoder is not NULL.
5275
5276 * xterm.c (x_load_font): Clear all members of FONTP before start
5277 filling them.
5278
52792003-10-03 John Paul Wallington <jpw@gnu.org>
5280
5281 * keymap.c (map_keymap): Don't abort when binding is a vector.
5282
52832003-10-02 Jason Rumney <jasonr@gnu.org>
5284
5285 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
5286 Sync dependencies with Makefile.in.
5287 (alloca.o): Remove.
5288
5289 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
5290 filling them.
5291
5292 * w32bdf.c (w32_load_bdf_font): Likewise.
5293
52942003-09-30 Richard M. Stallman <rms@gnu.org>
5295
5296 * term.c (set_tty_color_mode): Calculate current_mode_spec
5297 regardless of value of VAL.
5298
5299 * intervals.c (graft_intervals_into_buffer):
5300 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
5301 Handle over_used when splitting UNDER.
5302
53032003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5304
5305 * regex.c (regex_compile): Free the stack when returning from function.
5306
53072003-09-28 Kenichi Handa <handa@m17n.org>
5308
5309 * fontset.c (Finternal_char_font): Change return value to
5310 cons (FONT-NAME . GLYPH-CODE).
5311
53122003-09-28 Eli Zaretskii <eliz@gnu.org>
5313
5314 * term.c (tty_setup_colors): Treat any negative argument as -1.
5315
53162003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
5317
5318 * process.c (send_process): Delete unused temp_buf.
5319
53202003-09-26 Dave Love <fx@gnu.org>
5321
5322 * xterm.c (x_bitmap_mask): Declare.
5323
53242003-09-25 Dave Love <fx@gnu.org>
5325
5326 * Makefile.in (fns.o): Depend on md5.h.
5327
53282003-09-25 Kim F. Storm <storm@cua.dk>
5329
5330 * window.c (set_window_buffer): Fix redisplay problems when
5331 switching between buffers with different display margin widths.
5332
53332003-09-23 Kim F. Storm <storm@cua.dk>
5334
5335 * process.c (set_socket_option): Fix :bindtodevice option.
5336 (Fset_network_process_option): Update process contact list when
5337 setting option succeeds.
5338 (Fmake_network_process): Doc fix.
5339
53402003-09-23 Dave Love <fx@gnu.org>
5341
5342 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
5343
53442003-09-22 Eli Zaretskii <eliz@gnu.org>
5345
5346 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
5347 color mode is an integer number (it could be -1).
5348
53492003-09-22 Richard M. Stallman <rms@gnu.org>
5350
5351 * intervals.c (graft_intervals_into_buffer): Correct the main loop
5352 in the case where OVER is longer than UNDER.
5353
53542003-09-22 Masatake YAMATO <jet@gyve.org>
5355
5356 * window.c (Fset_window_scroll_bars): Validate the value of
5357 `vertical_type'.
5358
53592003-09-21 Kim F. Storm <storm@cua.dk>
5360
5361 * frame.c (Vdefault_frame_scroll_bars): New variable.
5362 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
5363 (syms_of_frame): DEFVAR_LISP it, and initialize according to
5364 window-system default scroll bar position.
5365
5366 * window.c (Fwindow_scroll_bars): Doc fix.
5367
53682003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5369
5370 * xterm.c (x_set_offset): Take window manager decorations into account.
5371
53722003-09-19 Richard M. Stallman <rms@gnu.org>
5373
5374 * atimer.h: Don't include lisp.h.
5375 (P_): Define it here (as well as elsewhere).
5376
5377 * print.c (Fprin1_to_string): Move the PRINTPREPARE
5378 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
5379
5380 * data.c (Fvariable_binding_locus): New function.
5381 (syms_of_data): defsubr it.
5382 (Flocal_variable_p): Delete duplicate call to indirect_variable.
5383
53842003-09-18 Dave Love <fx@gnu.org>
5385
5386 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
5387
5388 * process.c (Fnetwork_interface_info): Fix type error.
5389 (Fnetwork_interface_list): Doc fix.
5390 (read_process_output, read_process_output): Delete unused var.
5391
53922003-09-17 Kim F. Storm <storm@cua.dk>
5393
5394 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
5395 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
5396 (Fnetwork_interface_info): Check that ifreq struct has required
5397 fields before accessing them; this requires that those fields are
5398 defined as macros, which may be too restrictive on some platforms,
5399 but it is better than failing on other platforms.
5400 (syms_of_process): Only defsubr above fns when included.
5401
54022003-09-17 Dave Love <fx@gnu.org>
5403
5404 * unexalpha.c: Don't include varargs.h.
5405
54062003-09-17 Kim F. Storm <storm@cua.dk>
5407
5408 * process.c (Fset_process_sentinel): Add sentinel to childp plist
5409 for network process.
5410 (socket_options): Add `:' prefix to option names. Add optbit field.
5411 (set_socket_option): Remove no_error arg and special handling of s < 0.
5412 Return 1<<optbit for known option, 0 for unknown.
5413 Do not interpret 0 as false for boolean option (only nil).
5414 Pass failed option and value to report_file_error.
5415 (Fset_network_process_options): Replace by Fset_network_process_option.
5416 (Fset_network_process_option): New function to set just one option.
5417 (Fmake_network_process): Allow :coding arg to be a cons.
5418 Allow :server arg to be an integer specifying backlog size.
5419 Remove :options arg, and allow options to be specified directly
5420 as :KEY, VALUE pairs. Parse these options before binding socket.
5421 As before, :reuseaddr t is default for a server process, but this
5422 can now be disabled by specifying :reuseaddr nil.
5423 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
5424 (init_process): Availability of network options is now checked with
5425 simpler syntax (featurep 'make-network-process :OPTION); use loop to
5426 setup features.
5427 (syms_of_process): Fix defsubr's for the replaced functions.
5428
54292003-09-16 Dave Love <fx@gnu.org>
5430
5431 * Makefile.in: Depend on coding.h.
5432
54332003-09-14 Kim F. Storm <storm@cua.dk>
5434
5435 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
5436 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
5437 (syms_of_process): Defsubr them.
5438
5439 * config.in: Regenerate.
5440
54412003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5442
5443 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
5444 * m/news-r6.h (XUNMARK): Remove.
5445 * m/mips.h (XUNMARK): Remove.
5446 * m/mips-siemens.h (XUNMARK): Remove.
5447 * m/iris4d.h (XUNMARK): Remove.
5448 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
5449
54502003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5451
5452 * lisp.h (VALBITS): Don't remove 1 for the markbit.
5453 (union Lisp_Object): Use unsigned int for types. Remove markbit.
5454 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
5455 (XTYPE): Use unsigned right-shift.
5456 (XMARKBIT, XMARK, XUNMARK): Remove.
5457
5458 * alloc.c (init_intervals, init_symbol, init_marker):
5459 Don't preallocate anything.
5460 (Fgarbage_collect, mark_object): Ignore the markbit.
5461
5462 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
5463
54642003-09-08 Lute Kamstra <lute@gnu.org>
5465
5466 * xdisp.c (pint2hrstr): New function.
5467 (decode_mode_spec): Add `%i' and `%I' specs.
5468 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
5469 for `mode-line-format'.
5470
54712003-09-07 Andreas Schwab <schwab@suse.de>
5472
5473 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
5474 avoid warning.
5475
54762003-09-07 Eli Zaretskii <eliz@gnu.org>
5477
5478 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
5479
54802003-09-03 Kim F. Storm <storm@cua.dk>
5481
5482 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
5483 change (superseded by 2002-08-30 change); the default blink-off
5484 cursor is now again "no cursor".
5485
54862003-09-01 Jason Rumney <jasonr@gnu.org>
5487
5488 * makefile.w32-in (alloca.o): Remove.
5489 (coding.o): Depend on intervals.h
5490 (emacs.o, bytecode.o): Depend on window.h
5491
54922003-09-01 Dave Love <fx@gnu.org>
5493
5494 * Makefile.in (alloca.o): Remove commands.
5495 (coding.o): Depend on intervals.h composite.h window.h.
5496 (emacs.o): Depend on window.h keyboard.h keymap.h.
5497 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
5498 (bytecode.o): Depend on window.h.
5499
55002003-08-31 Jason Rumney <jasonr@gnu.org>
5501
5502 * w32term.c (w32_per_char_metric): Allow cached metrics to be
5503 returned even when font_type is unknown.
5504
5505 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
5506
55072003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5508
5509 * xterm.c (x_term_init): Initialize new fields in x_display_info.
5510
5511 * xterm.h (struct x_display_info): Add red/green/blue_bits and
5512 *_offset.
5513
5514 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
5515 calculate pixel value.
5516
55172003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
5518
5519 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
5520 Don't tell redisplay display is accurate when it's actually been
5521 paused for pending input.
5522
55232003-08-29 Richard M. Stallman <rms@gnu.org>
5524
5525 * dispnew.c (adjust_glyph_matrix): Call window_box
5526 whenever W is nonzero.
5527
5528 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5529 (Fkill_local_variable, Fmake_variable_frame_local)
5530 (Flocal_variable_p, Flocal_variable_if_set_p):
5531 Use indirect_variable to trace thru variable aliases.
5532
5533 * config.in: Updated.
5534
5535 * callint.c (Fcall_interactively): Save and restore
5536 Vthis_command, Vthis_original_command, real_this_command,
5537 and current_kboard->Vlast_command.
5538
5539 * abbrev.c (Fexpand_abbrev): Insert before deleting.
5540
55412003-08-29 Gerd Moellmann <gerd@gnu.org>
5542
5543 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
5544
55452003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
5546
5547 * coding.c (decode_coding_iso2022): Initialize local variable c2.
5548 (decode_coding_sjis_big5): Likewise.
5549
55502003-08-27 Jason Rumney <jasonr@gnu.org>
5551
5552 * w32.c (sys_pipe): Protect against file descriptor overflow.
5553
5554 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
5555
5556 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
5557
55582003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
5559
5560 * xfns.c (Vgtk_version_string): New variable.
5561 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
5562
55632003-08-24 Eli Zaretskii <eliz@gnu.org>
5564
5565 * term.c (term_init): Remove `const' from buffer_size's declaration.
5566
5567 * Makefile.in (msdos.o): Depend on intervals.h.
5568
5569 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5570
55712003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5572
5573 * xterm.h (struct x_display_info): New fields: client_leader_window
5574 and Xatom_wm_client_leader.
5575
5576 * xterm.c (x_initialize): Move call to x_session_initialize to ...
5577 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
5578
5579 * xsmfns.c (create_client_leader_window): New function.
5580 (x_session_initialize): Call create_client_leader_window, take
5581 dpyinfo as argument.
5582
5583 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
5584
5585 * Makefile.in (xsmfns.o): Add more depenedencies.
5586
55872003-08-21 Dave Love <fx@gnu.org>
5588
5589 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
5590
55912003-08-21 Kenichi Handa <handa@m17n.org>
5592
5593 * term.c (term_init): Fix previous change; don't rely on the
5594 length of `buffer' if TERMINFO is defined.
5595
55962003-08-20 Dave Love <fx@gnu.org>
5597
5598 * atimer.h: Include lisp.h.
5599
5600 * lisp.h (EMACS_LISP_H): New.
5601 (popup_activated_flag): Don't declare.
5602
5603 * alloca.c: Some merging with gnulib. Change logic and doc
5604 concerning (x)malloc/(x)free -- no longer Emacs-specific.
5605 [DO_BLOCK_INPUT]: Don't include lisp.h.
5606 (xmalloc, xfree): Declare.
5607 (malloc): Don't declare.
5608
5609 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
5610 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
5611 atimer.h, blockinput.h.
5612
5613 * alloc.c (lisp_align_malloc): Change type of `aligned'.
5614
5615 * alloca.s: Remove.
5616
56172003-08-19 Gerd Moellmann <gerd@gnu.org>
5618
5619 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
5620 use -lncurses.
5621
5622 * term.c (term_init): Use a buffer of size 4096 for tgetent since
5623 FreeBSD returns something longer than 2044. Abort if the end of
5624 the buffer is overwritten.
5625
56262003-08-19 Miles Bader <miles@gnu.org>
5627
5628 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
5629
56302003-08-19 Gerd Moellmann <gerd@gnu.org>
5631
5632 * alloc.c (lisp_align_malloc): Check for memory full when
5633 allocating ablocks, which also avoids freeing a pointer into an
5634 ablocks structure.
5635
5636 * puresize.h (BASE_PURESIZE): Increase to 1100000.
5637
5638 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
5639
56402003-08-16 Richard M. Stallman <rms@gnu.org>
5641
5642 * editfns.c (Fencode_time): Doc fix.
5643
56442003-08-16 David Ponce <david@dponce.com>
5645
5646 * fileio.c (Fwrite_region): Fix conditional expression to issue
5647 the right message.
5648
56492003-08-16 Juri Linkov <juri@jurta.org>
5650
5651 * syntax.c (Fforward_word): Argument changed to optional.
5652 Set default value to 1.
5653
56542003-08-15 Kenichi Handa <handa@m17n.org>
5655
5656 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
5657 what autoscaled.
5658 (best_matching_font): Once we find a better scalable font, set
5659 non_scalable_has_exact_height_p to 1.
5660 (try_font_list): Call try_alternative_families to try any family
5661 with the given registry.
5662
56632003-08-09 Andreas Schwab <schwab@suse.de>
5664
5665 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
5666
5667 * print.c (print_string): Fix printing of multibyte string with
5668 nontrivial printcharfun.
5669
56702003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5671
5672 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
5673
5674 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
5675
56762003-07-31 Kenichi Handa <handa@m17n.org>
5677
5678 * process.c (read_process_output): Return the actually read bytes
5679 instead of the result of decoding.
5680
56812003-07-31 Kenichi Handa <handa@m17n.org>
5682
5683 * xterm.h (struct x_bitmap_record): New member have_mask.
5684
5685 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
5686 to 0.
5687 (x_create_bitmap_from_file): Likewise.
5688 (x_destroy_bitmap): Check have_mask member before freeing a mask.
5689 (x_destroy_all_bitmaps): Likewise.
5690 (x_create_bitmap_mask): Set have_mask member to 1.
5691
56922003-07-30 Richard M. Stallman <rms@gnu.org>
5693
5694 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
5695
56962003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5697
5698 * gtkutil.c (xg_mark_data): Update calls to mark_object.
5699
57002003-07-29 Richard M. Stallman <rms@gnu.org>
5701
5702 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
5703 Conditionalize XIM code on HAVE_XIM.
5704
5705 * fns.c (Fclear_string): New function.
5706 (syms_of_fns): defsubr it.
5707
57082003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5709
5710 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
5711
57122003-07-22 Stefan Monnier <monnier@cs.yale.edu>
5713
5714 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
5715
5716 * buffer.c (delete_all_overlays): New function.
5717 * buffer.h (delete_all_overlays): Declare.
5718 * coding.c (run_pre_post_conversion_on_str):
5719 * print.c (temp_output_buffer_setup):
5720 * fileio.c (Finsert_file_contents):
5721 * minibuf.c (get_minibuffer): Use it.
5722
57232003-07-22 Andrew Choi <akochoi@shaw.ca>
5724
5725 * unexmacosx.c (unexec_regions_sort_compare):
5726 (unexec_regions_merge): New functions. Sort and merge unexec
5727 regions before dumping them.
5728
57292003-07-22 Dave Love <fx@gnu.org>
5730
5731 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
5732
57332003-07-21 Stefan Monnier <monnier@cs.yale.edu>
5734
5735 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
5736 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
5737 MARKBIT as the gcmarkbit for strings.
5738
57392003-07-21 Richard M. Stallman <rms@gnu.org>
5740
5741 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
5742
5743 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
5744 (syms_of_fns): Corresponding change.
5745
5746 * alloc.c (syms_of_alloc): Doc fixes.
5747
57482003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
5749
5750 * s/netbsd.h: Use -Wl syntax.
5751
57522003-07-17 Richard M. Stallman <rms@gnu.org>
5753
5754 * xterm.c (xim_initialize): Redo 6/24 change.
5755
57562003-07-15 Stefan Monnier <monnier@cs.yale.edu>
5757
5758 * buffer.c (copy_overlays): Use EMACS_INT for positions.
5759 (Fswitch_to_buffer): Don't signal an error when switching to the same
5760 buffer in a dedicated window.
5761
5762 * alloc.c: Use bitmaps for cons, as was done for floats.
5763 (init_float, init_cons): Let the normal code allocate the first block.
5764 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
5765 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
5766 New macros.
5767 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
5768 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
5769 (live_cons_p): Check the pointer is not past the `conses' array.
5770 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
5771 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
5772 (survives_gc_p): Use CONS_MARKED_P and simplify.
5773 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
5774
57752003-07-13 Paul Eggert <eggert@twinsun.com>
5776
5777 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
5778 puts it into BSS instead, at least on Solaris 8 and 9.
5779 This is a valid optimization, and it may occur on other platforms,
5780 so Emacs should not assume that initializing a static variable to
5781 zero puts it into data.
5782 * alloc.c (pure, staticvec):
5783 Initialize these arrays to nonzero, so that they're not
5784 put into BSS by that optimization.
5785
57862003-07-13 Stefan Monnier <monnier@cs.yale.edu>
5787
5788 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
5789 (lisp_align_malloc): Use posix_memalign is available.
5790 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
5791 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
5792 for consistency. Update users.
5793
57942003-07-13 Richard M. Stallman <rms@gnu.org>
5795
5796 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
5797
57982003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
5799
5800 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
5801 and use the Gtk+ function gtk_window_icon_from_file if available.
5802
5803 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
5804 handle mask of bitmaps.
5805 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
5806 mask property.
5807 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
5808
5809 * xterm.h (xg_set_icon): New function.
5810
58112003-07-12 Paul Eggert <eggert@twinsun.com>
5812
5813 * unexelf.c (unexec): Consider a section to precede the .bss
5814 section if its addresses overlap that of .bss.
5815
58162003-07-12 Richard M. Stallman <rms@gnu.org>
5817
5818 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5819
5820 * config.in (HAVE_CRTIN): Add #undef.
5821 (INLINE): Really inline only if OPTIMIZE is defined.
5822
5823 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5824 END_FILES_1.
5825 (START_FILES_1, END_FILES_1): New macros (conditional).
5826 (LD_SWITCH_SYSTEM_TEMACS): Define.
5827
5828 * s/openbsd.h: Don't include bsd4-3.h.
5829 (TERMINFO): Define.
5830 (LIBS_TERMCAP): Define.
5831 (LD_SWITCH_SYSTEM): Define (two definitions).
5832
5833 * xfns.c: Include libpng/png.h instead of png.h.
5834
58352003-07-11 Andreas Schwab <schwab@suse.de>
5836
5837 * buffer.c (modify_overlay): Update prototype.
5838 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5839 Likewise.
5840
58412003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5842
5843 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5844 (struct interval): Move to intervals.h.
5845 (struct Lisp_Marker): Use EMACS_INT for position info.
5846 (forward_point): Remove prototype of defunct function.
5847 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5848 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5849 (syms_of_textprop, set_text_properties): Remove prototypes that are
5850 already in intervals.h.
5851
5852 * intervals.h (struct interval): Move from lisp.h.
5853 Use EMACS_INT for position and size info.
5854
5855 * coding.c: Include intervals.h for Fset_text_properties.
5856
5857 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5858 position and length information.
5859
58602003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5861
5862 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5863 position and length information.
5864
58652003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5866
5867 Change overlays_after and overlays_before so the overlays themselves
5868 are linked into lists, rather than using cons cells. After all each
5869 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5870 Lisp_Overlay for free and save up one cons cell per overlay (not
5871 to mention one indirection when traversing the list of overlay).
5872
5873 * lisp.h (struct Lisp_Overlay): New field `next'.
5874
5875 * buffer.h (struct buffer): Change overlays_before and overlays_after
5876 from Lisp lists of overlays to pointers to overlays.
5877
5878 * buffer.c (overlay_strings, recenter_overlay_lists):
5879 Fix typo in eassert in last commit.
5880 (unchain_overlay): New function.
5881 (add_overlay_mod_hooklist): Use AREF.
5882 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5883 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5884 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5885 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5886 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5887 Adjust to new type of overlays_(before|after).
5888
5889 * alloc.c (mark_object): Mark the new `next' field of overlays.
5890 (mark_buffer): Manually mark the overlays_(after|before) fields.
5891
5892 * coding.c (run_pre_post_conversion_on_str):
5893 * editfns.c (overlays_around):
5894 * xdisp.c (load_overlay_strings):
5895 * fileio.c (Finsert_file_contents):
5896 * indent.c (current_column):
5897 * insdel.c (signal_before_change, signal_after_change):
5898 * intervals.c (set_point_both):
5899 * print.c (temp_output_buffer_setup): Use new type for
5900 overlays_(before|after).
5901
59022003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5903
5904 * buffer.c (report_overlay_modification): Don't run hooks while
5905 traversing the list of overlays.
5906
5907 * buffer.h (struct buffer): Use an int for overlay_center.
5908 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5909 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5910
5911 * buffer.c (reset_buffer, recenter_overlay_lists)
5912 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5913 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5914 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5915 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5916 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5917
5918 * xdisp.c (fast_find_position): Remove unused var.
5919
5920 * cmds.c (Qexpand_abbrev): New sym.
5921 (syms_of_cmds): Initialize it.
5922 (internal_self_insert): Use it to call expand-abbrev.
5923
59242003-07-09 Kim F. Storm <storm@cua.dk>
5925
5926 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
5927 was configured with --without-xim.
5928 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
5929
59302003-07-07 Richard M. Stallman <rms@gnu.org>
5931
5932 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5933
5934 * alloc.c (Fgarbage_collect): Doc fix.
5935
59362003-07-07 Nozomu Ando <nand@mac.com>
5937
5938 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5939
59402003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5941
5942 * minibuf.c (read_minibuf): UNGCPRO before returning.
5943 (Ftry_completion, Fall_completions): Doc fix.
5944
5945 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5946 now that `floats' is not the last element of the struct any more.
5947
59482003-07-06 Jason Rumney <jasonr@gnu.org>
5949
5950 * w32term.h (ClipboardSequence_Proc): New type.
5951
5952 * w32fns.c (clipboard_sequence_fn): New variable.
5953 (globals_of_w32fns): Initialize it.
5954
5955 * w32select.c (last_clipboard_sequence_number): New variable.
5956 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5957 number if possible.
5958
59592003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5960
5961 * m/amdx86-64.h (MARKBIT):
5962 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5963 MARKBIT and ARRAY_MARK_FLAG any more.
5964
5965 * m/hp800.h (XSETMARKBIT):
5966 * m/sr2k.h (XSETMARKBIT):
5967 * lisp.h (XSETMARKBIT): Remove unused macro.
5968
5969 * lisp.h (mark_object): Change prototype.
5970
5971 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5972 (last_marked): Change accordingly.
5973 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5974 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5975 (mark_buffer): Update calls to mark_object.
5976
5977 * bytecode.c (mark_byte_stack):
5978 * fns.c (sweep_weak_table):
5979 * keyboard.c (mark_kboards): Update calls to mark_object.
5980
59812003-07-06 Jason Rumney <jasonr@gnu.org>
5982
5983 * alloc.c (struct ablock): Only include padding when there is some.
5984
59852003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5986
5987 * alloc.c (ALIGN): Add casts to simplify usage.
5988 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5989 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5990 (struct ablock, struct ablocks): New types.
5991 (free_ablock): New global var.
5992 (lisp_align_malloc, lisp_align_free): New functions.
5993 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5994 (struct float_block): Reorder and add gcmarkbits.
5995 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5996 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5997 (init_float, make_float): Use lisp_align_malloc.
5998 (free_float, live_float_p): Don't use `type' any more.
5999 (make_float): Use FLOAT_UNMARK to access to mark bit.
6000 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
6001 Use FLOAT_MARKED_P to access the mark bit.
6002 (pure_alloc): Simplify use of ALIGN.
6003 (mark_object): Use FLOAT_MARK to access the mark bit.
6004 (gc_sweep): Use new macros to access the float's mark bit.
6005 (init_alloc_once): Init free_ablock.
6006
6007 * lisp.h (struct Lisp_Float): Remove unused field `type'.
6008
60092003-06-27 Stefan Monnier <monnier@cs.yale.edu>
6010
6011 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
6012 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
6013 (allocate_buffer): Move.
6014 (string_bytes): Don't mask markbit of `size_byte'.
6015 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
6016 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
6017 Use the `size' field of buffers (rather than the `name' field) for
6018 the mark bit, as is done for all other vectorlike objects.
6019 Use the new macros to access the mark bit of vectorlike objects.
6020
60212003-06-26 Richard M. Stallman <rms@gnu.org>
6022
6023 * puresize.h (BASE_PURESIZE): Increment base size.
6024
6025 * xdisp.c (fast_find_position): Enable Gerd's new definition.
6026
6027 * xterm.c (xim_initialize): Undo previous change.
6028
60292003-06-26 Stefan Monnier <monnier@cs.yale.edu>
6030
6031 * alloc.c (survives_gc_p): Simplify.
6032
6033 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
6034
6035 * window.c (Fset_window_dedicated_p): Simplify.
6036 (display_buffer_1): Don't raise the win from which minibuf was entered.
6037 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
6038 (Fminibuffer_selected_window): Simplify.
6039
6040 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
6041
6042 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
6043 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
6044
6045 * insdel.c (check_markers, adjust_markers_for_delete)
6046 (adjust_markers_for_insert, adjust_markers_for_replace)
6047 (prepare_to_modify_buffer, RESTORE_VALUE):
6048 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
6049 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
6050 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
6051 * alloc.c (Fmake_marker, free_marker, gc_sweep):
6052 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
6053 * editfns.c (save_excursion_restore, transpose_markers):
6054 * window.c (delete_window):
6055 * xdisp.c (message_dolog): Update for new types.
6056
60572003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6058
6059 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
6060 (realize_default_face): Use default_face_done_p for the force_p
6061 argument to set_lface_from_font_name. Set default_face_done_p to one.
6062
6063 * frame.c (make_frame): Initialize default_face_done_p.
6064
6065 * frame.h (struct frame): Add default_face_done_p.
6066
6067 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
6068 will be defined.
6069
60702003-06-25 Stefan Monnier <monnier@cs.yale.edu>
6071
6072 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
6073 Initialize the new field `gcmarkbit'.
6074 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
6075 (mark_interval_tree): Don't mark the tree separately from the nodes.
6076 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
6077 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
6078 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
6079
6080 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
6081 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
6082 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
6083 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
6084 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
6085
60862003-06-24 Dave Love <fx@gnu.org>
6087
6088 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
6089
6090 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
6091 from gnulib.
6092
60932003-06-21 Richard M. Stallman <rms@gnu.org>
6094
6095 * fileio.c (Fwrite_region): Alternate messages
6096 for append and partial write.
6097
6098 * keyboard.c (read_key_sequence): When converting upcase fn key to
6099 downcase, update fkey and keytran so `backspace' gets translated.
6100
6101 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
6102
6103 * process.c (wait_reading_process_input): Don't signal SIGIO
6104 in batch mode.
6105
61062003-06-17 Kenichi Handa <handa@m17n.org>
6107
6108 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
6109 composite.h.
6110
6111 * xselect.c: Don't include charset.h, coding.h, composite.h.
6112 (Qforeign_selection): New variable.
6113 (syms_of_xselect): Intern and static it.
6114 (selection_data_to_lisp_data): Return a unibyte string made from
6115 data with `foreign-selection' text property.
6116
61172003-06-15 Stefan Monnier <monnier@cs.yale.edu>
6118
6119 * termhooks.h (EVENT_INIT): New macro.
6120
6121 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
6122
6123 * alloc.c (mark_kboards): Move to keyboard.c.
6124
6125 * keyboard.c (record_asynch_buffer_change, read_avail_input):
6126 * xterm.c (x_dispatch_event):
6127 * xmenu.c (find_and_call_menu_selection):
6128 * xdisp.c (handle_tool_bar_click):
6129 * w32menu.c (menubar_selection_callback):
6130 * sysdep.c (kbd_input_ast, read_input_waiting):
6131 * msdos.c (dos_rawgetc):
6132 * macterm.c (mac_check_for_quit_char):
6133 * macmenu.c (menubar_selection_callback):
6134 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
6135 data to kbd_buffer_store_event.
6136
61372003-06-15 Kim F. Storm <storm@cua.dk>
6138
6139 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6140 to fix redisplay problem with tall characters (such as \e,AC\e(B).
6141
61422003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6143
6144 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
6145
61462003-06-12 Kenichi Handa <handa@m17n.org>
6147
6148 * fileio.c (Fwrite_region): Save and restore restriction.
6149
61502003-06-12 Dave Love <fx@gnu.org>
6151
6152 * alloca.c (alloca): Declare arg as size_t.
6153
6154 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
6155 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
6156
61572003-06-11 Dave Love <fx@gnu.org>
6158
6159 * search.c (shrink_regexp_cache): Use xrealloc.
6160 (syms_of_search): Use xmalloc.
6161
61622003-06-10 Kim F. Storm <storm@cua.dk>
6163
6164 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
6165 Adjust phys_cursor.x to be relative to window box, rather than
6166 text area before checking -- to ensure cursor is redrawn when
6167 exposing window.
6168 Note: This also fixes a similar (older) bug if display margins
6169 are present.
6170
61712003-06-06 Kenichi Handa <handa@m17n.org>
6172
6173 * coding.c (encoding_buffer_size): If coding->type is
6174 coding_type_ccl, double magnification on CRLF encoding.
6175
61762003-06-06 Jason Rumney <jasonr@gnu.org>
6177
6178 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
6179 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
6180
6181 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
6182 Mac too.
6183
61842003-06-05 Dave Love <fx@gnu.org>
6185
6186 * strftime.c: Merge changes from gnulib.
6187
6188 * mktime.c (__mktime_internal): Merge changes from gnulib
6189 involving year 69 and dst2.
6190
6191 Changes to merge with gnulib version and be consistent with the
6192 autoconf test:
6193
6194 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
6195 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
6196 [HAVE_LOCALE_H]: Include locale.h.
6197 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
6198
61992003-06-05 Kim F. Storm <storm@cua.dk>
6200
6201 * window.c (coordinates_in_window): Convert X and Y to window
6202 relative coordinates inside mode-line and header-line parts.
6203 Convert X and Y to margin area relative coordinates inside left
6204 and right display margin parts.
6205
62062003-06-05 Jason Rumney <jasonr@gnu.org>
6207
6208 * w32fns.c (add_system_logical_colors_to_map): New function.
6209 (Fx_open_connection): Use it.
6210
62112003-06-04 Stefan Monnier <monnier@cs.yale.edu>
6212
6213 * process.c (allocate_pty): Revert part of the previous patch.
6214 (Faccept_process_output): Simplify.
6215
62162003-06-04 Jason Rumney <jasonr@gnu.org>
6217
6218 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
6219
6220 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
6221 (lispy_mouse_wheel_names): Remove.
6222 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
6223 Always define drag_and_drop_syms.
6224
6225 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
6226 WHEEL_EVENT events.
6227
62282003-06-03 Stefan Monnier <monnier@cs.yale.edu>
6229
6230 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
6231
6232 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
6233
62342003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6235
6236 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
6237 menu item label.
6238
62392003-06-03 Richard M. Stallman <rms@gnu.org>
6240
6241 * window.c (Fwindow_edges): Doc fix.
6242 (Fwindow_pixel_edges, Fwindow_inside_edges)
6243 (Fwindow_inside_pixel_edges): New functions.
6244 (syms_of_window): defsubr them.
6245
6246 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
6247 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
6248
62492003-06-02 Stefan Monnier <monnier@cs.yale.edu>
6250
6251 * dispnew.c (Fsit_for): Don't lie about the number of args.
6252
62532003-06-02 Dave Love <fx@gnu.org>
6254
6255 * callproc.c: Use HAVE_FCNTL_H, not USG5.
6256 (syms_of_callproc) <process-environment>: Doc fix.
6257
6258 * doc.c: Use HAVE_FCNTL_H, not USG5.
6259
6260 * xfaces.c (font_rescale_ratio): Fix for K&R.
6261
6262 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
6263
6264 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
6265
6266 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
6267
6268 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
6269 (xg_create_frame_widgets): Use ENCODE_UTF_8.
6270
6271 * xterm.c (Qutf_8): Move to coding.c
6272
6273 * xmenu.c (ENCODE_MENU_STRING): New.
6274 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
6275 Use it.
6276
6277 * coding.h (ENCODE_UTF_8): New.
6278 (Qutf_8): Declare.
6279
6280 * coding.c (Qutf_8): New.
6281 (syms_of_coding): Intern it.
6282
6283 * fns.c: Doc fixes.
6284
62852003-06-02 Kenichi Handa <handa@m17n.org>
6286
6287 * buffer.c (Fset_buffer_multibyte): Fix previous change.
6288
62892003-06-01 Stefan Monnier <monnier@cs.yale.edu>
6290
6291 * lread.c (openp): Make sure STR is a string.
6292
62932003-06-01 David Ponce <david@dponce.com>
6294
6295 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
6296 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
6297
6298 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
6299 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
6300 (discard_mouse_events): Discard WHEEL_EVENT events too.
6301 (lispy_wheel_names, wheel_syms): New.
6302 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
6303 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
6304 defined.
6305 (make_lispy_event): Add WHEEL_EVENT handler.
6306
6307 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
6308 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6309 WHEEL_EVENT events.
6310
63112003-05-31 John Paul Wallington <jpw@gnu.org>
6312
6313 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
6314 timer are in lisp/emacs-lisp.
6315
63162003-05-31 Kenichi Handa <handa@m17n.org>
6317
6318 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
6319 region when a buffer is changed to unibyte.
6320
6321 * charset.h (VALID_LEADING_CODE_P): New macro.
6322 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
6323
6324 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
6325 is nonzero, accept multibyte form of eight-bit-control chars.
6326 (decode_composition_emacs_mule): Likewise.
6327 (decode_coding_emacs_mule): Likewise.
6328 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
6329 multibyte form of eight-bit-control chars.
6330
6331 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
6332 (Finsert_file_contents): If coding-system-for-read is bound to
6333 Qauto_save_coding, use the coding system emacs-mule with special
6334 setting for recovering a file.
6335 (choose_write_coding_system): On auto saving, use the coding
6336 system emacs-mule with special setting for auto saving.
6337 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
6338
63392003-05-30 Kenichi Handa <handa@m17n.org>
6340
6341 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
6342 properly before calling ccl_driver.
6343
6344 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
6345
6346 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
6347 nonzero.
6348 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
6349 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
6350
63512003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
6352
6353 * xfaces.c (realize_default_face): Do not abort if lface is
6354 non-existent - reverts change from 2003-05-19.
6355
63562003-05-29 Kenichi Handa <handa@m17n.org>
6357
6358 * coding.c (decode_coding_iso2022): Pay attention to the byte
6359 sequence of CTEXT extended segment, and retain those bytes as is.
6360
63612003-05-28 Kenichi Handa <handa@m17n.org>
6362
6363 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
6364 of CODING_REPLACEMENT_CHARACTER.
6365 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
6366 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
6367 check this flag on encoding.
6368 (encode_coding_sjis_big5): Check
6369 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
6370 (Fset_terminal_coding_system_internal): Set
6371 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
6372 instead of setting CODING_FLAG_ISO_SAFE flag in
6373 terminal_coding.flags.
6374
6375 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
6376 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
6377 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
6378
63792003-05-28 Richard M. Stallman <rms@gnu.org>
6380
6381 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
6382
6383 * eval.c (unbind_to): Move init of this_binding to separate statement.
6384
63852003-05-28 Kim F. Storm <storm@cua.dk>
6386
6387 * xdisp.c (expose_window): Fix error in calculation of
6388 window relative coordinates of area to redisplay.
6389
63902003-05-27 Jason Rumney <jasonr@gnu.org>
6391
6392 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
6393
63942003-05-27 David Ponce <david@dponce.com>
6395
6396 Handle W32 mouse wheel events as mouse click events, like in X.
6397
6398 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
6399 MOUSE_WHEEL_EVENT anymore.
6400
6401 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
6402 Scrolling down/up the mouse wheel is respectively mapped to mouse
6403 button 4 and 5.
6404 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6405 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
6406 WM_MOUSEWHEEL events.
6407
64082003-05-27 Andreas Schwab <schwab@suse.de>
6409
6410 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
6411
6412 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
6413 partially visible line.
6414
6415 * alloc.c (Fgarbage_collect): Fix last change.
6416
64172003-05-26 John Paul Wallington <jpw@gnu.org>
6418
6419 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
6420
64212003-05-25 Stefan Monnier <monnier@cs.yale.edu>
6422
6423 * window.c (Fset_window_buffer): Add type of `keep_margins'.
6424 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
6425
6426 * window.h (window_box_text_cols): Declare.
6427
6428 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
6429 (x_draw_vertical_border): Remove unused var `f'.
6430
6431 * xfaces.c (build_scalable_font_name): Remove `unused var
6432 pixel_size' warning.
6433
6434 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
6435
6436 * unexelf.c (unexec): Remove `unused var n' warning.
6437
6438 * strftime.c (my_strftime_localtime_r): Remove `defined but
6439 unused' warning.
6440
6441 * process.c (allocate_pty): Remove `unused var stb' and
6442 `cp might be used uninitialized' warnings.
6443
6444 * dispnew.c (mode_line_string): Remove unused var `f'.
6445
6446 * coding.c (find_safe_codings): Remove unused var `i'.
6447
6448 * bytecode.c (Fbyte_code): Remove `unused val' warning.
6449
6450 * buffer.c (Fkill_buffer): Remove unused var `list'.
6451
6452 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
6453
64542003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6455
6456 * frame.c (make_frame): Condition want_fullscreen with
6457 HAVE_WINDOW_SYSTEM.
6458
64592003-05-25 Juanma Barranquero <lektu@terra.es>
6460
6461 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
6462 (Fwindow_scroll_bars): Fix typo in docstring.
6463
64642003-05-24 Kim F. Storm <storm@cua.dk>
6465
6466 The following changes serve several purposes:
6467
6468 1) Swap the position of fringes and display margins in windows, i.e.
6469 the fringes are now displayed between the margins and the text area
6470 (by default).
6471
6472 2) Allow fringe and scroll bar parameters to be set per-buffer and
6473 per-window (like display margins). Such settings are now stored
6474 in window configurations, preserved when frames are resized, and
6475 copied when windows are split vertically or horizontally.
6476 Several bugs related to display margins have been fixed.
6477
6478 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
6479
6480 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
6481 rather than FRAME_WIDTH (FRAME_FONT (f)).
6482
6483 5) Introduce a consistent naming of variables, members and macros
6484 depending on whether their value is measured in pixels or in
6485 canonical columns/lines. Pixel dimensions are named *_width and
6486 *_height, while canonical columns/lines are named *_cols and
6487 *_lines. Pixel positions are named *_x and *_y, while column/line
6488 positions are named *_col and *_line.
6489
6490 6) Consolidate more of the X, W32, and MAC gui code by moving
6491 common data into struct frame, and generalize it for the non-gui
6492 case by using suitable defaults.
6493
6494 7) Cleanup and consolidate the macros controlling frame and window
6495 layout into frame.h and window.h, and generalize the use of the
6496 various window_box_* functions (enhanced to handle the new fringe
6497 position and the per-window fringe and scroll bar settings).
6498
6499 * frame.h (struct frame): Rename members height to text_lines,
6500 width to text_cols, window_height to total_lines, window_width to
6501 total_cols, new_height to new_text_lines, new_width to
6502 new_text_cols. All uses changed.
6503 (struct frame): New members which consolidate common members of
6504 x_output, w32_output, and mac_output structures: left_pos,
6505 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
6506 win_gravity, size_hint_flags, border_width, internal_border_width,
6507 line_height, fringe_cols, left_fringe_width, right_fringe_width,
6508 want_fullscreen. All uses changed.
6509 (struct frame): New member column_width contaning the canonical
6510 column width, analogue to line_height. All uses changed.
6511 (struct frame): Rename members scroll_bar_pixel_width to
6512 config_scroll_bar_width, and scroll_bar_cols to
6513 config_scroll_bar_cols. All uses changed.
6514 (struct frame): New member scroll_bar_actual_width which
6515 consolidates and renames the vertical_scroll_bar_extra member of
6516 x_output, w32_output, and mac_output structures. All uses changed.
6517 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
6518 from x/w32/macterm.h files. All uses changed. Also change code
6519 which referred to f->output_data...->pixel_height.
6520 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
6521 from x/w32/macterm.h files. All uses changed. Also change code
6522 which referred to f->output_data...->pixel_width.
6523 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
6524 Also change code which referred to f->height.
6525 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
6526 Also change code which referred to f->width.
6527 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
6528 to update new_text_lines and new_text_cols members directly.
6529 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
6530 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
6531 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
6532 FRAME_SCROLL_BAR_COLS. All uses changed.
6533 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
6534 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
6535 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
6536 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
6537 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
6538 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
6539 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
6540 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
6541 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
6542 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
6543 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
6544 return line_height member (it now has proper value also for
6545 non-window frames).
6546 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
6547 return new column_width member (rather than the default font width).
6548 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
6549 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
6550 from x/w32/macterm.h files. Unconditionally return corresponding
6551 member of frame structure (they now have proper values also for
6552 non-window frames).
6553 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
6554 Calculate return value from left and right widths.
6555 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
6556 internal_border_width member (has proper value for non-window frame).
6557 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
6558 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
6559 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
6560 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
6561 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
6562 consolidated from xterm.h, macterm.h, and w32term.h.
6563 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
6564 consolidated from xterm.h, macterm.h, and w32term.h.
6565 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
6566 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
6567 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
6568 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
6569 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
6570 consolidated from x/mac/w32term.h.
6571 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
6572 consolidated from x/mac/w32term.h.
6573 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
6574 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
6575 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
6576 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
6577
6578 * window.h (struct window): Rename members left to left_col,
6579 top to top_line, height to total_lines, width to total_cols,
6580 left_margin_width to left_margin_cols, right_margin_width to
6581 right_margin_cols, orig_height to orig_total_lines, orig_top to
6582 orig_top_line. All uses changed.
6583 (struct window): New members left_fringe_width, right_fringe_width,
6584 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
6585 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
6586 New macros primarily used to simplify other macros.
6587 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
6588 referred to XINT (w->width).
6589 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
6590 referred to XINT (w->height).
6591 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
6592 referred to XINT (w->width) * canon_x_unit.
6593 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
6594 referred to XINT (w->height) * canon_y_unit.
6595 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
6596 referred to XINT (w->left).
6597 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
6598 all uses and code that referred to XINT (w->left) + XINT (w->width).
6599 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
6600 referred to XINT (w->top).
6601 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
6602 referred to XINT (w->top) + XINT (w->height).
6603 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
6604 referred to XINT (w->left) * canon_x_unit.
6605 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
6606 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
6607 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
6608 referred to XINT (w->top) * canon_y_unit.
6609 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
6610 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
6611 (WINDOW_LEFTMOST_P): New macro.
6612 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
6613 All uses changed.
6614 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
6615 All uses changed.
6616 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
6617 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
6618 Do not exclude left fringe width.
6619 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
6620 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
6621 Do not exclude fringe widths.
6622 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
6623 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
6624 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
6625 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
6626 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
6627 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
6628 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
6629 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
6630 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
6631 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
6632 New macros. Change code which referenced corresponding
6633 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
6634 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
6635 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
6636 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
6637 allow per-window scroll-bar settings.
6638 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
6639 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
6640 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
6641 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
6642 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
6643 FRAME_SCROLL_BAR_WIDTH.
6644 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
6645 (WINDOW_SCROLL_BAR_AREA_X): New macros.
6646 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
6647 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
6648 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
6649 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
6650 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
6651 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
6652 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6653 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6654 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
6655 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
6656 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6657 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
6658 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6659 (window_from_coordinates): Update prototype.
6660 (Fset_window_buffer): Update EXFUN.
6661 (set_window_buffer): Update prototype.
6662
6663 * dispextern.h (struct glyph_matrix): Rename members window_left_x
6664 to window_left_col, window_top_y to window_top_line. All uses
6665 changed.
6666 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
6667 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
6668 internal_border_width is now set to 0 for non-window frames.
6669 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
6670 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
6671 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
6672 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
6673 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
6674 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6675 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6676 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
6677 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
6678 Move to window.h and renamed [see window.h changes].
6679 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
6680 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
6681 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
6682 Use WINDOW_TOTAL_LINES.
6683 (frame_update_line_height): Remove prototype.
6684
6685 * buffer.h (struct buffer): Rename members measured in columns:
6686 left_margin_width to left_margin_cols, right_margin_width to
6687 right_margin_cols. All uses changed.
6688 New members left_fringe_width, right_fringe_width,
6689 fringes_outside_margins for per-buffer fringe settings.
6690 New members scroll_bar_width and vertical_scroll_bar_type for
6691 per-buffer scroll bar settings.
6692
6693 * buffer.c (init_buffer_once): Set buffer_defaults and
6694 buffer_local_flags for new buffer-local variables
6695 left_fringe_width, right_fringe_width, fringes_outside_margins,
6696 scroll_bar_width, and vertical_scroll_bar_type.
6697 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
6698 default-* variables for them.
6699
6700 * dispnew.c: Make (many) trivial substitutions for renamed and
6701 new macros in dispextern.h, frame.h and window.h.
6702 (mode_line_string): No need to adjust width for mode lines, as it
6703 is already adjusted by the caller.
6704 (marginal_area_string): Handle fringes inside/outside margins.
6705
6706 * frame.c: Make (many) trivial substitutions for renamed and
6707 new macros in dispextern.h, frame.h and window.h.
6708 (make_frame): Initialize left_fringe_width, right_fringe_width,
6709 fringe_cols, scroll_bar_actual_width, border_width,
6710 internal_border_width, column_width, line_height, x_pixels_diff,
6711 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
6712 members with values suitable for a non-window frames.
6713
6714 * gtkutil.c: Make (many) trivial substitutions for renamed and
6715 new macros in dispextern.h, frame.h and window.h.
6716
6717 * indent.c: Make (few) trivial substitutions for renamed and
6718 new macros in dispextern.h, frame.h and window.h.
6719
6720 * keyboard.c: Make (many) trivial substitutions for renamed and
6721 new macros in dispextern.h, frame.h and window.h.
6722 (make_lispy_event): Use window positions returned from
6723 window_from_coordinates when constructing the lisp event for
6724 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
6725 (incorrect) values locally.
6726 (make_lispy_movement): Use window positions returned from
6727 window_from_coordinates when constructing the lisp event, rather
6728 than calculating (incorrect) values locally.
6729
6730 * scroll.c: Make (some) trivial substitutions for renamed and
6731 new macros in dispextern.h, frame.h and window.h.
6732
6733 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
6734 scroll-bars.
6735
6736 * sysdep.c: Make (few) trivial substitutions for renamed and
6737 new macros in dispextern.h, frame.h and window.h.
6738
6739 * term.c: Make (some) trivial substitutions for renamed and
6740 new macros in dispextern.h, frame.h and window.h.
6741
6742 * widget.c: Make (few) trivial substitutions for renamed and
6743 new macros in dispextern.h, frame.h and window.h.
6744
6745 * window.c: Make (many) trivial substitutions for renamed and
6746 new macros in dispextern.h, frame.h and window.h.
6747 (make_window): Initialize new members
6748 left_margin_cols, right_margin_cols, left_fringe_width,
6749 right_fringe_width, fringes_outside_margins, scroll_bar_width,
6750 and vertical_scroll_bar_type.
6751 (coordinates_in_window): Adapted to new fringe/margin positions
6752 and per-window fringes and scroll-bars.
6753 Fix bug related to incorrectly adjusting coordinates by
6754 frame's internal_border_width (the effect normally negible since
6755 the internal_border_width is typically 0 or 1 pixel, but very
6756 noticeable for an internal_border_width of e.g. 25 pixels).
6757 Upon successful return (other than ON_NOTHING), the coordinates
6758 are now always properly converted to window relative for the
6759 given display element.
6760 (window_from_coordinates): Add new parameters wx and wy to
6761 return the window relative x and y position in the returned
6762 window and part. A null arg means, don't return the position.
6763 All callers changed.
6764 (adjust_window_margins): New function which may reduce the width
6765 of the display margins if a window's text area is too small after
6766 resizing or splitting windows.
6767 (size_window): Fix bug that did not account for display margin
6768 widths when checking the minimum width of a window; use
6769 adjust_window_margins.
6770 (set_window_buffer): Call Fset_window_fringes and
6771 Fset_window_scroll_bars to setup per-window elements.
6772 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
6773 existing display margin, fringe widths, and scroll bar settings
6774 (e.g. after splitting a window or resizing the frame).
6775 All callers changed.
6776 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
6777 (Fsplit_window): Duplicate original window's display margin,
6778 fringe, and scroll-bar settings; then call Fset_window_buffer with
6779 KEEP_MARGINS non-nil. This fixes a bug which caused a split
6780 window to only preserve the display margins in one of the windows.
6781 When splitting horizontally, call adjust_window_margins on both
6782 windows to ensure that the text area of the new windows is non too
6783 narrow. This fixes a bug which could cause Emacs to trap if the
6784 width of the split window was less than the width of the display
6785 margins.
6786 (window_box_text_cols): Renamed from window_internal_width.
6787 All uses changed. Adapt to per-window fringes and scroll bars.
6788 Fix bug that caused vertical separator to be subtracted also on
6789 window frames. Fix another bug that did not reduce the returned
6790 value by the columns used for display margins.
6791 (window_scroll_line_based): Fix bug related to scrolling too much
6792 when display margins are present (implicitly fixed by the fix to
6793 window_box_text_cols).
6794 (scroll_left, scroll_right): Fix bug related to scrolling too far
6795 by default when display margins are present (implicitly fixed by
6796 the fix to window_box_text_cols).
6797 (struct saved_window): Rename members left to left_col, top to
6798 top_line, width to total_cols, height to total_lines, orig_top to
6799 orig_top_line, orig_height to orig_total_lines. All uses changed.
6800 New members left_margin_cols, right_margin_cols,
6801 left_fringe_width, right_fringe_width, fringes_outside_margins,
6802 scroll_bar_width, and vertical_scroll_bar_type for saving
6803 per-window display elements.
6804 (Fset_window_configuration): Restore display margins, fringes,
6805 and scroll bar settings. This fixes a bug which caused display
6806 margins to be discarded when saving and restoring a window
6807 configuration.
6808 (save_window_save): Save display margins, fringes, and scroll bar
6809 settings. This fixes a bug which caused display margins to be
6810 discarded when saving and restoring a window configuration.
6811 (Fset_window_margins): Do nothing if display margins are not
6812 really changed. Otherwise, call adjust_window_margins to ensure
6813 the text area doesn't get too narrow. This fixes a bug which
6814 could cause Emacs to trap if setting display margins wider than
6815 the width of the window.
6816 (Fset_window_fringes): New defun to allow user to specifically set
6817 this window's fringe widths and position vs. display margins.
6818 (Fwindow_fringes): New defun to return window's actual fringe
6819 settings.
6820 (Fset_window_scroll_bars): New defun to allow user to specifically
6821 set this window's scroll bar width and position.
6822 (Fwindow_scroll_bars): New defun to return window's actual scroll
6823 bar settings.
6824 (compare_window_configurations): Also compare display margins,
6825 fringes, and scroll bar settings.
6826 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6827
6828 * xdisp.c: Make (many) trivial substitutions for renamed and
6829 new macros in dispextern.h, frame.h and window.h.
6830 (window_box_width): Adapt to per-window fringes and scroll bars,
6831 and new fringe vs. display margin position. Note that returned
6832 value is no longer guaranteed to be a whole multiple of the frame
6833 column width, since per-window fringes may now be any width.
6834 (window_box_left_offset): New function like window_box_left, but
6835 value is relative to left border of window (rather than frame).
6836 (window_box_right_offset): New function like window_box_right,
6837 but value is relative to left border of window.
6838 (window_box_left): Adapt to per-window fringes and scroll bars,
6839 and new fringe vs. display margin position. Simplify by using
6840 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6841 (window_box): Allow null args for unnecessary return values;
6842 change/simplify relevant callers.
6843 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
6844 and new fringe vs. display margin position.
6845 Use window_box_left_offset and window_box_right_offset
6846 (get_glyph_string_clip_rect): Adapt to per-window fringes and
6847 scroll bars, and new fringe vs. display margin position.
6848 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
6849 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6850 fringe vs. display margin position.
6851 (hscroll_window_tree): Use window_box_width instead of window_box.
6852 (redisplay_window): Adapt to per-window scroll bars.
6853 (draw_glyphs): Rework to handle per-window fringes and scroll
6854 bars, and new fringe vs. display margin position.
6855 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
6856 (x_clear_end_of_line): Adapt to per-window fringes and scroll
6857 bars, and new fringe vs. display margin position. Fix bug which
6858 increased total width of full_width rows by width of scroll bars
6859 although window's total width already includes that.
6860 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6861 (expose_area): Simplify using window_box_left_offset.
6862 (x_draw_vertical_border): Handle per-window scroll bar settings,
6863 mixing windows with left, right and no scroll bars.
6864
6865 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6866 where it's used in x_list_fonts (for clarity).
6867 (frame_update_line_height): Remove unused function; functionality
6868 is now done directly when setting the default font in x_set_font.
6869
6870 * xfns.c: Make (many) trivial substitutions for renamed and
6871 new macros in dispextern.h, frame.h and window.h.
6872
6873 * xmenu.c: Make (some) trivial substitutions for renamed and
6874 new macros in dispextern.h, frame.h and window.h.
6875
6876 * xterm.h (struct x_output): Move members left_pos, top_pos,
6877 border_width, pixel_height, pixel_width, line_height,
6878 internal_border_width, vertical_scroll_bar_extra,
6879 left_fringe_width, right_fringe_width, fringe_cols,
6880 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6881 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6882 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6883 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6884 (PIXEL_WIDTH, PIXEL_HEIGHT)
6885 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6886 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6887 frame.h and renamed [see frame.h changes].
6888 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6889 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6890 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6891 and renamed [see frame.h changes].
6892
6893 * xterm.c: Make (several) trivial substitutions for renamed and
6894 new macros in dispextern.h, frame.h and window.h.
6895 (x_draw_glyph_string_box): Adapt to per-window fringes and
6896 scroll-bars.
6897 (scroll_run): Adapt to new fringe position.
6898 (glyph_rect): Use window coordinates returned from
6899 window_from_coordinates rather than frame_to_window_pixel_xy.
6900 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6901 scroll-bars.
6902 (handle_one_xevent): Simplify a USE_GTK conditional.
6903 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6904 (fringes are now inside margins, i.e. always in the clipping area).
6905 All callers changed.
6906 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6907 directly, then call compute_fringe_widths. Don't call
6908 frame_update_line_height.
6909
6910 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6911 border_width, pixel_height, pixel_width, line_height,
6912 internal_border_width, vertical_scroll_bar_extra,
6913 left_fringe_width, right_fringe_width, fringe_cols,
6914 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6915 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6916 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6917 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6918 (PIXEL_WIDTH, PIXEL_HEIGHT)
6919 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6920 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6921 frame.h and renamed [see frame.h changes].
6922 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6923 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6924 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6925 and renamed [see frame.h changes].
6926
6927 * w32term.c: Make (several) trivial substitutions for renamed and
6928 new macros in dispextern.h, frame.h and window.h.
6929 (x_draw_glyph_string_box): Adapt to per-window fringes and
6930 scroll-bars.
6931 (glyph_rect): Use window coordinates returned from
6932 window_from_coordinates rather than frame_to_window_pixel_xy.
6933 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6934 scroll-bars.
6935 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6936 (fringes are now inside margins, i.e. always in the clipping area).
6937 All callers changed.
6938 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6939 directly, then call compute_fringe_widths. Don't call
6940 frame_update_line_height.
6941
6942 * w32console.c: Make (few) trivial substitutions for renamed and
6943 new macros in dispextern.h, frame.h and window.h.
6944
6945 * w32fns.c: Make (many) trivial substitutions for renamed and
6946 new macros in dispextern.h, frame.h and window.h.
6947
6948 * w32menu.c: Make (few) trivial substitutions for renamed and
6949 new macros in dispextern.h, frame.h and window.h.
6950
6951 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6952 border_width, pixel_height, pixel_width, line_height,
6953 internal_border_width, vertical_scroll_bar_extra,
6954 left_fringe_width, right_fringe_width, fringe_cols,
6955 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6956 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6957 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6958 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6959 (PIXEL_WIDTH, PIXEL_HEIGHT)
6960 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6961 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6962 frame.h and renamed [see frame.h changes].
6963 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6964 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6965 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6966 and renamed [see frame.h changes].
6967
6968 * macterm.c: Make (several) trivial substitutions for renamed and
6969 new macros in dispextern.h, frame.h and window.h.
6970 (x_draw_glyph_string_box): Adapt to per-window fringes and
6971 scroll-bars.
6972 (glyph_rect): Use window coordinates returned from
6973 window_from_coordinates rather than frame_to_window_pixel_xy.
6974 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6975 scroll-bars.
6976 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6977 (fringes are now inside margins, i.e. always in the clipping area).
6978 All callers changed.
6979 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6980 directly, then call compute_fringe_widths. Don't call
6981 frame_update_line_height.
6982
6983 * macfns.c: Make (several) trivial substitutions for renamed and
6984 new macros in dispextern.h, frame.h and window.h.
6985 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
6986
6987 * macmenu.c: Make (few) trivial substitutions for renamed and
6988 new macros in dispextern.h, frame.h and window.h.
6989
6990 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6991 and line_height, and use corresponding new members in struct
6992 frame. All uses changed.
6993 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6994 superseeded by corresponding macros in frame.h.
6995
6996 * msdos.c: Make (several) trivial substitutions for renamed and
6997 new macros in dispextern.h, frame.h and window.h.
6998 (IT_note_mouse_highlight): Use updated window coordinates returned
6999 by window_from_coordinates, rather than adjusting them locally.
7000 (internal_terminal_init): No need to initialize line_height here;
7001 it now defaults to 1.
7002
70032003-05-24 Stefan Monnier <monnier@cs.yale.edu>
7004
7005 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
7006 dropping `down' events.
7007
70082003-05-24 Andreas Schwab <schwab@suse.de>
7009
7010 * coding.c (find_safe_codings): Fix last change.
7011
70122003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
7013
7014 * xfns.c (x_window): Fix typo from 2003-05-21 change.
7015
70162003-05-23 Stefan Monnier <monnier@cs.yale.edu>
7017
7018 * xdisp.c (display_mode_element): Increase max depth.
7019 Simplify the error handling code. Use a different error string
7020 for the case where we hit the depth limit.
7021
7022 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
7023
7024 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
7025
70262003-05-21 Stefan Monnier <monnier@cs.yale.edu>
7027
7028 * intervals.c (get_local_map): Don't get char-property of previous
7029 point any more: get_pos_property already does it and better.
7030
70312003-05-21 Dave Love <fx@gnu.org>
7032
7033 [Merged from unicode branch.]
7034
7035 * xfns.c (x_window, x_window): Use use_xim.
7036
7037 * xterm.c (use_xim): Initialize.
7038 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
7039 (x_term_init): Maybe set use_xim.
7040
7041 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
7042
70432003-05-21 Jason Rumney <jasonr@gnu.org>
7044
7045 * unexw32.c (_start): Remove _fmode initialization.
7046
7047 * emacs.c (main) [WINDOWSNT]: Move it here.
7048
70492003-05-20 Dave Love <fx@gnu.org>
7050
7051 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
7052
70532003-05-19 Richard M. Stallman <rms@gnu.org>
7054
7055 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
7056 as value for QCfont attribute.
7057 (realize_default_face): lface should already exist; crash if not.
7058 Specify 0 for FORCE_P when calling set_lface_from_font_name.
7059
7060 * frame.c (Fignore_event): Doc fix.
7061
70622003-05-19 Kenichi Handa <handa@m17n.org>
7063
7064 * coding.c (decode_coding_string): Handle post-read-conversion
7065 even if the coding doesn't require decoding.
7066
70672003-05-18 Richard M. Stallman <rms@gnu.org>
7068
7069 * callproc.c (Fcall_process_region): Doc fix.
7070
70712003-05-17 Stefan Monnier <monnier@cs.yale.edu>
7072
7073 * lread.c (Fload): Print a message if package is obsolete.
7074
7075 * window.c (Fselect_window): Add optional `norecord' arg.
7076 (select_window_1): Fold into Fselect_window.
7077 (select_window_norecord): New function.
7078 (temp_output_buffer_show): Use it. Preserve current buffer.
7079
7080 * window.h (Fselect_window): Update declaration.
7081
7082 * window.c (delete_window, Fother_window, Fset_window_configuration):
7083 * minibuf.c (read_minibuf):
7084 * macterm.c (x_new_focus_frame):
7085 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
7086 * callint.c (Fcall_interactively):
7087 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
7088
7089 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
7090
70912003-05-17 David Kastrup <dak@gnu.org>
7092
7093 * process.c (read_process_output): Back out change from 2003-03-09.
7094
70952003-05-17 Stefan Monnier <monnier@cs.yale.edu>
7096
7097 * editfns.c (get_pos_property): Don't assume that `object' = nil.
7098
7099 * textprop.c (text_property_stickiness): New arg `buffer'.
7100
7101 * intervals.h (text_property_stickiness): New arg `buffer'.
7102 (get_pos_property): Declare.
7103
7104 * intervals.c (get_local_map): Use get_pos_property, to obey
7105 stickiness and empty overlays.
7106 (create_root_interval, graft_intervals_into_buffer): Use BEG.
7107 (merge_properties, intervals_equal, merge_properties_sticky):
7108 Use XCAR, XCDR.
7109 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
7110
71112003-05-17 Richard M. Stallman <rms@gnu.org>
7112
7113 * minibuf.c (read_minibuf): If buffer is empty, record the default
7114 in the history.
7115 (Fminibuffer_complete_word): When deleting the overlap, take account
7116 of its real position.
7117
7118 * fns.c (map_char_table): Fix previous change.
7119
7120 * syntax.c (find_defun_start):
7121 When open_paren_in_column_0_is_defun_start,
7122 return beginning of buffer.
7123
7124 * lisp.h (map_char_table): Declare added arg.
7125
7126 * fns.c (map_char_table): New arg TABLE gets the master table.
7127 All calls changed.
7128 Process default and inheritance, resorting to Faref if necessary.
7129
7130 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
7131 (Faccessible_keymaps): Pass new arg to map_char_table.
7132
7133 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
7134
7135 * casetab.c (set_case_table): Pass new arg to map_char_table.
7136
7137 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
7138
7139 * lisp.h (specbinding_func): New typedef.
7140 (struct specbinding): Use specbinding_func, to put the `volatile'
7141 in the right place.
7142
7143 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
7144 to avoid GCC warning.
7145
71462003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
7147
7148 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
7149
71502003-05-15 Stefan Monnier <monnier@cs.yale.edu>
7151
7152 * keyboard.c (apply_modifiers): Don't fill the other cache.
7153
71542003-05-14 Stefan Monnier <monnier@cs.yale.edu>
7155
7156 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
7157
7158 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
7159 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
7160 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
7161 (Fset_window_configuration, Fcurrent_window_configuration)
7162 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
7163 (Fpos_visible_in_window_p, mark_window_cursors_off)
7164 (window_internal_height, window_internal_width, Frecenter)
7165 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
7166 (replace_buffer_in_all_windows, init_window_once, init_window)
7167 (syms_of_window, keys_of_window): Move from lisp.h.
7168 * lisp.h: Move window.c declarations to window.h.
7169
7170 * bytecode.c: Include window.h.
7171 * emacs.c: Include window.h.
7172
7173 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
7174 (keyremap): Add `parent' field.
7175 (keyremap_step): Use it. Remove `parent' argument.
7176 (read_key_sequence): Setup and use the new `parent' field.
7177
71782003-05-11 Stefan Monnier <monnier@cs.yale.edu>
7179
7180 * keyboard.c (adjust_point_for_property): Ensure termination.
7181
71822003-05-10 Stefan Monnier <monnier@cs.yale.edu>
7183
7184 * keyboard.c (follow_key): Remove dead variable `did_meta'.
7185 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
7186 duplicated handling of function-key-map and key-translation-map
7187 in read_key_sequence.
7188 (read_key_sequence): Use them.
7189
7190 * keyboard.c (adjust_point_for_property): Try harder to move point
7191 to the non-sticky end of an invisible property.
7192
7193 * xdisp.c (single_display_prop_intangible_p): Make `space' display
7194 property intangible as well.
7195
71962003-05-10 Andreas Schwab <schwab@suse.de>
7197
7198 * xmenu.c (single_menu_item): Change last parameter to void* to
7199 avoid warning.
7200
72012003-05-09 Richard M. Stallman <rms@gnu.org>
7202
7203 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
7204 Bind Qinhibit_modification_hooks to t so there will be no GC.
7205 Rename local `tem' to `save_deactivate_mark'.
7206
7207 * eval.c (specpdl_ptr): Declare volatile.
7208 (unbind_to): Copy the whole binding and decrement specpdl_ptr
7209 before doing the work of unbinding it.
7210
7211 * lisp.h (struct specbinding): Declare elements volatile.
7212 (specpdl_ptr): Declare volatile.
7213
7214 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
7215
7216 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
7217 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
7218
72192003-05-08 Dave Love <fx@gnu.org>
7220
7221 * coding.c (Vlast_coding_system_used): Doc fix.
7222
72232003-05-07 Jason Rumney <jasonr@gnu.org>
7224
7225 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
7226 when system does not support them.
7227
72282003-05-05 Stefan Monnier <monnier@cs.yale.edu>
7229
7230 * fileio.c (Qwrite_region_annotate_functions): New var.
7231 (build_annotations): Use it to process the global part of the hook.
7232 (syms_of_fileio): Init and staticpro it.
7233
7234 * keyboard.c (safe_run_hooks_error): Display a message instead of
7235 silently ignoring the error.
7236
72372003-05-03 Stefan Monnier <monnier@cs.yale.edu>
7238
7239 * keyboard.c (input_available_signal): Mark static.
7240 (menu_bar_items): Use map_keymap.
7241 (menu_bar_one_keymap): Remove.
7242 (menu_bar_item): Adjust arglist (for use in map_keymap).
7243 Properly hide a second binding when not both are keymaps.
7244
7245 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
7246 (single_keymap_panes): Use it and map_keymap.
7247 (single_menu_item): Use skp as well.
7248
7249 * keymap.h (map_keymap_function_t): New type.
7250 (map_keymap): Declare.
7251
7252 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
7253 (map_keymap_call, Fmap_keymap): New functions.
7254 (syms_of_keymap): Defsubr map-keymap.
7255
72562003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7257
7258 * gtkutil.c (create_dialog, make_widget_for_menu_item)
7259 (make_menu_item, create_menus, xg_update_menu_item): Don't call
7260 ..._with_mnemonic functions for menu items.
7261
72622003-05-01 Kenichi Handa <handa@m17n.org>
7263
7264 * coding.c (coding_system_accept_latin_extra_p): Delete this
7265 function.
7266 (find_safe_codings): Pay attention to
7267 the property tranlsation-table-for-encode of each codings.
7268 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
7269
72702003-05-01 Stefan Monnier <monnier@cs.yale.edu>
7271
7272 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
7273
72742003-04-30 Stefan Monnier <monnier@cs.yale.edu>
7275
7276 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
7277
7278 * lisp.h (CHECK): Wrap args in parenthesis.
7279 (specbind): Fix doc: symbol = Qnil is not supported any more.
7280
7281 * bytecode.c (Fbyte_code) <unwind-protect>:
7282 Use Fprogn rather than 0 and Qnil.
7283
7284 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
7285 `double', and `triple' modifiers as well.
7286
72872003-04-30 Richard M. Stallman <rms@gnu.org>
7288
7289 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
7290
7291 * alloc.c (abort_on_gc): New variable.
7292 (Fgarbage_collect): Abort if abort_on_gc is set.
7293
7294 * lisp.h (abort_on_gc): Add decl.
7295
7296 * eval.c (Fsignal): Clear abort_on_gc.
7297
7298 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
7299 Reinit FORMAT_START and END before second scan.
7300
7301 * xdisp.c (move_it_vertically_backward): Do the final big else
7302 even if nlines is 0.
7303
7304 * xdisp.c (redisplay_internal): Finish the per-frame loop
7305 even if redisplay is suspended by input.
7306
73072003-04-24 Andrew Choi <akochoi@shaw.ca>
7308
7309 * macterm.c (x_list_fonts): Return all fonts that match if
7310 maxnames = -1.
7311
73122003-04-25 Kenichi Handa <handa@m17n.org>
7313
7314 * syntax.c (skip_chars): Fix previous change.
7315
73162003-04-24 Kenichi Handa <handa@m17n.org>
7317
7318 * syntax.c (skip_chars): Make the code faster by using the common
7319 technique of *p, *stop, and *endp.
7320
73212003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7322
7323 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
7324 tool_bar_items so GTK tool bar expose callback does not access items
7325 being updated.
7326
73272003-04-19 Stefan Monnier <monnier@cs.yale.edu>
7328
7329 * eval.c (Fapply): Undo last change and add a comment about why.
7330
73312003-04-18 Miles Bader <miles@gnu.org>
7332
7333 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
7334 pickier PARSE_MULTIBYTE_SEQ.
7335
73362003-04-17 Stefan Monnier <monnier@cs.yale.edu>
7337
7338 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
7339 Use XCDR, XCAR, CONSP.
7340 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
7341 (Fapply): Remove unnecessary GCPRO.
7342
7343 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
7344
7345 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
7346
7347 * buffer.h: Don't hardcode BEG==1.
7348
7349 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
7350
73512003-04-16 Richard M. Stallman <rms@gnu.org>
7352
7353 * xdisp.c (try_window, try_window_reusing_current_matrix):
7354 When at end of window, set window_end_pos to Z-ZV.
7355
7356 * buffer.c (Foverlay_recenter): Doc fix.
7357
73582003-04-14 Stefan Monnier <monnier@cs.yale.edu>
7359
7360 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
7361
73622003-04-14 Andrew Choi <akochoi@shaw.ca>
7363
7364 * macterm.c (mac_check_for_quit_char): Don't check more often than
7365 once a second.
7366
73672003-04-11 Stefan Monnier <monnier@cs.yale.edu>
7368
7369 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
7370 specially, so that they can't hide an implicit switch-frame event.
7371 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
7372 (head_table): Use switch-frame as event_kind for select-window.
7373 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
7374
7375 * editfns.c (Fformat): Lisp_Object/int mixup.
7376 (format2): Remove unused var numargs.
7377
73782003-04-11 Kenichi Handa <handa@m17n.org>
7379
7380 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
7381 (Qafter_insert_file_set_coding): New variable.
7382 (syms_of_fileio): Initialize and staticpro it. Delete declaration
7383 for after-insert-file-adjust-coding-function.
7384 (Finsert_file_contents): Call Qafter_insert_file_set_coding
7385 instead of Vafter_insert_file_adjust_coding_function.
7386
73872003-04-11 Kenichi Handa <handa@m17n.org>
7388
7389 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
7390
7391 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
7392 string. Callers changed.
7393
73942003-04-10 Kenichi Handa <handa@m17n.org>
7395
7396 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
7397 (syms_of_fileio): Declare it as a lisp variable.
7398 (Finsert_file_contents):
7399 Call Vafter_insert_file_adjust_coding_function before calling
7400 decode-format.
7401
74022003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7403
7404 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
7405 get GtkAdjustment as widget now is a GtkRange.
7406
7407 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
7408 GtkRange to avoid memory leak.
7409
74102003-04-09 Kenichi Handa <handa@m17n.org>
7411
7412 * xfaces.c (Vface_font_rescale_alist): New variable.
7413 (struct font_name): New member rescale_ratio.
7414 (font_rescale_ratio): New function.
7415 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
7416 (better_font_p): On comparing point sized, pay attention to
7417 recale_ratio member of fonts.
7418 (build_scalable_font_name): Reflect font->rescale_ratio in the
7419 font name.
7420 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
7421
7422 * lread.c (read1): Before calling index, check if the 2nd
7423 arguemnt is in ASCII range.
7424
74252003-04-08 Richard M. Stallman <rms@gnu.org>
7426
7427 * fileio.c (Ffile_symlink_p): Doc fix.
7428
7429 * editfns.c (Fformat): Translate positions of text properties
7430 in the format string to apply them to the result.
7431
7432 * fileio.c (Finsert_file_contents): Doc fix.
7433 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
7434
74352003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
7436
7437 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
7438
74392003-04-08 Steven Tamm <steventamm@mac.com>
7440
7441 * mac.c (init_mac_osx_environment): Switch libexec and bin so
7442 that self-contained application finds libexec files.
7443
74442003-04-08 Kenichi Handa <handa@m17n.org>
7445
7446 * coding.c (code_convert_region_unwind):
7447 Set Vlast_coding_system_used to the argument.
7448 (code_convert_region): If post-read-conversion function changed
7449 the value of last-coding-sytem, keep the new value in
7450 coding->symbol so that it won't be overridden.
7451 (run_pre_post_conversion_on_str): Likewise.
7452 (coding_system_accept_latin_extra_p): New function.
7453 (find_safe_codings): Pay attention to characters registered in
7454 latin-extra-code-table.
7455
74562003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
7457
7458 * Makefile.in (md5.o): Add missing dependency info.
7459
74602003-04-06 Richard M. Stallman <rms@gnu.org>
7461
7462 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
7463
7464 * marker.c (verify_bytepos): New function.
7465
7466 * intervals.c (set_intervals_multibyte_1): When becoming
7467 multibyte, adjust right and left child sizes to a whole set of
7468 characters. If an interval gets zero total-length, delete it.
7469 If an interval consists of just its children, delete one of them.
7470
7471 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
7472 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
7473
7474 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
7475 All calls deleted.
7476 (lisp_malloc): Do the work here directly.
7477
74782003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
7479
7480 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
7481 char tables.
7482
74832003-04-04 Kenichi Handa <handa@m17n.org>
7484
7485 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
7486 destructively change "%S" to "%s".
7487
74882003-04-03 Miles Bader <miles@gnu.org>
7489
7490 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
7491 always set.
7492
74932003-04-01 Dave Love <fx@gnu.org>
7494
7495 * xfns.c (xpm_lookup_color): Grok "opaque".
7496
74972003-03-31 Andrew Choi <akochoi@shaw.ca>
7498
7499 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
7500 parent window ID.
7501
7502 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
7503
7504 * macterm.h (struct mac_output): Define x_pixels_diff and
7505 y_pixels_diff.
7506
75072003-03-31 Juanma Barranquero <lektu@terra.es>
7508
7509 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
7510 blockinput.h and files included from it.
7511
75122003-03-31 Kim F. Storm <storm@cua.dk>
7513
7514 The following changes consolidates the common code related to
7515 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
7516 files into frame.c.
7517
7518 * frame.c: Include blockinput.h.
7519 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
7520 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
7521 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
7522 related vars here.
7523 (struct frame_parm_table, frame_parms): New table for describing
7524 frame parameters and their associated Q-variable.
7525 The order of the parameters corresponds to the sequence of the
7526 frame_parm_handlers table in redisplay_interface.
7527 (x_fullscreen_move, x_set_frame_parameters)
7528 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
7529 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
7530 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7531 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
7532 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
7533 Generic functions for processing of frame parameters.
7534 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
7535 (display_x_get_resource, x_get_resource_string): Functions for
7536 generic access to X resources.
7537 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7538 (x_default_parameter, Fx_parse_geometry): Functions for generic
7539 access to frame parameters.
7540 (x_figure_window_size): Generic calculation of frame size.
7541 Fixed to add space needed for tool bar. Also setup size_hint_flags.
7542 (syms_of_frame): Intern and staticpro frame parameter variables.
7543 Defvar_lisp Vx_resource_class and Vx_resource_name here.
7544 Defsubr Sx_get_resource and Sx_parse_geometry.
7545
7546 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
7547 parameter related vars defined in frame.c.
7548 (EMACS_CLASS): Define here.
7549 (enum FULLSCREEN_*): Define here.
7550 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
7551 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
7552 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
7553 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
7554 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
7555 (x_set_visibility, x_set_autoraise, x_set_autolower)
7556 (x_set_unsplittable, x_set_vertical_scroll_bars)
7557 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
7558 (x_figure_window_size): Add prototypes.
7559
7560 * dispextern.h (frame_parm_handler): New typedef.
7561 (struct redisplay_interface): New member frame_parm_handlers.
7562 (enum resource_types): Move declaration here.
7563 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7564 (x_default_parameter): Add prototypes.
7565
7566 * window.c: Remove extern decl for frame parameter vars.
7567 (change_window_heights): New generic function;
7568 replaces x_change_window_heights. All users changed.
7569
7570 * window.h (change_window_heights): Add prototype.
7571
7572 * xfaces.c: Remove extern decl for frame parameter vars.
7573
7574 * xterm.h (EMACS_CLASS): Remove. Use generic define.
7575 (struct w32_display_info): Fix type of xrdb member.
7576 (enum FULLSCREEN_*): Remove.
7577 Remove prototypes for generic functions (in frame.h).
7578
7579 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7580 parameters now defined in frame.h and frame.c.
7581 (Vx_resource_name): Remove. Use generic var.
7582 (enum x_frame_parms): Remove (bogus, unused enum).
7583 (check_x_display_info): Make non-static (for frame.c).
7584 (struct x_frame_parm_table, x_frame_parms): Remove.
7585 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7586 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7587 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7588 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7589 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7590 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7591 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7592 Remove. Use generic functions instead.
7593 (enum resource_types): Remove.
7594 (x_set_scroll_bar_default_width): New global function (for frame.c).
7595 (Fx_create_frame): Depend on x_figure_window_size to add space for
7596 toolbar and setup size_hint_flags.
7597 (x_frame_parm_handlers): New table for redisplay_interface.
7598 (syms_of_xfns): Don't intern/staticpro removed vars.
7599
7600 * xterm.c: Remove unnecessary extern declarations.
7601 (x_fullscreen_adjust): Remove. Use generic instead.
7602 (x_redisplay_interface): Add x_frame_parm_handlers member.
7603
7604 * w32gui.h (XrmDatabase): New (dummy) typedef.
7605
7606 * w32term.h (EMACS_CLASS): Remove. Use generic define.
7607 (struct w32_display_info): Fix type of xrdb member.
7608 (enum FULLSCREEN_*): Remove.
7609 (x_fullscreen_adjust): Remove prototype.
7610
7611 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7612 parameters now defined in frame.h and frame.c.
7613 (Vx_resource_name): Remove. Use generic var.
7614 (enum x_frame_parms): Remove (bogus, unused enum).
7615 (check_x_display_info): Make non-static (for frame.c).
7616 (struct x_frame_parm_table, x_frame_parms): Remove.
7617 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7618 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7619 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7620 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7621 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7622 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7623 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7624 Remove. Use generic functions instead.
7625 (enum resource_types): Remove.
7626 (x_set_scroll_bar_default_width): New global function (for frame.c).
7627 (Fx_create_frame): Depend on x_figure_window_size to add space for
7628 toolbar and setup size_hint_flags.
7629 (w32_frame_parm_handlers): New table for redisplay_interface.
7630 (syms_of_w32fns): Don't intern/staticpro removed vars.
7631
7632 * w32term.c: Remove unnecessary extern declarations.
7633 (x_fullscreen_adjust): Remove. Use generic instead.
7634 (x_redisplay_interface): Add w32_frame_parm_handlers member.
7635
7636 * w32reg.c (x_get_string_resource): Use XrmDatabase.
7637
7638 * macgui.h (XrmDatabase): New (dummy) typedef.
7639
7640 * macterm.h (EMACS_CLASS): Remove.
7641 (struct mac_display_info): Add xrdb member.
7642 (struct mac_output): Add want_fullscreen member.
7643
7644 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7645 parameters now defined in frame.h and frame.c.
7646 (Vx_resource_name): Remove. Use generic var.
7647 (check_x_display_info): Make non-static (for frame.c).
7648 (struct x_frame_parm_table, x_frame_parms): Remove.
7649 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7650 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7651 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7652 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7653 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7654 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7655 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7656 Remove. Use generic functions instead.
7657 (enum resource_types): Remove.
7658 (x_set_scroll_bar_default_width): New global function (for frame.c).
7659 (mac_frame_parm_handlers): New table for redisplay_interface.
7660 (syms_of_macfns): Don't intern/staticpro removed vars.
7661
7662 * macterm.c: Remove unnecessary extern declarations.
7663 (x_redisplay_interface): Add mac_frame_parm_handlers member.
7664
7665 * Makefile.in (frame.o): Add dependency on blockinput.h and files
7666 included from it (atimer.h and systime.h).
7667
76682003-03-30 Andreas Schwab <schwab@suse.de>
7669
7670 * xdisp.c (x_insert_glyphs): Fix swapped width and height
7671 parameters for shift_glyphs_for_insert.
7672
7673 * macterm.c (x_redisplay_interface): Add missing entry for
7674 draw_vertical_window_border.
7675
76762003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7677
7678 * fileio.c (Fexpand_file_name): In the no-handler case, after
7679 expanding, look again for a handler and invoke it. This is needed
7680 for filenames like "/foo/../user@host:/bar/../baz" -- the first
7681 expansion produces "/user@host:/bar/../baz" which needs to be
7682 expanded again for the finame result "/user@host:/baz".
7683
76842003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7685
7686 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
7687 of area to be redrawn for better performance.
7688
76892003-03-28 Stefan Monnier <monnier@cs.yale.edu>
7690
7691 * xterm.c (take_vertical_position_into_account): Remove.
7692 (xt_action_hook): Call set_vertical_scroll_bar if needed.
7693 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
7694 (xm_scroll_callback, x_create_toolkit_scroll_bar)
7695 (x_set_toolkit_scroll_bar_thumb): Simplify.
7696 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
7697 (XTread_socket): Remove unused var.
7698 (x_make_frame_invisible): Replace goto with else.
7699
7700 * xdisp.c (set_vertical_scroll_bar): New fun.
7701 (redisplay_window): Use it.
7702
77032003-03-26 Richard M. Stallman <rms@gnu.org>
7704
7705 * xdisp.c (update_tool_bar): Recompute tool bar if
7706 update_mode_lines is set. Set w->update_mode_line
7707 only if the tool bar contents actually change.
7708 (update_menu_bar): Undo previous change.
7709
77102003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7711
7712 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
7713 (xg_frame_set_char_size): Calculate scroll bar width before frame
7714 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
7715 (xg_separator_p): Check for all documented separator types.
7716 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
7717 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
7718
7719 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
7720 so tool bar gets updated.
7721
77222003-03-26 Stefan Monnier <monnier@cs.yale.edu>
7723
7724 * data.c (store_symval_forwarding): Re-instate part of the code
7725 that was deleted with too much enthusiasm.
7726
77272003-03-25 Stefan Monnier <monnier@cs.yale.edu>
7728
7729 * data.c (store_symval_forwarding): Delete special read-only
7730 hack for type == -1, since we now use ->constant instead.
7731 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
7732
7733 * buffer.c (overlays_in): Declare static.
7734 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
7735 `constant' field rather than the variable's `type' field.
7736
77372003-03-24 Andrew Choi <akochoi@shaw.ca>
7738
7739 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
7740
7741 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
7742
7743 * fns.c [MAC_OSX]: Do not redefine vector.
7744
7745 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
7746
7747 * macgui.h: Remove definition of No_Cursor.
7748
7749 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
7750
7751 * xdisp.c: Define No_Cursor.
7752 (x_write_glyphs, notice_overwritten_cursor)
7753 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
7754 (note_mouse_highlight): Remove Mac-specific code.
7755 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
7756
77572003-03-24 John Paul Wallington <jpw@gnu.org>
7758
7759 * xdisp.c (redisplay_window): If mini window's buffer is not
7760 empty, then redisplay it like other windows.
7761
77622003-03-23 Kim F. Storm <storm@cua.dk>
7763
7764 * w32term.c (w32_draw_window_cursor): Fix last change.
7765
77662003-03-23 Kenichi Handa <handa@m17n.org>
7767
7768 * alloc.c (make_string_from_bytes, make_specified_string):
7769 Add `const' for the arg CONTENTS.
7770
7771 * lisp.h (make_string_from_bytes, make_specified_string):
7772 Prototypes adjusted.
7773
77742003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7775
7776 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
7777
7778 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
7779 (XG_SB_RANGE): New define.
7780
7781 * gtkutil.c (xg_fixed_handle_expose): New function.
7782 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
7783 expose events.
7784 (xg_update_scrollbar_pos): Take two more arguments, left and width
7785 of scroll bar including borders.
7786 Clear left and right part outside scroll bar separately as some
7787 themes have bars that are not an even number of pixels.
7788 Don't set reallocate_redraws, don't call
7789 gdk_window_process_all_updates.
7790 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
7791 so no need to change it. Calculate size and value with XG_SB_RANGE.
7792
7793 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
7794 Pass left and width of scroll bar including borders to
7795 xg_update_scrollbar_pos.
7796
77972003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
7798
7799 * Makefile.in: Make sure space precedes end-of-line backslashes.
7800
78012003-03-22 Kim F. Storm <storm@cua.dk>
7802
7803 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
7804 Add generic versions here. Remove system specific versions
7805 defined elsewhere.
7806
7807 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
7808 Add prototypes.
7809
7810 * xterm.h (STORE_NATIVE_RECT): New macro.
7811
78122003-03-21 Kim F. Storm <storm@cua.dk>
7813
7814 * xdisp.c (get_glyph_string_clip_rect):
7815 Use FRAME_INTERNAL_BORDER_WIDTH.
7816
7817 * dispextern.h (struct redisplay_interface): Add active_p
7818 argument to draw_window_cursor member. All uses changed.
7819
78202003-03-21 Kim F. Storm <storm@cua.dk>
7821
7822 The following changes consolidate code related to writing and
7823 inserting glyphs, exposing frame, the tool bar, the mouse face,
7824 the output cursor, and help echo from xterm.c, w32term.c and
7825 macterm.c into xdisp.c. It also generalizes the use of the
7826 window_part enum instead of using numeric values throughout.
7827
7828 * xdisp.c: Consolidate gui-independent code here.
7829 Include keymap.h.
7830 (Qhelp_echo): Import.
7831 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7832 (help_echo_string, help_echo_window, help_echo_object)
7833 (previous_help_echo_string, help_echo_pos): Declare here.
7834 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7835 (estimate_mode_line_height): Define here. Handle windowing
7836 systems directly (without using estimate_mode_line_height_hook).
7837 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7838 (update_window_cursor, update_cursor_in_window_tree)
7839 (fast_find_position, fast_find_string_pos)
7840 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7841 (expose_area, expose_line, expose_overlaps, expose_window)
7842 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7843 declared static as they are only used locally in xdisp.c.
7844 (draw_glyphs): Rename from x_draw_glyphs and make static.
7845 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7846 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7847 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
7848 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
7849 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7850 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7851 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7852 (note_mouse_highlight, x_clear_window_mouse_face)
7853 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7854 (x_intersect_rectangles): New generic functions for use by xdisp.c
7855 and GUI front-ends.
7856 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7857 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7858
7859 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7860 (NativeRectangle): Generic typedef for rectangle type.
7861 (enum window_part): Move here from window.c.
7862 (struct redisplay_interface): New members flush_display_optional,
7863 define_frame_cursor, clear_frame_area, draw_window_cursor,
7864 draw_vertical_window_border, shift_glyphs_for_insert.
7865 Rename member clear_mouse_face to clear_window_mouse_face.
7866 (estimate_mode_line_height_hook): Remove hook.
7867 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7868 (tool_bar_item_info): Remove prototype.
7869 (help_echo_string, help_echo_window, help_echo_object)
7870 (previous_help_echo_string, help_echo_pos)
7871 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7872 (x_stretch_cursor_p, output_cursor): Declare extern.
7873 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7874 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7875 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7876 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7877 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7878 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7879 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7880 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7881 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7882 Add prototypes.
7883 (mode_line_string, marginal_area_string): Fix prototypes.
7884
7885 * window.c (enum window_part): Move to dispextern.h.
7886 (coordinates_in_window): Use enum window_part member names
7887 instead of numbers to describe return value.
7888 (struct check_window_data): Change part member to window_part.
7889 (check_window_containing): Return window_part unaltered.
7890 (window_from_coordinates): Change part arg from int to enum
7891 window_part. Allow part arg to be null. All users changed.
7892
7893 * window.h (window_from_coordinates): Fix prototype.
7894
7895 * term.c (estimate_mode_line_height): Move to xdisp.c.
7896
7897 * keyboard.c (make_lispy_event): Use enum window_part.
7898
7899 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7900 window_part instead of int in arg list. Users changed.
7901
7902 * xterm.h (No_Cursor): Declare as None for X.
7903 (struct mac_output): Replace member cross_cursor by hand_cursor.
7904
7905 * xterm.c: Remove consolidated defines and code.
7906 (BETWEEN): Remove unused macro.
7907 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7908 (x_define_frame_cursor, x_clear_frame_area)
7909 (x_draw_window_cursor): New X-specific functions for RIF.
7910 (x_redisplay_interface): Add new members.
7911
7912 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7913
7914 * w32term.h (struct w32_output): Remove cross_cursor member.
7915
7916 * w32term.c: Remove consolidated defines and code.
7917 (BETWEEN): Remove unused macro.
7918 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7919 (w32_define_frame_cursor, w32_clear_frame_area)
7920 (w32_draw_window_cursor): New W32-specific functions for RIF.
7921 (w32_redisplay_interface): Add new members.
7922
7923 * w32gui.h (No_Cursor): Define as 0 for W32.
7924 (XRectangle): Add X compatible rectangle type.
7925 (NativeRectangle): Declare as RECT for W32.
7926 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7927
7928 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7929
7930 * w32console.c: Remove consolidated defines and code.
7931
7932 * msdos.h (Display_Info): Add generic typedef.
7933
7934 * msdos.c: Remove consolidated defines and code.
7935 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7936
7937 * macterm.h (struct mac_output): Replace member cross_cursor by
7938 hand_cursor.
7939 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7940
7941 * macterm.c: Remove consolidated defines and code.
7942 (BETWEEN): Remove unused macro.
7943 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7944 (mac_define_frame_cursor, mac_clear_frame_area)
7945 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7946 (x_redisplay_interface): Add new members.
7947
7948 * macgui.h (No_Cursor): Define as 0 for Mac.
7949 (XRectangle): Add X compatible rectangle type.
7950 (NativeRectangle): Declare as Rect for Mac.
7951 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7952
7953 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7954 (x_set_cursor_color): Use x_display_and_set_cursor.
7955
7956 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
7957 included from it. Add dependency on keymap.h.
7958
7959 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7960
79612003-03-21 Kenichi Handa <handa@m17n.org>
7962
7963 * fileio.c (Fexpand_file_name): Fix previous change.
7964
79652003-03-19 Kenichi Handa <handa@m17n.org>
7966
7967 * fileio.c (Ffile_name_directory): Reconstruct file name by
7968 make_specified_string.
7969 (Ffile_name_nondirectory, Ffile_name_as_directory)
7970 (Fdirectory_file_name, Fexpand_file_name)
7971 (Fsubstitute_in_file_name): Likewise.
7972 (Fread_file_name): Compare decoded homedir with DIR and
7973 DEFAULT_FILENAME.
7974
7975 * alloc.c (make_specified_string): If NCHARS is negative, count
7976 the number of characters.
7977
79782003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7979
7980 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7981 all widgets.
7982
7983 * gtkutil.h: Removed xg_ignore_next_thumb.
7984
79852003-03-18 Kenichi Handa <handa@m17n.org>
7986
7987 * coding.c (Vchar_coding_system_table): Remove this variable.
7988 (Vcoding_system_safe_chars): New variable.
7989 (intersection): Remove this function.
7990 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7991 all codings in SAFE_CODINGS.
7992 (Ffind_coding_systems_region_internal): Adjust for the change of
7993 find_safe_codings. Get generic coding systems from
7994 Vcoding_system_safe_chars.
7995 (Fdefine_coding_system_internal): New function.
7996 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7997 Initialize and staticpro Vcoding_system_safe_chars.
7998
79992003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8000
8001 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
8002 equal old values before updating.
8003
8004 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
8005
8006 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
8007
80082003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8009
8010 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
8011 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
8012 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
8013 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
8014 (xg_create_scroll_bar): Pass bar to button event callback.
8015 (xg_find_top_left_in_fixed): New function.
8016 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
8017 whole scroll bar area. Get old position with
8018 xg_find_top_left_in_fixed, calculate and only clear needed areas.
8019 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
8020 dragging is in progress. Calculate whole as for Motif.
8021 Remove code that saved last values. Call gtk_range functions to
8022 set scroll bar sizes.
8023
8024 * gtkutil.h: Removed xg_ignore_next_thumb.
8025
80262003-03-17 Juanma Barranquero <lektu@terra.es>
8027
8028 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
8029 and files included from it.
8030
80312003-03-18 Stefan Monnier <monnier@cs.yale.edu>
8032
8033 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
8034 multiple occurrences of the same keymap under different prefixes.
8035 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
8036
80372003-03-16 Jason Rumney <jasonr@gnu.org>
8038
8039 * w32gui.h: Use HDC for Display.
8040
8041 * w32term.c (w32_encode_char): Prevent double-byte chars from
8042 crashing Emacs.
8043
8044 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
8045 as binary.
8046
80472003-03-16 Juanma Barranquero <lektu@terra.es>
8048
8049 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
8050
80512003-03-16 Kim F. Storm <storm@cua.dk>
8052
8053 The following changes consolidate some of the gui-independent
8054 parts of the processing and drawing of "glyph strings" from
8055 xterm.c, w32term.c, and macterm.c into xdisp.c.
8056
8057 * dispextern.h (struct glyph): Reduce face_id member from 22 to
8058 21 bits (this reduces number of faces from 4M to 2M).
8059 Replace W32 specific w32_font_type member (2 bits) by generic
8060 font_type member (3 bits) for portability.
8061 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
8062 (enum draw_glyphs_face): Define here.
8063 (struct glyph_string): Define here. Merge W32 and X versions.
8064 (struct redisplay_interface): New members per_char_metric,
8065 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
8066 (VCENTER_BASELINE_OFFSET): Define here.
8067 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
8068 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
8069
8070 * xdisp.c: Consolidate gui-independent "glyph string" code here.
8071 (dump_glyph_string): Moved here.
8072 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
8073 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
8074 (fill_composite_glyph_string, fill_glyph_string)
8075 (fill_image_glyph_string, fill_stretch_glyph_string)
8076 (left_overwritten, left_overwriting, right_overwritten)
8077 (right_overwriting, get_char_face_and_encoding)
8078 (set_glyph_string_background_width, compute_overhangs_and_x)
8079 (append_glyph, append_composite_glyph, produce_image_glyph)
8080 (take_vertical_position_into_account, append_stretch_glyph)
8081 (produce_stretch_glyph): New generic functions (based on X version).
8082 Call platform specific functions through rif.
8083 (INIT_GLYPH_STRING): New macro, hides W32 details.
8084 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
8085 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
8086 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
8087 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
8088 (notice_overwritten_cursor):
8089 Generic functions exported to platform modules. Users changed.
8090
8091 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
8092 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
8093 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
8094 New macros for consolidated code.
8095
8096 * xterm.c: Remove consolidated defines and code.
8097 (x_per_char_metric, x_encode_char)
8098 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
8099 (x_redisplay_interface): Add new members.
8100
8101 * w32gui.h (Display): Add dummy typedef for consolidation.
8102 (XChar2b): Define alias for wchar_t for consolidation.
8103 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
8104
8105 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
8106 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
8107 New macros for consolidation.
8108
8109 * w32term.c: Remove consolidated defines and code.
8110 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
8111 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
8112 (w32_per_char_metric): Change font_type arg to int for RIF.
8113 (w32_encode_char): Return int according to RIF requirements.
8114 (w32_compute_glyph_string_overhangs): Adapt to RIF.
8115 (w32_get_glyph_overhangs): New function for RIF. Uses generic
8116 x_get_glyph_overhangs.
8117 (w32_redisplay_interface): Add new members.
8118
8119 * macgui.h (XChar2b): Move typedef here for consolidation.
8120 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
8121
8122 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
8123 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
8124 consolidation.
8125
8126 * macterm.c: Remove consolidated defines and code.
8127 (mac_per_char_metric): New function for RIF.
8128 (mac_encode_char): Adapt to new RIF requirements.
8129 (mac_compute_glyph_string_overhangs): Adapt for RIF.
8130 (x_redisplay_interface): Add new members.
8131
81322003-03-15 Stefan Monnier <monnier@cs.yale.edu>
8133
8134 * keymap.c (Vmenu_events): New var.
8135 (syms_of_keymap): Initialize it.
8136 (where_is_internal): Check more carefully what is a menu event.
8137
81382003-03-14 Richard M. Stallman <rms@gnu.org>
8139
8140 * lread.c (read1): After #!, exit loop on eof.
8141
81422003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8143
8144 * gtkutil.h: Add declaration for xg_frame_cleared.
8145
8146 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
8147
8148 * gtkutil.c (struct xg_last_sb_pos): New structure.
8149 (handle_fixed_child): New function.
8150 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
8151 and force a redraw on them.
8152 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
8153 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
8154 so we can avoid unneeded redraws.
8155 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
8156 and force a redraw on the scroll bar.
8157 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
8158 if xg_last_sb_pos shows the positions are up to date.
8159 (xg_frame_cleared): New function.
8160
81612003-03-13 Kenichi Handa <handa@m17n.org>
8162
8163 * coding.c (Fdetect_coding_region): Fix docstring.
8164 (Fdetect_coding_string): Fix docstring.
8165
81662003-03-13 Andreas Schwab <schwab@suse.de>
8167
8168 * gtkutil.c: Add prototype for create_menus.
8169
8170 * data.c (long_to_cons): Fix type of top.
8171
8172 * xselect.c (selection_data_to_lisp_data): Use int instead of
8173 long for an integer of size 4.
8174
8175 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
8176 (xg_tool_bar_help_callback): Likewise.
8177
81782003-03-12 Andreas Schwab <schwab@suse.de>
8179
8180 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
8181
81822003-03-12 Kim F. Storm <storm@cua.dk>
8183
8184 The following changes consolidate the fringe handling from
8185 xterm.c, w32term.c, and macterm.c into xdisp.c.
8186
8187 * xdisp.c: Consolidate fringe handling code here.
8188 (left_bits, right_bits, continued_bits, continuation_bits)
8189 (ov_bits, zv_bits): Define fringe bitmaps.
8190 (fringe_bitmaps): New array holding fringe bitmaps.
8191 (draw_fringe_bitmap): Draw a specific bitmap; call display
8192 specific drawing routine via rif->draw_fringe_bitmap.
8193 (draw_row_fringe_bitmaps): Generic replacement for
8194 x_draw_row_fringe_bitmaps; all callers changed.
8195 (compute_fringe_widths): Generic replacement for
8196 x_compute_fringe_widths; all callers changed.
8197
8198 * dispextern.h (enum fringe_bitmap_type): Define here.
8199 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
8200 (fringe_bitmaps): Declare extern.
8201 (struct redisplay_interface): New member draw_fringe_bitmap.
8202 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
8203
8204 * xterm.c: Remove generic fringe code.
8205 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
8206 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
8207
8208 * w32term.c: Remove generic fringe code.
8209 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
8210 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
8211
8212 * macterm.c: Remove generic fringe code.
8213 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
8214 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
8215
82162003-03-11 Stefan Monnier <monnier@cs.yale.edu>
8217
8218 * print.c (Fprin1_to_string): Return unibyte string if possible.
8219
82202003-03-09 David Kastrup <dak@gnu.org>
8221
8222 * process.c (read_process_output): We have allocated enough space
8223 for readmax and carryover, so actually use the alloted space.
8224
82252003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8226
8227 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
8228 toolkit scrollbar click.
8229
8230 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
8231 for USE_GTK.
8232 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
8233 also.
8234 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
8235 scrollbar and control is pressed, call x_scroll_bar_handle_click.
8236
8237 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
8238
8239 * gtkutil.c (xg_get_scroll_id_for_window): New function.
8240 (xg_tool_bar_item_expose_callback): New function.
8241 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
8242 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
8243 on the tool bar widget.
8244 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
8245 to expose on the tool bar item widgets.
8246
82472003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8248
8249 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
8250 struct image* when deciding to update (struct image* may have been
8251 deleted from the image cache).
8252
8253 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
8254 the event isn't for a frame (i.e. for dialogs).
8255
82562003-03-07 Kenichi Handa <handa@m17n.org>
8257
8258 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
8259 composition components reaches the limit, terminate composing.
8260 (COMPOSITION_OK): New macro.
8261 (detect_coding_iso2022): Use it if an escape sequence for
8262 composition is found.
8263 (coding_restore_composition): Adjust the number of composition
8264 components if it is not sane.
8265
82662003-03-06 Juanma Barranquero <lektu@terra.es>
8267
8268 * w32term.h (struct w32_display_info): Add xrdb member to support
8269 passing resources via -xrm on Windows.
8270
8271 * w32term.c (w32_make_rdb): New function.
8272 (w32_term_init): Use it to initialize xrdb member of w32_display_info
8273 struct. Delete leftover code.
8274
8275 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
8276 for resources passed on the command line.
8277
8278 * w32reg.c (w32_get_rdb_resource): New function.
8279 (x_get_string_resource): Use it, so resources passed with -xrm
8280 supercede the ones in the registry.
8281
82822003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8283
8284 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
8285 instead of x_top_window_to_frame.
8286
82872003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8288
8289 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
8290 when restarting Emacs.
8291
82922003-03-03 Richard M. Stallman <rms@gnu.org>
8293
8294 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
8295 to run kill-buffer-query-functions.
8296 (Qkill_buffer_query_functions): New var.
8297 (syms_of_buffer): Init and staticpro it.
8298
82992003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8300
8301 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
8302
83032003-02-25 Kim F. Storm <storm@cua.dk>
8304
8305 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
8306 If centering point failed to make whole line visible and vscroll
8307 is non-zero, disable vscroll and try centering point again.
8308
8309 * lread.c (read1): Accept `single space' syntax like (? x).
8310
83112003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8312
8313 * keyboard.c (cancel_hourglass_unwind): Surround with
8314 #ifdef HAVE_X_WINDOWS
8315
83162003-02-25 Kenichi Handa <handa@m17n.org>
8317
8318 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
8319 process only when "subprocesses" is defined.
8320
83212003-02-24 Stefan Monnier <monnier@cs.yale.edu>
8322
8323 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
8324
83252003-02-24 Juanma Barranquero <lektu@terra.es>
8326
8327 * callint.c (fix_command): Declare as static void and move before
8328 Fcall_interactively.
8329
8330 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
8331 (syms_of_xdisp): Don't initialize Qwhen.
8332
83332003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8334
8335 * keyboard.c (cancel_hourglass_unwind): New function.
8336 (command_loop_1): Cancel hourglass with unwind-protect.
8337
83382003-02-23 Richard M. Stallman <rms@gnu.org>
8339
8340 * callint.c (fix_command): New subroutine, from Fcall_interactively.
8341 Detect (when ... (region-beginning)) etc.
8342 (Fcall_interactively): Call fix_command.
8343 (Qif, Qwhen): New variables.
8344 (syms_of_callint): Init and staticpro them.
8345
8346 * regex.c (print_partial_compiled_pattern): Output to stderr.
8347
83482003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8349
8350 * dired.c (directory_files_internal): Don't expand directory.
8351 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
8352 instead. From Lars Hansen <larsh@math.ku.dk>.
8353
83542003-02-22 Stefan Monnier <monnier@cs.yale.edu>
8355
8356 * fns.c (string_to_multibyte): Remove unused var i.
8357 (Flanginfo): Fix int/Lisp_Object mixup.
8358 (void_call2): New fun.
8359 (Fmap_char_table): Use it in place of call2.
8360
8361 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
8362
8363 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
8364
8365 * keymap.c (copy_keymap_1): Make it static.
8366
8367 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
8368
83692003-02-22 David Ponce <david@dponce.com>
8370
8371 * lread.c (Fload): Don't check STRING_MULTIBYTE.
8372
83732003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8374
8375 * process.h: Removed subtty field from struct Lisp_Process.
8376
8377 * process.c (create_process): Remove setting of subtty.
8378 (emacs_get_tty_pgrp): New function.
8379 (Fprocess_running_child_p, process_send_signal):
8380 Call emacs_get_tty_pgrp instead of ioctl.
8381 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
8382
83832003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8384
8385 * keymap.c (Fdefine_key): Doc fix.
8386
83872003-02-21 Juanma Barranquero <lektu@terra.es>
8388
8389 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
8390
8391 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
8392 POLLING_PROBLEM_IN_SELECT.
8393
8394 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
8395 Delete #undef of POLLING_PROBLEM_IN_SELECT.
8396
8397 * s/hpux10-20.h: New file.
8398
8399 * process.c (wait_reading_process_input):
8400 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
8401
84022003-02-20 Kenichi Handa <handa@m17n.org>
8403
8404 * fontset.c (check_fontset_name): If NAME is nil, return the
8405 default fontset.
8406 (override_font_info): New function.
8407 (Fset_fontset_font): Document that NAME nil means the default fontset.
8408 (Ffontset_info): If FONTSET is not the default fontset, merge
8409 FONTSET onto the copy of the default fontset, and work on that
8410 copy. Document that NAME nil means the default fontset.
8411 (Ffontset_font): Document that NAME nil means the default fontset.
8412
8413 * process.c (setup_process_coding_systems): If the process's
8414 in/out descriptor is -1, do nothing.
8415
84162003-02-19 Andreas Schwab <schwab@suse.de>
8417
8418 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
8419 Add prototypes.
8420
84212003-02-19 Kenichi Handa <handa@m17n.org>
8422
8423 * xfaces.c (try_alternative_families): Try all scalable fonts if
8424 Vscalable_fonts_allowed is not Qt.
8425
84262003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8427
8428 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
8429
84302003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8431
8432 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
8433 names.
8434
8435 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
8436 (sorted_font_list): Move allocation of struct font_name to
8437 x_face_list_fonts.
8438 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
8439 (Fx_list_fonts): Set maxnames to -1 to get all font names.
8440
84412003-02-18 Kim F. Storm <storm@cua.dk>
8442
8443 * lread.c (read1): Fix last change.
8444 "`" is not always special. Allow "?" after a character constant.
8445
84462003-02-18 Andrew Choi <akochoi@shaw.ca>
8447
8448 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
8449
84502003-02-18 Andreas Schwab <schwab@suse.de>
8451
8452 * window.c (window_scroll_pixel_based): Move outside a
8453 multi-glyph character before setting new window start.
8454
8455 * xdisp.c (in_display_vector_p): New function.
8456 * dispextern.h (in_display_vector_p): Declare.
8457
84582003-02-18 Kim F. Storm <storm@cua.dk>
8459
8460 * lread.c (read1): Fix and relax read syntax.
8461 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
8462 Only recognize "," after dotted-pair dot if inside backquote.
8463 Never include "`" or "," (inside backquote) in a symbol.
8464 Allow dotted-pair dot after a character constant.
8465 Allow "`" and "," (inside backquote) after a character constant.
8466
84672003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8468
8469 * gtkutil.c (xg_tool_bar_expose_callback): New function.
8470 (xg_create_tool_bar): Force style of tool bar to be horizontal with
8471 icons. Set name of tool bar to emacs-toolbar.
8472 (update_frame_tool_bar): Connect expose event to
8473 xg_tool_bar_expose_callback.
8474
84752003-02-17 Richard M. Stallman <rms@gnu.org>
8476
8477 * keyboard.c (this_command_key_count_reset): New variable.
8478 Initiatize to 0 where this_command_key_count is set.
8479 (read_char): Save and restore this_command_key_count_reset
8480 around input method code.
8481 (read_char): If this_command_key_count_reset, echo reread commands.
8482 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
8483
84842003-02-17 Kenichi Handa <handa@m17n.org>
8485
8486 * fns.c (string_to_multibyte): Always return a multibyte string.
8487
84882003-02-16 Jason Rumney <jasonr@gnu.org>
8489
8490 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
8491 Negative max_fonts parameter means list all.
8492
84932003-02-14 Dave Love <fx@gnu.org>
8494
8495 * fns.c (Flanginfo): Doc fix.
8496
84972003-02-13 Kim F. Storm <storm@cua.dk>
8498
8499 * lread.c (read_escape): Interpret \s as a SPACE character, except
8500 for \s-X in a character constant which still is the super modifier.
8501 (read1): Signal an `invalid read syntax' error if a character
8502 constant is immediately followed by a digit or symbol character.
8503
8504 * search.c (Fmatch_data): Doc fix. Explicitly state that
8505 match-data is undefined if last search failed.
8506
8507 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
8508 All uses changed.
8509
85102003-02-12 Juanma Barranquero <lektu@terra.es>
8511
8512 * eval.c (Fdefmacro): Fix typo.
8513
85142003-02-12 Kim F. Storm <storm@cua.dk>
8515
8516 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
8517 macro is a string, convert meta modifiers in string when copying
8518 the string into a vector.
8519
85202003-02-11 Kim F. Storm <storm@cua.dk>
8521
8522 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
8523
85242003-02-11 Kenichi Handa <handa@m17n.org>
8525
8526 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
8527
85282003-02-10 Kim F. Storm <storm@cua.dk>
8529
8530 * process.c: Doc fixes.
8531 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
8532
85332003-02-10 Kenichi Handa <handa@m17n.org>
8534
8535 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
8536
8537 * process.c (QCfilter_multibyte): New variable.
8538 (setup_process_coding_systems): New function.
8539 (Fset_process_buffer, Fset_process_filter):
8540 Call setup_process_coding_systems.
8541 (Fstart_process): Initialize the member `filter_multibyte' of
8542 struct Lisp_Process.
8543 (create_process): Call setup_process_coding_systems.
8544 (Fmake_network_process): New keyward `:filter-multibyte'.
8545 Initialize the member `filter_multibyte' of struct Lisp_Process.
8546 Call setup_process_coding_systems.
8547 (server_accept_connection): Call setup_process_coding_systems.
8548 (read_process_output): If the process has a filter, decide the
8549 multibyteness of a string to given to the filter by
8550 `filter_multibyte' member of the process. If the process doesn't
8551 have a filter and the result of conversion is unibyte, use
8552 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
8553 multibyte form.
8554 (Fset_process_coding_system): Call setup_process_coding_systems.
8555 (Fset_process_filter_multibyte): New function.
8556 (Fprocess_filter_multibyte_p): New function.
8557 (syms_of_process): Intern and staticpro QCfilter_multibyte.
8558 Defsubr Sset_process_filter_multibyte and
8559 Sprocess_filter_multibyte_p.
8560
8561 * process.h (struct Lisp_Process): New member filter_multibyte.
8562
8563 * lisp.h (setup_process_coding_systems): Add prototype.
8564
8565 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
8566 process, update coding systems for the process.
8567
85682003-02-09 Kenichi Handa <handa@m17n.org>
8569
8570 * fns.c (string_to_multibyte): New function.
8571 (Fstring_to_multibyte): New function.
8572 (syms_of_fns): Defsubr it.
8573
85742003-02-08 Andreas Schwab <schwab@suse.de>
8575
8576 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
8577 instead of the substitution.
8578
85792003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8580
8581 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
8582
8583 * xmenu.c (menu_position_func): Adjust menu popup position so that
8584 the menu is fully visible.
8585
85862003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8587
8588 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
8589 (x_make_frame_invisible, x_wm_set_icon_position):
8590 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
8591
8592 * xfns.c (x_set_name, x_set_title): Ditto.
8593
85942003-02-04 Richard M. Stallman <rms@gnu.org>
8595
8596 * keyboard.c (echo_now): Update before_command_echo_length.
8597 (Freset_this_command_lengths): Reset this_command_key_count etc.
8598 immediately rather than arranging to do it later.
8599 (before_command_key_count_1, before_command_echo_length_1)
8600 (before_command_restore_flag): Vars deleted.
8601 (add_command_key): Don't handle before_command_restore_flag.
8602 (read_char, record_menu_key): Don't update before_command_key_count or
8603 before_command_echo_length.
8604 (read_char): Don't handle before_command_restore_flag.
8605
8606 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
8607 in direct-output clauses if it wouldn't be called in the ordinary case.
8608
86092003-02-04 Kim F. Storm <storm@cua.dk>
8610
8611 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
8612
86132003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8614
8615 * gtkutil.c (remove_from_container): Copying list is not needed.
8616 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
8617 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
8618 on list returned from gtk_container_get_children to avoid memory leak.
8619
86202003-02-01 Jason Rumney <jasonr@gnu.org>
8621
8622 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
8623 local malloc.
8624 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
8625 definitions in xpm.h.
8626 (init_xpm_functions): New function.
8627 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
8628 (init_external_image_libraries): Try to load libXpm.dll.
8629
8630 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
8631 timestamp.
8632
86332003-01-31 Dave Love <fx@gnu.org>
8634
8635 * syntax.c (Fskip_chars_forward)
8636 (open-paren-in-column-0-is-defun-start): Doc fix.
8637
86382003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
8639
8640 * fileio.c: Support // at start of name for Cygwin (just added proper
8641 preprocessor tests).
8642
8643 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
8644
8645 * Makefile.in: Use @EXEEXT@ for Cygwin.
8646
8647 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
8648
8649 * s/cygwin.h: Added for Cygwin port.
8650
86512003-01-31 Juanma Barranquero <lektu@terra.es>
8652
8653 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
8654 when including gif_lib.h.
8655 (init_gif_functions, init_tiff_functions): New functions.
8656 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
8657 Windows. Disable color table lookups. Call library functions
8658 through pointers determined at runtime.
8659 (init_external_image_libraries): Try to load libungif.dll and
8660 libtiff.dll.
8661
86622003-01-31 Kenichi Handa <handa@m17n.org>
8663
8664 * xdisp.c (SKIP_GLYPHS): New macro.
8665 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
8666
86672003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8668
8669 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
8670
86712003-01-30 Dave Love <fx@gnu.org>
8672
8673 * alloc.c (Vgc_elapsed, gcs_done): New variables.
8674 (Fgarbage_collect): Use them.
8675 (init_alloc, syms_of_alloc): Set them up.
8676
86772003-01-30 Juanma Barranquero <lektu@terra.es>
8678
8679 * w32fns.c (init_external_image_libraries): Add missing operator.
8680
86812003-01-29 Jason Rumney <jasonr@gnu.org>
8682
8683 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
8684 an alternative name for jpeg.dll.
8685
86862003-01-29 Kenichi Handa <handa@m17n.org>
8687
8688 * xdisp.c (set_cursor_from_row): Pay attention to string display
8689 properties.
8690
86912003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
8692
8693 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
8694 <escape>.
8695 (keycode_to_xkeysym_table): Reformat and add more comments.
8696 (XTread_socket): Drop special case for backspace.
8697
86982003-01-28 Andrew Choi <akochoi@shaw.ca>
8699
8700 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
8701 values in old-style RGB specs.
8702
87032003-01-27 Juanma Barranquero <lektu@terra.es>
8704
8705 * w32fns.c (init_external_image_libraries): Try alternate names for the
8706 jpeg dll.
8707
87082003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8709
8710 * gtkutil.c (create_dialog, xg_separator_p)
8711 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
8712 before calling strcmp or strlen.
8713
87142003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8715
8716 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
8717 and handle image load failure.
8718
87192003-01-26 Jason Rumney <jasonr@gnu.org>
8720
8721 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
8722 New functions.
8723 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
8724 Disable color table lookups. Call jpeg library functions
8725 through pointers determined at runtime.
8726 (init_external_image_libraries): Try to load jpeg.dll.
8727
87282003-01-25 Richard M. Stallman <rms@gnu.org>
8729
8730 * lisp.h: Declare format2 instead of format1.
8731
8732 * fileio.c (barf_or_query_if_file_exists):
8733 Call format2 instead of format1.
8734
8735 * editfns.c (format2): New function, replaces format1
8736 but takes exactly two Lisp Objects as format args.
8737
8738 * buffer.c (Fkill_buffer): Call format2 instead of format1.
8739
87402003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8741
8742 * xterm.h: Change to return value of x_dispatch_event to int.
8743
8744 * xterm.c (x_filter_event): New function.
8745 (event_handler_gdk, XTread_socket): Call x_filter_event.
8746 (x_dispatch_event): Change to return value of finish.
8747 (event_handler_gdk): Use return value from x_dispatch_event.
8748
8749 * xfns.c (x_window): Call create_frame_xic for GTK version to
8750 initialize input methods.
8751
8752 * gtkutil.h: Add (void) prototypes.
8753
8754 * gtkutil.c (create_menus): Remove code that puts the help menu to
8755 the right.
8756
87572003-01-25 Jason Rumney <jasonr@gnu.org>
8758
8759 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
8760 [HAVE_PNG]: Sync with xfns.c version.
8761 (png_load): Adjust colors for Windows. Use Windows
8762 bitmaps. Disable color table lookups.
8763 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
8764 (init_png_functions): New function.
8765 (png_read_from_memory, png_load): Call png library functions
8766 through pointers determined at runtime.
8767 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
8768 (init_external_image_libraries): New function.
8769 (init_xfns): Call it.
8770
87712003-01-24 Andreas Schwab <schwab@suse.de>
8772
8773 * minibuf.c (Fminibuffer_message): Verify type of parameter.
8774
87752003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8776
8777 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
8778 of static initializer.
8779
87802003-01-24 Dave Love <fx@gnu.org>
8781
8782 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
8783 architectures.
8784
8785 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
8786 Use __alignof__.
8787
87882003-01-24 Kenichi Handa <handa@m17n.org>
8789
8790 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
8791 It it is nonzero, don't pretend that an invisible area doesn't exist.
8792 (command_loop_1): Call adjust_point_for_property with proper
8793 second arg.
8794
87952003-01-22 Jason Rumney <jasonr@gnu.org>
8796
8797 Sync changes with xterm.c and xfns.c.
8798
8799 * w32term.c (x_draw_glyph_string_foreground)
8800 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8801
8802 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
8803 phys_cursor's hpos is overwritten. This is still not completely
8804 correct, as it doesn't really make sense to use hpos at all to
8805 get the cursor glyph (as that is relative to the width of the
8806 characters on the line, which may have changed during the update).
8807
8808 * w32term.c (notice_overwritten_cursor): Handle the special case
8809 of the cursor being in the first blank non-text line at the
8810 end of a window.
8811
8812 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8813 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8814 Compute from the x position returned by x_draw_glyphs.
8815
8816 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8817 except for NO_CURSOR and system caret, to make phys_cursor_width
8818 contain what its name suggests.
8819 (notice_overwritten_cursor): Consider the cursor image erased if
8820 the output area intersects the cursor image in y-direction.
8821
8822 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8823 note_mode_line_highlight and extend.
8824
8825 * w32term.c (last_window): New variable.
8826 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8827 (note_mouse_movement): Remove reimplemented code in #if 0.
8828
8829 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8830 not update_mode_lines, and always set it to 1.
8831
88322003-01-21 Jason Rumney <jasonr@gnu.org>
8833
8834 * w32fns.c (IDC_HAND): Define it if system headers don't.
8835
88362003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8837
8838 * w32term.h (struct w32_output): New member hand_cursor.
8839 (WM_EMACS_SETCURSOR): New message definition.
8840
8841 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8842 function w32_define_cursor.
8843 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8844 position, change member name output_data.x to output_data.w32 and
8845 add function w32_define_cursor.
8846 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8847 and change member name output_data.x to output_data.w32.
8848 (w32_initialize_display_info):
8849 Setup dpyinfo->vertical_scroll_bar_cursor.
8850
8851 * w32fns.c (Vx_hand_shape): New variable.
8852 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8853 WM_EMACS_SETCURSOR.
8854 (x-create-frame): Setup Cursor types.
8855
88562003-01-21 David Ponce <david@dponce.com>
8857
8858 * w32term.c (w32_encode_char): For DIM=1 charset, set
8859 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
8860 x_encode_char change by Kenichi Handa <handa@m17n.org> on
8861 2002-09-30.)
8862 (w32_draw_relief_rect): Declare all args.
8863 (w32_define_cursor): New.
8864
8865 * w32fns.c (w32_load_cursor): New function.
8866 (w32_init_class): Use it.
8867 (x_put_x_image): Declare all args.
8868
88692003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
8870
8871 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8872
88732003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8874
8875 * gtkutil.c: Must include stdio.h before termhooks.h
8876
88772003-01-21 Dave Love <fx@gnu.org>
8878
8879 * alloc.c (Fgc_status): Print zombie list.
8880 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8881 Fix assignment of zombies.
8882 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8883 Don't take car of non-cons.
8884
8885 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8886
8887 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8888
88892003-01-20 David Ponce <david@dponce.com>
8890
8891 * w32menu.c (digest_single_submenu): Declare all args.
8892
8893 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8894 changes in xmenu.c:
8895
8896 (parse_single_submenu): Use individual keymap's prompt
8897 string as pane name, if there is one.
8898 (set_frame_menubar): Save menu_items_n_panes from each call to
8899 parse_single_submenu and use it when calling digest_single_submenu.
8900
89012003-01-20 Steven Tamm <steventamm@mac.com>
8902
8903 * macterm.c (XTread_socket): Checks for valid, visible window
8904 before sending a scroll-wheel event.
8905
89062003-01-20 Richard M. Stallman <rms@gnu.org>
8907
8908 * xdisp.c (redisplay_window): If mini window's buffer is not
8909 a minibuffer, then redisplay it like other windows.
8910
89112003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8912
8913 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8914 external tool bar before setting tool bar height.
8915
89162003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8917
8918 * xterm.c (handle_one_xevent): Surround popup_activated
8919 with #ifdef:s for non-toolkit version.
8920
8921 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8922 (gtkutil.o): New file.
8923 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8924 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8925
8926 * gtkutil.c: New file for GTK version.
8927
8928 * gtkutil.h: New file for GTK version.
8929
8930 * xterm.h: Add xt_or_gtk_widget.
8931 Include gtk files for USE_GTK.
8932 (struct x_output): Add toolbar_height.
8933 (struct x_output): Add GTK widgets and Gdk size_hints.
8934 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8935 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8936 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8937
8938 * xterm.c: Include gtkutil.h for USE_GTK.
8939 (free_frame_menubar): Declare extern void for USE_GTK.
8940 (note_mouse_highlight): Check popup_activated for USE_GTK.
8941 (xt_action_hook): Don't compile if USE_GTK.
8942 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8943 (xg_scroll_callback): New function.
8944 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8945 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8946 for USE_GTK.
8947 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8948 xg_show_scroll_bar for USE_GTK.
8949 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8950 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8951 (event_handler_gdk): New function for USE_GTK.
8952 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8953 (handle_one_xevent): Make sure widget is mapped before
8954 calling x_real_positions for USE_GTK.
8955 (XTread_socket): Add GTK event loop for USE_GTK.
8956 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8957 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8958 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8959 (x_iconify_frame): Add code for USE_GTK.
8960 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8961 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8962 is in gtkutil.c.
8963 (x_term_init): Add initialization for GTK.
8964 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8965
8966 * xmenu.c: Include gtkutil.h for USE_GTK.
8967 (Fx_popup_menu): Use current position if x and y is NIL.
8968 (single_menu_item, single_menu_item, Fx_popup_dialog):
8969 Check for USE_GTK.
8970 (popup_widget_loop): New function for USE_GTK.
8971 (x_activate_menubar): Add code for USE_GTK.
8972 (popup_activate_callback, popup_deactivate_callback)
8973 (menu_highlight_callback, menubar_selection_callback):
8974 Add USE_GTK versions.
8975 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8976 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8977 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8978 is in gtkutil.c.
8979 (popup_selection_callback): New version for USE_GTK.
8980 (create_and_show_popup_menu): New fuction, one USE_GTK version and
8981 one USE_X_TOOLKIT version.
8982 (xmenu_show): Call create_and_show_popup_menu.
8983 (dialog_selection_callback): New version for USE_GTK.
8984 (create_and_show_dialog): New fuction, one USE_GTK version and
8985 one USE_X_TOOLKIT version.
8986 (xdialog_show): Call create_and_show_dialog.
8987
8988 * xfns.c: Include gtkutil for USE_GTK.
8989 (x_window_to_frame, x_any_window_to_frame)
8990 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8991 (x_top_window_to_frame): Add code for USE_GTK.
8992 (x_set_background_color): Call xg_set_background_color for GTK.
8993 (x_set_menu_bar_lines): Check for USE_GTK.
8994 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8995 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8996 (x_window): Call xg_create_frame_widgets for USE_GTK.
8997 (Fx_create_frame): Check for USE_GTK
8998 (Fx_file_dialog): New implementation for USE_GTK.
8999
9000 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
9001 (update_menu_bar): Add check for USE_GTK.
9002 (update_tool_bar): Add check for USE_GTK and external tool bar.
9003 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
9004 (redisplay_internal): Add check for USE_GTK and popup_activated.
9005 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
9006 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
9007 (display_menu_bar): Add check for USE_GTK
9008
9009 * lisp.h (Vx_resource_name): Declare extern.
9010
9011 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
9012 for USE_GTK.
9013 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
9014
9015 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
9016 (FRAME_EXTERNAL_TOOL_BAR): New macro.
9017 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
9018
9019 * fileio.c (Fread_file_name): Add check for USE_GTK.
9020
9021 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
9022 Add check for USE_GTK.
9023
9024 * config.in: Added HAVE_GTK
9025
9026 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
9027
90282003-01-18 Stefan Monnier <monnier@cs.yale.edu>
9029
9030 * charset.h (Funibyte_char_to_multibyte): Export.
9031
90322003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9033
9034 * xmenu.c (mouse_position_for_popup): New function.
9035 (Fx_popup_menu): Call mouse_position_for_popup for X and
9036 mouse_position_hook for others.
9037
90382003-01-17 Kim F. Storm <storm@cua.dk>
9039
9040 * editfns.c (Finsert): Mention `string-make-multibyte' and
9041 `string-as-multibyte' in doc string.
9042
90432003-01-17 Kenichi Handa <handa@m17n.org>
9044
9045 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
9046
9047 * editfns.c (Fformat): Convert an unibyte char argument that is
9048 formatted by "%c" to multibyte if the total result must be a
9049 multibyte string.
9050
90512003-01-16 Kim F. Storm <storm@cua.dk>
9052
9053 * process.c (set-process-filter): Document unibyte/multibyte-ness
9054 of string argument.
9055
90562003-01-16 Kenichi Handa <handa@m17n.org>
9057
9058 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
9059
9060 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
9061 (re_search_2): Likewise.
9062
90632003-01-15 Kenichi Handa <handa@m17n.org>
9064
9065 * xdisp.c (message_dolog): Fix bug of the case that *Message*
9066 buffer is unibyte.
9067
90682003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
9069
9070 * fns.c (Fsubstring): Clarify doc string.
9071
9072 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
9073 (Fprevious_char_property_change)
9074 (Fnext_single_char_property_change)
9075 (Fprevious_single_char_property_change, Fnext_property_change)
9076 (Fnext_single_property_change, Fprevious_property_change)
9077 (Fprevious_single_property_change, Fadd_text_properties)
9078 (Fput_text_property, Fset_text_properties)
9079 (Fremove_text_properties, Fremove_list_of_text_properties)
9080 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
9081
90822003-01-14 Kim F. Storm <storm@cua.dk>
9083
9084 * process.h (struct Lisp_Process): New member plist replaces old
9085 member private_vars. All uses changed.
9086
9087 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
9088 (QCplist): Rename from QCvars. Change all uses.
9089 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
9090 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
9091 (syms_of_process): Intern, staticpro, defsubr these.
9092 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
9093
90942003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
9095
9096 * m/delta.h: Remove (obsolete).
9097
90982003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
9099
9100 * fileio.c (Fdelete_directory, Fdelete_file): Document the
9101 behaviour in front of symlinks.
9102 (Fdelete_file): Raise an error on directories.
9103
91042003-01-13 Dave Love <fx@gnu.org>
9105
9106 * fns.c (Freverse): Use QUIT.
9107
91082003-01-13 Richard M. Stallman <rms@gnu.org>
9109
9110 * minibuf.c (minibuffer_completion_contents):
9111 Error if point is inside prompt.
9112
9113 * keyboard.c (command_loop_1): Don't redisplay directly
9114 if there's a post-command-hook.
9115
9116 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
9117 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
9118
91192003-01-12 Kim F. Storm <storm@cua.dk>
9120
9121 * process.h (struct Lisp_Process): New member private_vars.
9122
9123 * process.c (QCvars): New variable.
9124 (syms_of_process): Intern and staticpro it.
9125 (Fset_process_contact): Removed function.
9126 (Fprocess_variable, Fset_process_variable): New functions.
9127 (syms_of_process): Defsubr them.
9128 (Fstart_process): Initialize private_vars plist to nil.
9129 (Fmake_network_process): New arg :vars to setup the private
9130 variables for new network process.
9131 (server_accept_connection): Copy server's private variables to
9132 client process.
9133
9134 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
9135 crashes). Code rewritten and simplified. Now directly aligns the
9136 pointer and recalculates pure_bytes_used, rather than aligning the
9137 size and adjusting the pointer.
9138
91392003-01-11 Kim F. Storm <storm@cua.dk>
9140
9141 * process.c (Fset_process_contact): New function.
9142 (syms_of_process): defsubr it.
9143 (make-network-process): Update doc.
9144
91452003-01-10 Andreas Schwab <schwab@suse.de>
9146
9147 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
9148 Reported by Berthold Gunreben <b.gunreben@web.de>.
9149
91502003-01-10 Dave Love <fx@gnu.org>
9151
9152 * composite.c (syms_of_composite): Make composition_hash_table weak.
9153
91542003-01-09 Kim F. Storm <storm@cua.dk>
9155
9156 * process.c (Fmake_network_process): Convert new port number
9157 to host byte order for `:service t' case. From Mario Lang.
9158
91592003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9160
9161 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
9162 instead of XtAppProcessEvent.
9163
9164 * xterm.c (handle_one_xevent): New function.
9165 (x_dispatch_event): New function.
9166 (XTread_socket): Call handle_one_xevent.
9167
9168 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
9169
9170 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
9171 call XQueryPointer to get coordinates.
9172 (popup_get_selection): Do not set popup_activated_flag to zero,
9173 let popup_deactivate_callback do that. Needed for Motif.
9174 Call x_dispatch_event instead of XtDispatchEvent.
9175 (xmenu_show): Calculate root coordinate from frame top/left position.
9176
91772003-01-08 Kim F. Storm <storm@cua.dk>
9178
9179 * process.c (server_accept_connection): Fix recording of new
9180 connection's local address in :local property of contact info.
9181 (Fmake_network_process): Record local network address for new
9182 client processes in :local property of contact info.
9183 (format-network-address): Add arg OMIT-PORT. Change callers.
9184
91852003-01-07 Dave Love <fx@gnu.org>
9186
9187 * Makefile.in (fns.o): Depend on coding.h.
9188
91892003-01-07 Markus Rost <rost@math.ohio-state.edu>
9190
9191 * minibuf.c (Fread_variable): Doc fix.
9192
9193 * eval.c (Fuser_variable_p): Doc change. For custom variables,
9194 use the same test as for custom-variable-p.
9195
91962003-01-05 Richard M. Stallman <rms@gnu.org>
9197
9198 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
9199 Count LAST_LINE_MISFIT in scroll margin for end of window.
9200 Move label too_near_end before setting SCROLL_MARGIN_POS.
9201 Set LAST_LINE_MISFIT before jumping there.
9202
9203 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
9204 scroll_conservatively case. If scrolling that much doesn't change
9205 STARTP, move it down one line.
9206
9207 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
9208 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
9209
9210 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
9211 selected frame.
9212
9213 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
9214 (syms_of_keymap): staticpro them.
9215 (Fapropos_internal): Initialize them and clear them out.
9216 Don't GCPRO them.
9217
9218 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
9219 Doc fixes.
9220
9221 * lisp.h: New misc type Lisp_Save_Value.
9222 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
9223 (XSAVE_VALUE): New macro.
9224 (struct Lisp_Save_Value): New data type.
9225 (union Lisp_Misc): Add u_save_value alternative.
9226 (make_save_value): Declare.
9227
9228 * alloc.c (make_save_value): New function.
9229
9230 * xterm.c (x_catch_errors): Save dpy using make_save_value.
9231 (x_catch_errors_unwind): Call XSync.
9232
92332003-01-01 Richard M. Stallman <rms@gnu.org>
9234
9235 * window.c (window_scroll_pixel_based): Partially undo last change.
9236
9237 * keyboard.c (command_loop_1): Call adjust_point_for_property
9238 in direct action cases for Qforward_char and Qbackward_char.
9239 Set already_adjusted so it won't be done twice.
9240
92412002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
9242
9243 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
9244 type definition of size_t.
9245
92462003-01-02 Steven Tamm <steventamm@mac.com>
9247
9248 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
9249 distinguish Carbon GUI builds from X11 builds on darwin.
9250
92512002-12-30 Steven Tamm <steventamm@mac.com>
9252
9253 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
9254 to default to t.
9255
92562002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
9257
9258 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
9259
92602002-12-28 Steven Tamm <steventamm@mac.com>
9261
9262 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
9263 allow building in a different directory than source. Uses some
9264 GNU Make extensions, but there is no other make on Mac OS X.
9265
92662002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
9267
9268 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
9269 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
9270 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
9271 (Fstring_to_number): Mention the returned value in the doc strings.
9272
92732002-12-23 Richard M. Stallman <rms@gnu.org>
9274
9275 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
9276 <scroll-down-aggressively>: Doc fix.
9277
9278 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
9279 string as pane name, if there is one.
9280 (set_frame_menubar): Save menu_items_n_panes from each call to
9281 parse_single_submenu and use it when calling digest_single_submenu.
9282
9283 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
9284 Don't try to make last line fully visible if it is past end of window.
9285
92862002-12-22 Steven Tamm <steventamm@mac.com>
9287
9288 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
9289 (mac_menu_show): Add support for hierarchical popup menus.
9290 (add_menu_item): Remove indentation support.
9291 (fill_submenu, fill_menu): Create hierarchical menus
9292 instead of using indentation.
9293
92942002-12-22 Richard M. Stallman <rms@gnu.org>
9295
9296 * xdisp.c (try_cursor_movement): Don't call try_window here.
9297 (redisplay_window): Never redisplay minibuffer when inactive.
9298
9299 * window.c (select_window_1): Undo 9/21 change.
9300
93012002-12-22 Steven Tamm <steventamm@mac.com>
9302
9303 * macterm.c (XTread_socket): Call KeyTranslate for control and
9304 meta to deal correctly shifted non-alpha characters, like C-S-5
9305 being treated like C-%. Does not look for shift key to deal
9306 with masking off control-key with mac-reverse-ctrl-meta.
9307
93082002-12-21 Richard M. Stallman <rms@gnu.org>
9309
9310 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
9311 If it is non-nil, run timers. Use an unwind-protect to requeue
9312 the events that were read ahead.
9313 (popup_get_selection_unwind): New subroutine.
9314 (popup_get_selection_queue): File-scope variable now holds that queue.
9315 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
9316 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
9317 Use an unwind-protect to pop down the dialog box.
9318 (xdialog_show_unwind): New subroutine implements that.
9319
9320 * xdisp.c (row_containing_pos): Change exit test using last_y.
9321 (try_window_id): Abort if row_containing_pos returns null.
9322
9323 * lread.c (load_error_handler): New function.
9324 (Fload): Handle errors in Fsubstitute_in_file_name.
9325 Don't expect Fsignal to return.
9326
9327 * eval.c: Errors and throws work right with interrupt blocking.
9328 (struct catchtag): New elt interrupt_input_blocked.
9329 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
9330 (internal_catch, Fcondition_case, internal_condition_case)
9331 (internal_condition_case_1, internal_condition_case_2): Save it.
9332 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
9333
9334 * editfns.c (Fformat): Add parens.
9335
9336 * dired.c (file_name_completion): Fix that change.
9337 Delete special quit-handling code; just use QUIT.
9338
93392002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
9340
9341 * dired.c (file_name_completion): Close directory on error
9342 just as in directory_files_internal.
9343
93442002-12-19 David Kastrup <David.Kastrup@t-online.de>
9345
9346 * window.c (Fset_window_configuration): Set old_point to correct
9347 value when new_current_buffer == current_buffer.
9348
93492002-12-17 Ben Key <bkey1@tampabay.rr.com>
9350
9351 Revisited my earlier fix for the following entry in etc/PROBLEMS:
9352 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9353 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9354
9355 These changes were in part based upon suggestions made by Peter
9356 'Luna' Runestig [peter@runestig.com].
9357
9358 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
9359 g_b_init_get_token_information, g_b_init_lookup_account_sid,
9360 g_b_init_get_sid_identifier_authority ): Add several static
9361 global variables.
9362
9363 * w32.c (globals_of_w32): New function. Used to initialize those
9364 global variables that must always be initialized on startup even
9365 when the global variable initialized is non zero. Its primary
9366 purpose at this time is to set the global variables
9367 g_b_init_is_windows_9x, g_b_init_open_process_token,
9368 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
9369 g_b_init_get_sid_identifier_authority to 0 on startup.
9370 Called from main.
9371
9372 * w32.c (is_windows_9x): Perform initialization only if
9373 g_b_init_is_windows_9x is equal to 0. On initialization set
9374 g_b_init_is_windows_9x equal to 1.
9375
9376 * w32.c (open_process_token): Perform initialization only if
9377 g_b_init_open_process_token is equal to 0. On initialization set
9378 g_b_init_open_process_token equal to 1.
9379
9380 * w32.c (get_token_information): Perform initialization only if
9381 g_b_init_get_token_information is equal to 0. On initialization
9382 set g_b_init_get_token_information equal to 1.
9383
9384 * w32.c (lookup_account_sid): Perform initialization only if
9385 g_b_init_lookup_account_sid is equal to 0. On initialization
9386 set g_b_init_lookup_account_sid equal to 1.
9387
9388 * w32.c (get_sid_identifier_authority): Perform initialization
9389 only if g_b_init_get_sid_identifier_authority is equal to 0.
9390 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9391
9392 * w32fns.c (globals_of_w32fns): New function. Used to initialize
9393 those global variables that must always be initialized on startup
9394 even when the global variable initialized is non zero.
9395 Its primary purpose at this time is to initialize the global variable
9396 track_mouse_event_fn.
9397
9398 * w32fns.c (w32_wnd_proc): Remove initialization of
9399 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9400
9401 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9402
9403 * w32menu.c (globals_of_w32menu): New function. Used to
9404 initialize those global variables that must always be initialized
9405 on startup even when the global variable initialized is non zero.
9406 Its primary purpose at this time is to initialize the global
9407 variables get_menu_item_info and set_menu_item_info.
9408
9409 * w32menu.c (initialize_frame_menubar): Remove initialization of
9410 get_menu_item_info and set_menu_item_info.
9411
9412 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9413
9414 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
9415 Declare them.
9416
9417 * emacs.c (main): Call globals_of_w32 prior to calling
9418 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
9419 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
9420 is defined.
9421
9422 * w32term.c (x_update_window_begin): Fix Windows API error
9423 detected by BoundsChecker. Test to determine if
9424 w32_system_caret_hwnd is NULL prior to attempting to use
9425 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
9426
9427 * w32term.c (x_update_window_end): Fix Windows API error
9428 detected by BoundsChecker. Test to determine if
9429 w32_system_caret_hwnd is NULL prior to attempting to use
9430 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
9431
94322002-12-17 Kenichi Handa <handa@m17n.org>
9433
9434 * coding.c (coding_system_require_warning): New variable.
9435 (syms_of_coding): DEFVAR it.
9436
9437 * coding.h (coding_system_require_warning): Extern it.
9438
9439 * fileio.c (choose_write_coding_system): Even if
9440 Vcoding_system_for_write is non-nil, if
9441 coding_system_require_warning is nonzero, call
9442 Vselect_safe_coding_system_function.
9443
94442002-12-17 Markus Rost <rost@math.ohio-state.edu>
9445
9446 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
9447 (lisp): Add font-core.
9448
94492002-12-13 Stefan Monnier <monnier@cs.yale.edu>
9450
9451 * textprop.c (text_read_only): New arg `propval'.
9452 (get_char_property_and_overlay): Remove unused var `next_overlay'.
9453 (verify_interval_modification): Use text_read_only's new arg.
9454
94552002-12-13 Kenichi Handa <handa@m17n.org>
9456
9457 * coding.c (Funencodable_char_position): Set pend correctly.
9458
94592002-12-12 Jason Rumney <jasonr@gnu.org>
9460
9461 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
9462 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
9463 Be more careful about when help_events are generated.
9464
94652002-12-12 Steven Tamm <steventamm@mac.com>
9466
9467 * macterm.c (mac_check_for_quit_char): Correctly set the
9468 modifiers of the event to 0.
9469 * mac.c (sys_select): Duplicate rfds before calling select to
9470 ensure that rfds survive the while loop.
9471
94722002-12-11 Kim F. Storm <storm@cua.dk>
9473
9474 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
9475 row_containing_pos returned NULL.
9476
94772002-12-10 Steven Tamm <steventamm@mac.com>
9478
9479 * mac.c (sys_read): Fix sys_read to not call select if IO is
9480 non-blocking.
9481 (sys_select): Fix sys_select to not use a timeout larger than
9482 the one given.
9483
94842002-12-10 Juanma Barranquero <lektu@terra.es>
9485
9486 * editfns.c (Fformat): Use alloca, not _alloca.
9487
94882002-12-09 Richard M. Stallman <rms@gnu.org>
9489
9490 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
9491 as the last thing.
9492
94932002-12-09 Dave Love <fx@gnu.org>
9494
9495 * s/sol2-8.h: Removed. (Not necessary.)
9496
94972002-12-09 Matthew Swift <swift@alum.mit.edu>
9498
9499 * editfns.c (Fformat): Handle precision in string conversion
9500 specifiers like libc functions do (ie, print at most that many
9501 characters).
9502
95032002-12-08 Richard M. Stallman <rms@gnu.org>
9504
9505 * xdisp.c (row_containing_pos): Check more carefully
9506 whether charpos is really in the row before returning it.
9507
95082002-12-07 Steven Tamm <steventamm@mac.com>
9509
9510 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
9511
9512 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
9513 each stack frame. This may change as it could be time consuming.
9514
9515 * macterm.c (mac_check_for_quit_char, quit_char_comp)
9516 (init_quit_char_handler, mac_determine_quit_char_modifiers)
9517 (mac_initialize): Add code to check for pressing of quit_char
9518 in the OS event queue.
9519
9520 * mac.c (sys_select): Call mac_check_for_quit_char every second
9521 while blocking on select.
9522
9523 * mac.c (sys_read): Use sys_select to test for input first
9524 before calling read, to allow C-g to break.
9525
95262002-12-07 Richard M. Stallman <rms@gnu.org>
9527
9528 * minibuf.c (Fcompleting_read): Doc fix.
9529
9530 * lread.c (syms_of_lread) <load-history>: Doc fix.
9531
9532 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9533
9534 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
9535 autoload.
9536
9537 * data.c (Fdefalias): Record in load-history redefining an autoload.
9538
9539 * alloca.c: Undo ifdef change accidentally made on 12-04.
9540
95412002-12-06 Francesco Potorti` <pot@gnu.org>
9542
9543 * xfns.c (png_load): Avoid double gamma correction for PNG images.
9544
95452002-12-04 Richard M. Stallman <rms@gnu.org>
9546
9547 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
9548
9549 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
9550
9551 * alloca.c: Don't use #error.
9552
95532002-12-03 Dave Love <fx@gnu.org>
9554
9555 * buffer.c (Qucs_set_table_for_input): New.
9556 (Fget_buffer_create): Use it.
9557 (Qset_buffer_major_mode_hook): Deleted.
9558 (Fset_buffer_major_mode): Revert previous change.
9559 (init_buffer_once): Intern ucs-set-table-for-input.
9560 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
9561 Add &Qucs_set_table_for_input.
9562
95632002-12-03 Andreas Schwab <schwab@suse.de>
9564
9565 * callint.c (Fcall_interactively): Use next_event only if less
9566 than key_count.
9567
95682002-12-02 Andrew Choi <akochoi@shaw.ca>
9569
9570 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
9571 names to 255 characters.
9572
9573 * macterm.c (XTread_socket): If all frames have been collapsed,
9574 expand the first one before handling drag-and-drop events.
9575
9576 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
9577 which is detected by autoconf.
9578
95792002-12-01 Steven Tamm <steventamm@mac.com>
9580
9581 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
9582 offset in two hints table to allow prebinding to be redone and
9583 allow the executable to be stripped.
9584
95852002-11-29 Dave Love <fx@gnu.org>
9586
9587 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
9588 already provided.
9589
95902002-11-29 Richard M. Stallman <rms@gnu.org>
9591
9592 * xdisp.c (start_display): Check more intelligently for
9593 whether the line is continued.
9594 (move_it_vertically_backward): Clear it->continuation_lines_width.
9595
95962002-11-28 Dave Love <fx@gnu.org>
9597
9598 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
9599 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
9600
96012002-11-27 Steven Tamm <steventamm@mac.com>
9602
9603 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
9604 more descriptive error output from lread.c:Fload upon most require
9605 cycles during boostrapping.
9606
96072002-11-27 Jason Rumney <jasonr@gnu.org>
9608
9609 * fileio.c (Finsert_file_contents): Give a more appropriate error
9610 for files bigger than 2Gb when off_t is 32 bit.
9611
9612 * dired.c (Ffile_attributes): Don't return negative file sizes for
9613 files bigger than 2Gb when off_t is 32 bit.
9614
96152002-11-27 Dave Love <fx@gnu.org>
9616
9617 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9618
9619 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
9620 Test GETPGRP_VOID instead.
9621 [BSD_TERMIOS]: Remove definitions (never used).
9622
9623 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
9624 Don't define.
9625 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9626
9627 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
9628
96292002-11-25 Jason Rumney <jasonr@gnu.org>
9630
9631 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
9632 supported.
9633
96342002-11-25 Dave Love <fx@gnu.org>
9635
9636 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
9637
9638 * Makefile.in (TEMACS_LDFLAGS): Update last change.
9639
96402002-11-25 Andreas Schwab <schwab@suse.de>
9641
9642 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
9643
96442002-11-24 Steven Tamm <steventamm@mac.com>
9645
9646 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
9647 determine the size of pointers alloced in unexed space instead
9648 of using possibly invalid emacs_zone pointers. This fixes the
9649 binary incompatibility problems caused by updates to libSystem.B.
9650
96512002-11-24 Richard M. Stallman <rms@gnu.org>
9652
9653 * search.c (Fstring_match): Doc fix.
9654
9655 * callint.c (Fcall_interactively): If a command fails because
9656 `*' detects a read-only buffer, but RECORD_FLAG is set,
9657 record it anyway if the args don't actually do tty input.
9658
96592002-11-22 Dave Love <fx@gnu.org>
9660
9661 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
9662
9663 * keyboard.c (interrupt_signal): Provide forward declaration.
9664 (kbd_buffer_store_event): Don't declare interrupt_signal.
9665
9666 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
9667
96682002-11-21 Richard M. Stallman <rms@gnu.org>
9669
9670 * eval.c (interactive_p): Skip any number of bytecode
9671 and special form frames, in any order.
9672
96732002-11-20 Jason Rumney <jasonr@gnu.org>
9674
9675 * w32fns.c (convert_mono_to_color_image): New function.
9676 (xbm_load, xbm_load_image): Use it when foreground or background
9677 is explicitly set.
9678
96792002-11-19 Dave Love <fx@gnu.org>
9680
9681 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
9682
96832002-11-18 Jason Rumney <jasonr@gnu.org>
9684
9685 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
9686 (XPutPixel): Swap blue and red.
9687 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
9688 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
9689 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
9690 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
9691
96922002-11-18 Dave Love <fx@gnu.org>
9693
9694 * m/orion105.h (HAVE_ALLOCA): Don't define.
9695
9696 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
9697
9698 * m/intel386.h: Don't include alloca.h or define alloca.
9699
9700 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
9701 malloc, realloc, calloc.
9702
9703 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
9704 (bcmp): Don't define.
9705
9706 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
9707
9708 * m/amdahl.h: Don't define LIB_STANDARD.
9709
9710 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
9711
9712 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
9713
9714 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
9715 Don't include alloca.h.
9716
9717 * s/aix3-2.h (HAVE_FSYNC): Don't define.
9718
9719 * regex.c (_GNU_SOURCE): Don't define.
9720
9721 * process.c (_GNU_SOURCE): Don't define.
9722
9723 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
9724
97252002-11-18 Markus Rost <rost@math.ohio-state.edu>
9726
9727 * s/sol2-8.h: Include sol2-6.h.
9728
97292002-11-18 Miles Bader <miles@gnu.org>
9730
9731 * dispextern.h (struct face): Add `overstrike' field.
9732 * xterm.c (x_draw_glyph_string_foreground)
9733 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9734 * xfaces.c (load_face_font): Set `face->overstrike' based on
9735 result from choose_face_font.
9736 (best_matching_font, choose_face_font): Add `needs_overstrike'
9737 argument, and use it to return whether overstriking is desirable
9738 for this face/font combo.
9739 (set_font_frame_param: Pass new argument to choose_face_font.
9740
97412002-11-17 Ben Key <BKey1@tampabay.rr.com>
9742
9743 This change is my fix for the following entry in etc/PROBLEMS:
9744 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9745 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9746
9747 * w32.c: Added wrapper functions around the win32 API functions
9748 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
9749 GetSidIdentifierAuthority. These wrapper functions serve two
9750 purposes:
9751 1. They ensure that the wrapped function can never be called
9752 when Emacs is running on an operating system on which they are
9753 not supported (Microsoft Windows 95 / 98 / ME).
9754 2. They call the wrapped functions via function pointers rather
9755 than calling them directly. This avoids taking advantage of the
9756 undocumented fact that although these functions are not supported
9757 in the 9x branch of Microsoft Windows, the functions do exist in
9758 the version of advapi32.dll that is found in the 9x branch of
9759 Microsoft Windows.
9760
9761 * w32.c (init_user_info): Replace the calls to the win32 API
9762 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
9763 and GetSidIdentifierAuthority with calls to the newly added
9764 wrapper functions.
9765
9766 * w32.h: Added extern declarations for the following functions:
9767 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
9768 syms_of_w32menu, and void syms_of_fontset.
9769
9770 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
9771 function pointer track_mouse_event_fn in the handler for the
9772 WM_SETFOCUS message.
9773
9774 * w32menu.c (initialize_frame_menubar): Add code to
9775 reinitialize the function pointers set_menu_item_info and
9776 get_menu_item_info.
9777
97782002-11-17 Ben Key <BKey1@tampabay.rr.com>
9779
9780 * sound.c: Added a partial implementation of play-sound-internal
9781 for Microsoft Windows. Added various #ifdef / #else / #endif
9782 code blocks to separate the code that will compile under
9783 Microsoft Windows from the code that is specific to Gnu/Linux.
9784 Moved several blocks of code around to make this separation of code
9785 into Windows compatible and Gnu/Linux compatible code blocks easier.
9786
9787 * makefile.w32-in: Include sound.c and link with WinMM.lib.
9788
9789 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
9790 added support for play-sound-internal under Windows would be
9791 included in the build of Emacs.
9792
97932002-11-16 Jason Rumney <jasonr@gnu.org>
9794
9795 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
9796
9797 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
9798
97992002-11-15 Stefan Monnier <monnier@cs.yale.edu>
9800
9801 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
9802 (adjust_point_for_property): Move out of display and invisible even if
9803 we were already inside before (in case a property was added while
9804 we weren't looking). Be more careful when handling invisible props.
9805 Skip invisible text as if it really wasn't there at all.
9806
98072002-11-15 Jason Rumney <jasonr@gnu.org>
9808
9809 * w32term.c (x_draw_image_foreground)
9810 (w32_draw_image_foreground_1): Use standard copy and invert
9811 operations to draw images.
9812
9813 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9814 depth of 1.
9815 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9816 (XPutPixel): Don't invert bits here.
9817
98182002-11-15 Jason Rumney <jasonr@gnu.org>
9819
9820 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9821 (w32_draw_image_foreground_1): Handle image masks.
9822 (x_draw_image_glyph_string): Don't BitBlt transparently.
9823
9824 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9825 (x_from_xcolors): Adjust RGB values for W32.
9826 (image_background, image_background_transparent)
9827 (postprocess_image, x_to_xcolors, x_disable_image)
9828 (x_build_heuristic_mask): Adapt for W32 and enable.
9829 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9830 (xbm_load): Remove unused variable.
9831
98322002-11-14 Richard M. Stallman <rms@gnu.org>
9833
9834 * buffer.c (syms_of_buffer): Doc fix.
9835
98362002-11-14 Dave Love <fx@gnu.org>
9837
9838 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
9839
9840 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9841 * xmenu.c (unuse_menu_items, digest_single_submenu):
9842 * xfns.c (x_put_x_image):
9843 * xdisp.c (message2_nolog, set_message):
9844 * undo.c (record_point):
9845 * terminfo.c (tparam):
9846 * syntax.c (scan_sexps_forward):
9847 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9848 * composite.c (update_compositions):
9849 * cm.c (calccost, cmgoto):
9850 * charset.c (c_string_width): Declare all args (per C99).
9851
9852 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
9853
9854 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9855 Don't declare.
9856
9857 * emacs.c (main) [!VMS]: Avoid third arg.
9858
9859 * fns.c (Fcopy_sequence): Doc fix.
9860 (Fmap_char_table): Cast `call2'.
9861
98622002-11-14 Francesco Potorti` <pot@gnu.org>
9863
9864 * s/sol2-8.h: New file.
9865
98662002-11-14 Kim F. Storm <storm@cua.dk>
9867
9868 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9869 dependency on `risky-local-variable' and the :propertize form.
9870
98712002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9872
9873 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9874
9875 * syntax.c (scan_sexps_forward): Undo last patch.
9876 Use a more obvious fix: check eob before updating the syntax table.
9877
98782002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9879
9880 * syntax.c (scan_sexps_forward): Update syntax table before reading
9881 a char rather than after so we don't update the table past eob.
9882
98832002-11-09 Dave Love <fx@gnu.org>
9884
9885 * buffer.c (Fset_buffer_major_mode): Fix last change.
9886
9887 * regex.c (regexec): Fix pmatch declaration.
9888
9889 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9890
9891 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9892 to self-inserting characters.
9893 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9894
9895 * coding.c (Vtranslation_table_for_input): New.
9896 (syms_of_coding): DEFVAR it.
9897
98982002-11-08 Juanma Barranquero <lektu@terra.es>
9899
9900 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9901 window.
9902
99032002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9904
9905 * process.c (Fformat_network_address): Remove unused locals p,
9906 cp, and i.
9907
99082002-11-06 Dave Love <fx@gnu.org>
9909
9910 * buffer.c (Qset_buffer_major_mode_hook): New.
9911 (Fset_buffer_major_mode): Use it.
9912
99132002-11-06 Richard M. Stallman <rms@gnu.org>
9914
9915 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9916 and stop_polling.
9917
9918 * process.c (wait_reading_process_input):
9919 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9920 Avoid initialization for auto Lisp_Object var.
9921
9922 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9923
9924 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9925
99262002-11-05 Richard M. Stallman <rms@gnu.org>
9927
9928 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9929
9930 * callint.c (Fcall_interactively): New local filter_specs.
9931 (Fcall_interactively): Check for progn as well as let.
9932 Add a gcpro.
9933 (Qprogn): New variable.
9934 (syms_of_callint): Staticpro and init Qprogn.
9935
99362002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9937
9938 * lread.c (Feval_buffer): Doc fix.
9939
99402002-11-04 Dave Love <fx@gnu.org>
9941
9942 * keyboard.c (read_char): Always translate iff
9943 Vkeyboard_translate_table is a char table and c is valid.
9944
9945 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9946 and fix C types.
9947
99482002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9949
9950 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9951
9952 * editfns.c (get_pos_property): Don't hardcode Qfield.
9953
9954 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9955 overlays. Also handle `invisible' prop.
9956
99572002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9958
9959 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9960 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9961
99622002-11-01 Andreas Schwab <schwab@suse.de>
9963
9964 * editfns.c (Fmessage): Revert last change to properly handle %%.
9965
99662002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9967
9968 * xmenu.c (unuse_menu_items): New fun.
9969 (menu_items_inuse): New var.
9970 (syms_of_xmenu): Initialize it.
9971 (init_menu_items): Use it to detect re-entrance.
9972 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9973 (Fx_popup_menu): Remove spurious XSETFRAME.
9974
9975 * editfns.c (find_field): Make an exception for nil fields.
9976
99772002-11-01 Dave Love <fx@gnu.org>
9978
9979 * m/gec63.h: Deleted.
9980
99812002-10-31 Dave Love <fx@gnu.org>
9982
9983 * xterm.c (XTread_socket): Fix last change.
9984 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9985
99862002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9987
9988 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9989
99902002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9991
9992 * editfns.c (overlays_around, get_pos_property): New funs.
9993 (find_field): Use them.
9994 Also be careful not to modify POS before its last use.
9995 (Fmessage): Don't Fformat if there's nothing to format.
9996
99972002-10-30 Dave Love <fx@gnu.org>
9998
9999 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
10000 [HAVE_PTY_H]; Include pty.h.
10001
10002 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
10003
10004 * xterm.c (Qeql): Declare.
10005 (Vx_keysym_table): New.
10006 (syms_of_xterm): Initialize it.
10007 (XTread_socket): Use it. Deal with ASCII keysyms.
10008 (XSetIMValues) [HAVE_X11R6]: Prototype.
10009
10010 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
10011 (lispy_kana_keys): Comment out.
10012 (make_lispy_event) [XK_kana_A]: Comment out.
10013 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
10014 Fix sprintf call.
10015
10016 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
10017 regexp.h change).
10018 (TERMINFO, LIBS_TERMCAP): Define.
10019
10020 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
10021 (bcmp): Define conditional on HAVE_BCMP.
10022 (NO_SIOCTL_H): Don't define.
10023 (TIOCSIGSEND): Don't make conditional on IRIX6.
10024
10025 * s/sol2-5.h: Don't include strings.h.
10026 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
10027
10028 * s/irix6-0.h (IRIX6): Don't define.
10029 (bcopy, bcmp, bzero): Don't undef.
10030
10031 * s/irix6-5.h: Don't include strings.h.
10032 (IRIX6): Don't define.
10033 (bcopy, bcmp, bzero): Don't undef.
10034
10035 * syntax.c (Fforward_comment): Doc fix.
10036
100372002-10-29 Kim F. Storm <storm@cua.dk>
10038
10039 * process.c (Fsignal_process): Allow PROCESS to be specified by
10040 name in addition to pid (as integer or string).
10041
100422002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
10043
10044 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
10045 environments.
10046
100472002-10-27 Kim F. Storm <storm@cua.dk>
10048
10049 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
10050
10051 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
10052
10053 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
10054
10055 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
10056
100572002-10-26 Richard M. Stallman <rms@gnu.org>
10058
10059 * editfns.c (Fformat): Detect invalid format letters for floats.
10060
100612002-10-25 Kenichi Handa <handa@m17n.org>
10062
10063 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
10064 (x_set_title): Likewise.
10065
100662002-10-25 Juanma Barranquero <lektu@terra.es>
10067
10068 * macgui.h:
10069 * w32gui.h: Remove definition of XColor.
10070
10071 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
10072
100732002-10-24 Kim F. Storm <storm@cua.dk>
10074
10075 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
10076 Callers changed (supply dummy arg).
10077
10078 * lisp.h (get_window_cursor_type): Update prototype.
10079
10080 * w32term.c (x_display_and_set_cursor): Get active_cursor from
10081 get_window_cursor_type to track system caret.
10082
100832002-10-24 Kim F. Storm <storm@cua.dk>
10084
10085 * process.c (Fformat_network_address): New function.
10086 (syms_of_process): Defsubr it.
10087 (list_processes_1): Use it to format :local/:remote address if
10088 service/host is not set; before Emacs would crash in that case.
10089 (Fmake_network_process): Don't use Ffind_operation_coding_system
10090 to setup coding system if host or service is not set.
10091
100922002-10-23 Juanma Barranquero <lektu@terra.es>
10093
10094 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
10095
10096 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
10097 COLORREF.
10098
10099 * macgui.h:
10100 * w32gui.h: Add definition of XColor.
10101
10102 * macfns.c:
10103 * w32fns.c:
10104 * xfaces.c: Remove definition of XColor.
10105
101062002-10-22 Stefan Monnier <monnier@cs.yale.edu>
10107
10108 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
10109
10110 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
10111 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
10112 window if it is dedicated.
10113 (Fshrink_window): Add preserve_before as was done for enlarge_window.
10114 (Vspecial_display_function): Update docstring.
10115
10116 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
10117 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
10118 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
10119
101202002-10-21 Stefan Monnier <monnier@cs.yale.edu>
10121
10122 * casefiddle.c (casify_region): Don't treat a prefix char as part
10123 of a word when at the beginning.
10124
101252002-10-17 Juanma Barranquero <lektu@terra.es>
10126
10127 * lread.c (syms_of_lread): Fix typos.
10128
101292002-10-17 Dave Love <fx@gnu.org>
10130
10131 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
10132
101332002-10-16 Richard M. Stallman <rms@gnu.org>
10134
10135 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
10136
101372002-10-14 Juanma Barranquero <lektu@terra.es>
10138
10139 * w16select.c (syms_of_win16select): Fix docstring for
10140 `selection-coding-system'.
10141
10142 * w32select.c (syms_of_w32select): Likewise.
10143
101442002-10-14 Stefan Monnier <monnier@cs.yale.edu>
10145
10146 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
10147 a backslash-quoted char.
10148 (scan_lists, scan_sexps_forward): Pacify the compiler.
10149
101502002-10-13 Richard M. Stallman <rms@gnu.org>
10151
10152 * window.c (window_scroll): Set immediate_quit.
10153
10154 * print.c (print): When backquote form is the car of a list,
10155 output in old style. Use old_backquote_output to output all
10156 comma forms inside it in old style too.
10157
10158 * buffer.h (struct buffer): Move `undo_list' down below `name'.
10159
101602002-10-11 Markus Rost <rost@math.ohio-state.edu>
10161
10162 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
10163 batch mode).
10164
10165 * lread.c (Fload): Doc fix (load-suffixes).
10166
101672002-10-10 Steven Tamm <steventamm@mac.com>
10168
10169 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
10170 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
10171 Also switch the default to Qnil from Qt.
10172
101732002-10-08 Kenichi Handa <handa@m17n.org>
10174
10175 * coding.c (code_convert_region): When we need more GAP for
10176 conversion, pay attention to the case that coding->produced is not
10177 greater than coding->consumed.
10178
101792002-10-07 Richard M. Stallman <rms@gnu.org>
10180
10181 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
10182
101832002-10-06 Andrew Choi <akochoi@shaw.ca>
10184
10185 * macmenu.c (mac_menu_show): Add j to count menu items; match
10186 menu_item_selection to it to find selected item.
10187
101882002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10189
10190 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
10191 cases. The correct fix is to pass ReparentNotify to Xt.
10192 The shell widget interprets ConfigureNotify differently depending
10193 on if it has been reparented or not.
10194
101952002-10-05 Markus Rost <rost@math.ohio-state.edu>
10196
10197 * editfns.c (Fformat_time_string): Doc fix.
10198
101992002-10-05 John Paul Wallington <jpw@shootybangbang.com>
10200
10201 * fns.c (Flength): Doc fix.
10202
102032002-10-04 Stefan Monnier <monnier@cs.yale.edu>
10204
10205 * keyboard.c (keyremap): New struct.
10206 (read_key_sequence): Use it: globally replace keytran_foo with
10207 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
10208 keytran_next and fkey_next to just `next'.
10209
102102002-10-04 Steven Tamm <steventamm@mac.com>
10211
10212 * macterm.c (keycode_to_xkeysym_table): Change return to be
10213 treated like an X keysym.
10214
102152002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10216
10217 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
10218 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
10219 This is to also handle x/y changes that occur because of a resize.
10220
102212002-10-02 John Paul Wallington <jpw@shootybangbang.com>
10222
10223 * frame.c (Vdelete_frame_functions): New variable.
10224 (syms_of_frame): Initialize and defvar it.
10225 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
10226 it when frame's `tooltip' parameter is non-nil.
10227
10228 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
10229
10230 * w32fns.c (x_create_tip_frame): Likewise.
10231
10232 * macfns.c (x_create_tip_frame): Likewise.
10233
102342002-09-30 Kenichi Handa <handa@m17n.org>
10235
10236 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
10237 -1 before calling ccl_driver.
10238
10239 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
10240 Only when it is non-nil, handle composition sequence.
10241 (setup_coding_system) <0>: Don't force composition handling.
10242
10243 * Makefile.in (lisp, shortlisp): Add utf-16.elc
10244
102452002-09-29 Richard M. Stallman <rms@gnu.org>
10246
10247 * search.c (Freplace_match): Adjust match data for the substitution
10248 just made in the buffer.
10249
10250 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
10251 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
10252
102532002-09-27 Richard M. Stallman <rms@gnu.org>
10254
10255 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
10256 (read_char): Use them. Do all exits thru the end of the function.
10257
102582002-09-27 Kenichi Handa <handa@etl.go.jp>
10259
10260 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
10261 is nil.
10262
102632002-09-26 Richard M. Stallman <rms@gnu.org>
10264
10265 * regex.h (__restrict_arr): Don't define if already defined.
10266
10267 * coding.c (run_pre_post_conversion_on_str):
10268 Save and restore Vdeactivate_mark.
10269
102702002-09-26 John Paul Wallington <jpw@shootybangbang.com>
10271
10272 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
10273
102742002-09-26 Kenichi Handa <handa@etl.go.jp>
10275
10276 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
10277 nonzero, try face's family at first. Otherwise try FAMILY at first.
10278 (choose_face_font): If C is a single byte char or latin-1, call
10279 try_font_list with PREFER_FACE_FAMILY 1.
10280
102812002-09-21 Richard M. Stallman <rms@gnu.org>
10282
10283 * window.c (select_window_1): Don't select frame.
10284 Set frame's selected window only when frame itself is selected.
10285 (Fselect_window): Doc fix.
10286
102872002-09-18 Kim F. Storm <storm@cua.dk>
10288
10289 * process.c (make-network-process): Doc fix (there is no
10290 network-server-log-function hook).
10291
102922002-09-18 Richard M. Stallman <rms@gnu.org>
10293
10294 * print.c (print): Clear out the unused parts of Vprint_number_table.
10295 (syms_of_print): Doc fix for `print-number-table'.
10296
10297 * unexelf.c (unexec): Undo previous change.
10298
102992002-09-17 Andreas Schwab <schwab@suse.de>
10300
10301 * m/alpha.h [LINUX]: Don't define DATA_START.
10302
103032002-09-16 Dave Love <fx@gnu.org>
10304
10305 * unexelf.c (unexec): Deal with .got, reinstating change from
10306 25-08-1999.
10307
103082002-09-13 Richard M. Stallman <rms@gnu.org>
10309
10310 * s/sol2-6.h (UNEXEC): Comment out definition.
10311
10312 * unexsol.c (unexec): Don't downcase first letter of error msg.
10313
10314 * xfaces.c (Fcolor_supported_p): Just one arg is required.
10315
103162002-09-12 Markus Rost <rost@math.ohio-state.edu>
10317
10318 * unexsol.c: Include buffer.h, charset.h, coding.h.
10319
103202002-09-11 Richard M. Stallman <rms@gnu.org>
10321
10322 * unexsol.c: Don't use report_file_error; do it by hand
10323 using dlerror.
10324
10325 * process.c (wait_reading_process_input, both versions):
10326 Before calling turn_on_atimers, call stop_polling.
10327
10328 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
10329
10330 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
10331 we go to too_near_end, call clear_glyph_matrix.
10332 (redisplay_window): After make_cursor_line_fully_visible,
10333 call clear_glyph_matrix and bypass `goto done'.
10334
10335 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
10336 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
10337
103382002-09-10 Richard M. Stallman <rms@gnu.org>
10339
10340 * fileio.c (Fdo_auto_save): Catch error making directory.
10341 Only call push_message if we need to.
10342 At the same time, make an unwind-protect to pop it.
10343 Rename local message_p to old_message_p.
10344 (do_auto_save_make_dir, do_auto_save_eh): New functions.
10345 (do_auto_save_unwind): Don't call pop_message.
10346
10347 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
10348
10349 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
10350
10351 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
10352
10353 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
10354
103552002-09-10 Stefan Monnier <monnier@cs.yale.edu>
10356
10357 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
10358 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
10359 (re_match_2_internal): Be more careful with infinite loops.
10360
103612002-09-10 Kim F. Storm <storm@cua.dk>
10362
10363 * macros.c (end_kbd_macro): New function.
10364 (Fend_kbd_macro): Use it.
10365
10366 * macros.h (end_kbd_macro): Declare extern.
10367
10368 * keyboard.c (Fdiscard_input): If defining keyboard macro,
10369 end and save it instead of discarding it.
10370
103712002-09-09 Markus Rost <rost@math.ohio-state.edu>
10372
10373 * s/sol2-6.h: Fix typo. Add comment.
10374
103752002-09-09 Richard M. Stallman <rms@gnu.org>
10376
10377 * regex.c (regnum_t): Use signed int, not unsigned int.
10378
10379 * s/sol2-6.h: New file.
10380
10381 * s/sol2-5.h (UNEXEC): Definition deleted.
10382
103832002-09-08 Kim F. Storm <storm@cua.dk>
10384
10385 * macros.c (executing_macro_index): Change type to EMACS_INT.
10386 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
10387
10388 * macros.h (executing_macro_index): Change type to EMACS_INT.
10389
103902002-09-06 Richard M. Stallman <rms@gnu.org>
10391
10392 * casetab.c (set_case_table): Make canon table point to eqv table.
10393
103942002-09-06 Juanma Barranquero <lektu@terra.es>
10395
10396 * coding.c (syms_of_coding): Fix spacing.
10397
10398 * composite.c (Fcompose_region_internal)
10399 (Fcompose_string_internal): Likewise.
10400
10401 * data.c (Flsh): Likewise.
10402
10403 * fontset.c (Fset_fontset_font): Likewise.
10404
10405 * macfns.c (Fx_server_max_request_size): Likewise.
10406
10407 * w16select.c (syms_of_win16select): Likewise.
10408
10409 * w32select.c (syms_of_w32select): Likewise.
10410
10411 * xselect.c (syms_of_xselect): Likewise.
10412
104132002-09-05 Richard M. Stallman <rms@gnu.org>
10414
10415 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
10416 call EXTEND_RANGE_TABLE and return a proper value.
10417 (set_image_of_range): Don't call set_image_of_range_1
10418 if no TRANSLATE or if range includes all of Latin-1.
10419 Only call it for the Latin-1 part of the range.
10420 For other cases, make two separate ranges,
10421 one for the original specified characters and one for
10422 their case-conversions.
10423
104242002-09-04 Richard M. Stallman <rms@gnu.org>
10425
10426 * s/sol2-5.h (UNEXEC): Use unexsol.o.
10427
10428 * window.c (displayed_window_lines): Correct for one-off bug
10429 in HEIGHT on non-window displays.
10430
10431 * regex.c (set_image_of_range_1): New function.
10432 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
10433 Return a value to indicate running out of memory.
10434 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
10435 (extend_range_table_work_area): New subroutine.
10436 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
10437 Different calling conventions, and used from set_image_of_range{,_1}.
10438 (IMMEDIATE_QUIT_CHECK): Definitions moved.
10439
104402002-09-04 Juanma Barranquero <lektu@terra.es>
10441
10442 * makefile.w32-in: All dependencies updated.
10443
104442002-09-01 Richard M. Stallman <rms@gnu.org>
10445
10446 * unexsol.c: New file.
10447
10448 * xfns.c (Qbox): Declare external, don't define.
10449
10450 * xdisp.c (redisplay_window) <force-start case>:
10451 If point is on semi-visible last line, reposition
10452 it at previous line.
10453
10454 * alloc.c (display_malloc_warning): Use display-warning.
10455 (malloc_warning_1): Function deleted.
10456
10457 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
10458
10459 * lread.c (read1): Handle #! by skipping the line.
10460
104612002-08-31 Richard M. Stallman <rms@gnu.org>
10462
10463 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
10464 Don't include LDFLAGS.
10465 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
10466
104672002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
10468
10469 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
10470 member of x_display_info unless we compile for some window system.
10471
104722002-08-31 Kim F. Storm <storm@cua.dk>
10473
10474 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
10475 (get_window_cursor_type): Don't use them.
10476 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
10477
104782002-08-30 Kenichi Handa <handa@etl.go.jp>
10479
10480 * xdisp.c (get_next_display_element): Fix previous change.
10481
104822002-08-30 Andrew Choi <akochoi@shaw.ca>
10483
10484 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
10485 (expose_window): Use it to fix the display of overlapping
10486 rows (merge code from xterm.c).
10487
10488 * macfns.c (Qbox): Add extern declaration.
10489
104902002-08-30 Juanma Barranquero <lektu@terra.es>
10491
10492 * w32fns.c (Qbox): Make extern.
10493 (syms_of_w32fns): Remove initialization of Qbox.
10494
104952002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
10496
10497 * xfns.c (Fx_open_connection): Fix error message.
10498
104992002-08-30 Kim F. Storm <storm@cua.dk>
10500
10501 The following changes consolidates the handling of the cursor
10502 type in xdisp.c, moving duplicate code and functionality from
10503 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
10504
10505 * frame.h (enum text_cursor_kinds): Consolidated here.
10506 Added DEFAULT_CURSOR value.
10507 (struct frame) <desired_cursor, cursor_width>
10508 <blink_off_cursor, blink_off_cursor_width>: New fields.
10509 Consolidated from output_x, output_w32 and output_mac structs.
10510 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10511 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
10512
10513 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
10514 Variables consolidated here.
10515 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
10516 (Vcursor_in_non_selected_windows): Renamed from
10517 cursor_in_non_selected_windows and changed to Lisp_Object.
10518 (syms_of_xdisp): Define and staticpro new and moved variables.
10519 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
10520 consolidated here. Recognize Qhollow setting.
10521 (set_frame_cursor_types): New function to set frame cursor types
10522 based on the frame parameters.
10523 (get_window_cursor_type): New function to calculate new cursor
10524 type and width for the specified window. Based on duplicated
10525 code consolidated here.
10526 Enhancements: cursor-in-non-selected-windows may be a cursor type,
10527 check buffer-local alternate-cursor-type and blink-cursor-alist
10528 before using built-in blink off methods.
10529
10530 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
10531
10532 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
10533 (get_specified_cursor_type, get_window_cursor_type)
10534 (set_frame_cursor_types): Added prototypes.
10535
10536 * macfns.c (x_specified_cursor_type): Removed.
10537 (x_set_cursor_type): Use set_frame_cursor_types.
10538 (Qbar, Qbox): Removed.
10539 (syms_of_macfns): Don't intern or staticpro them.
10540
10541 * macterm.c (x_specified_cursor_type): Remove prototype.
10542 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10543 (x_display_and_set_cursor): Use get_window_cursor_type.
10544 Remove unused local variables cursor_non_selected, active_cursor.
10545 Redraw cursor if hbar cursor width changes.
10546 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
10547
10548 * macterm.h (enum text_cursor_kinds): Removed.
10549 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
10550 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10551 (FRAME_DESIRED_CURSOR): Macro removed.
10552
10553 * w32fns.c (Vblink_cursor_alist): Removed.
10554 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10555 (syms_of_w32fns): Don't intern, staticpro, or define them.
10556 (x_specified_cursor_type): Removed.
10557 (x_set_cursor_type): Use set_frame_cursor_types.
10558
10559 * w32term.c (x_specified_cursor_type): Remove prototype.
10560 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10561 (x_display_and_set_cursor): Use get_window_cursor_type.
10562 Remove unused local variables cursor_off_state.
10563 Redraw cursor if hbar cursor width changes.
10564 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
10565
10566 * w32term.h (enum text_cursor_kinds): Removed.
10567 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
10568 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10569 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10570 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10571 (struct w32_display_info) <x_highlight_frame>: Renamed member from
10572 w32_highlight_frame.
10573
10574 * xfns.c (Vblink_cursor_alist): Removed.
10575 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10576 (syms_of_xfns): Don't intern, staticpro, or define them.
10577 (x_specified_cursor_type): Removed.
10578 (x_set_cursor_type): Use set_frame_cursor_types.
10579
10580 * xterm.c (x_specified_cursor_type): Remove prototype.
10581 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10582 (x_display_and_set_cursor): Use get_window_cursor_type.
10583 Remove unused local variables cursor_off_state.
10584 Redraw cursor if hbar cursor width changes.
10585
10586 * xterm.h (enum text_cursor_kinds): Removed.
10587 (struct output_x) <current_cursor, desired_cursor, cursor_width>
10588 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10589 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10590 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10591 (x_specified_cursor_type): Remove prototype.
10592
105932002-08-28 Richard M. Stallman <rms@gnu.org>
10594
10595 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10596 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10597 (Vblink_cursor_alist): New variable.
10598 (syms_of_w32fns): Initialize and defvar it.
10599 (x_specified_cursor_type): Recognize Qbox for filled box.
10600 Exceptions are hollow boxes.
10601 (Qbox, Qhollow): New variables.
10602 (syms_of_w32fns): Initialize and staticpro them.
10603
10604 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10605 New macros.
10606 (struct w32_output): New fields blink_off_cursor,
10607 blink_off_cursor_width.
10608 (FRAME_CURSOR_WIDTH): New macro.
10609
10610 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10611 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10612
10613 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10614 for bar cursor.
10615
10616 * w32term.c (expose_overlaps): New function.
10617 (expose_window): Use it to fix the display of overlapping rows.
10618
106192002-08-28 Simon Josefsson <jas@extundo.com>
10620
10621 * xfns.c (Fx_open_connection): Improve help when X connection
10622 fails, xhost is insecure and xauth is better.
10623
106242002-08-28 Juanma Barranquero <lektu@terra.es>
10625
10626 * makefile.w32-in: Add missing dependencies on w32term.h and
10627 composite.h.
10628
10629 * emacs.c (USAGE1): Add missing newline.
10630
106312002-08-27 Andrew Choi <akochoi@shaw.ca>
10632
10633 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
10634
106352002-08-27 Richard M. Stallman <rms@gnu.org>
10636
10637 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10638 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10639 (Vblink_cursor_alist): New variable.
10640 (syms_of_xfns): Initialize and defvar it.
10641 (x_specified_cursor_type): Recognize Qbox for filled box.
10642 Exceptions are hollow boxes.
10643 (Qbox, Qhollow): New variables.
10644 (syms_of_xfns): Initialize and staticpro them.
10645
10646 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10647 New macros.
10648 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
10649
10650 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10651 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10652
10653 * emacs.c (main): Handle --script.
10654 (USAGE1): Mention --script.
10655 (standard_args): Define sort order for --script.
10656
106572002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
10658
10659 * xdisp.c (redisplay_updating_p): Variable removed.
10660 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
10661 New variables.
10662 (init_iterator): Don't free realized faces if
10663 inhibit_free_realized_faces is set.
10664 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
10665 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
10666 initialize Qinhibit_free_realized_faces.
10667
10668 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
10669 when iterator is adding glyphs to a glyph matrix.
10670
106712002-08-27 Kenichi Handa <handa@etl.go.jp>
10672
10673 * xdisp.c (get_next_display_element): In unibyte case, don't use
10674 octal form for such eight-bit characters that can be converted to
10675 multibyte char.
10676
106772002-08-26 Kim F. Storm <storm@cua.dk>
10678
10679 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
10680 foreground and background colors. From Joe Buehler.
10681
106822002-08-26 Miles Bader <miles@gnu.org>
10683
10684 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
10685
106862002-08-25 Andrew Choi <akochoi@shaw.ca>
10687
10688 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
10689 defined instead of MAC_OSX.
10690
10691 * s/darwin.h (select): Define select to sys_select only if
10692 HAVE_CARBON is defined.
10693 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
10694 (DONT_REOPEN_PTY): #def it.
10695
10696 * macterm.c (XTread_socket): Remove code to call
10697 SendEventToEventTarget for keys with command modifiers when
10698 mac_command_key_is_meta is nil.
10699
107002002-08-24 Andreas Schwab <schwab@suse.de>
10701
10702 * eval.c (Fdefvar): Fix last change.
10703
107042002-08-23 Richard M. Stallman <rms@gnu.org>
10705
10706 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
10707 Record variables in load history as (defvar . VAR).
10708 (Fdefvar): Don't record in load history if no initial value.
10709 (Qdefvar): New variable.
10710 (syms_of_eval): Init and staticpro it.
10711
10712 * lread.c (syms_of_lread): Doc fix.
10713 (build_load_history): Use Fmember to see if a definition
10714 is already in the Vload_history element.
10715
10716 * process.c (Fstart_process): Remove /: from program name.
10717
10718 * emacs.c (decode_env_path): Don't add /: if file name handler
10719 has a `safe-magic' property.
10720
10721 * callproc.c (Fcall_process): Remove /: from program name.
10722
107232002-08-23 Stefan Monnier <monnier@cs.yale.edu>
10724
10725 * regex.c (PATFETCH): Remove the translating fetch.
10726 (PATFETCH_RAW): Rename to PATFETCH.
10727 (set_image_of_range): New fun.
10728 (SET_RANGE_TABLE_WORK_AREA): Use it.
10729 (regex_compile): Don't translate the pattern chars so eagerly.
10730 Only do it when inserting an `exactn' bytecode or when handling
10731 a char-range.
10732 (mutually_exclusive_p): Avoid empty statement.
10733
107342002-08-22 Kim F. Storm <storm@cua.dk>
10735
10736 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
10737 end up on a partially visible line; this reverts a specific part
10738 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
10739 display error which has been reported several times now.
10740 However it introduces the problem that changes was supposed to fix.
10741 See my comments in the source if you want to debug this further.
10742
107432002-08-20 Kenichi Handa <handa@etl.go.jp>
10744
10745 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
10746
107472002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
10748
10749 * msdos.c (croak): Add `void' to definition.
10750
10751 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
10752 Don't define them, they are defined in msdos.c.
10753
10754 * mem-limits.h [MSDOS]: Declare etext.
10755
10756 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
10757 `const' since CORRECT_DIR_SEPS modifies its target.
10758
107592002-08-19 Kim F. Storm <storm@cua.dk>
10760
10761 * keyboard.c (Fclear_this_command_keys): Add optional arg
10762 KEEP-RECORD to avoid clearing lossage when we just want to clear
10763 the current key sequence (kmacro needs this).
10764
107652002-08-19 Kenichi Handa <handa@localhost>
10766
10767 * composite.c (run_composition_function): Call FUNC if it is fboundp.
10768
10769 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
10770 cons, return Qnil.
10771
107722002-08-17 Richard M. Stallman <rms@gnu.org>
10773
10774 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
10775
10776 * sysdep.c [!VMS]: Include sys/files.h.
10777
10778 * editfns.c (save_restriction_restore): Defend from unchained marker.
10779
10780 * buffer.c (overlays_at): Handle extending vec uniformly.
10781 (overlays_in): Handle extending vec from length 0 as in overlays_at.
10782
107832002-08-15 Andrew Choi <akochoi@shaw.ca>
10784
10785 * mac.c (init_mac_osx_environment): New function.
10786
10787 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
10788
107892002-08-14 Kim F. Storm <storm@cua.dk>
10790
10791 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
10792 executing macro before appending to it (when used from Lisp).
10793 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
10794 which is called prior to each iteration of macro (for kmacro.el).
10795 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
10796
10797 * lisp.h (Fexecute_kbd_macro): Update prototype.
10798
10799 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
10800
108012002-08-14 Kenichi Handa <handa@etl.go.jp>
10802
10803 * xselect.c (QUTF8_STRING): New variable.
10804 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
10805 (x_atom_to_symbol): Likewise.
10806 (x_get_local_selection): New argument local_request. If it is
10807 nonzero, call handler_fn with the second arg nil.
10808 (x_handle_selection_request): Call x_get_local_selection with
10809 local_request 0.
10810 (lisp_data_to_selection_data): Don't encode the string here.
10811 (Fx_get_selection_internal): Call x_get_local_selection with
10812 local_request 1.
10813 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10814
10815 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10816
10817 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10818
108192002-08-13 Richard M. Stallman <rms@gnu.org>
10820
10821 * minibuf.c (Fminibufferp): New function.
10822 (syms_of_minibuf): Defsubr it.
10823 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10824
108252002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10826
10827 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10828
108292002-08-12 Richard M. Stallman <rms@gnu.org>
10830
10831 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10832 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10833 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10834 already.
10835
10836 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10837
108382002-08-11 Andrew Choi <akochoi@shaw.ca>
10839
10840 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10841 (Vmac_pass_command_to_system): New variable.
10842 (Vmac_pass_control_to_system): New variable.
10843 (do_mouse_moved): Check wp with is_emacs_window.
10844 (XTread_socket): Check window_ptr with is_emacs_window.
10845 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10846 events back to Mac Toolbox for processing, depending on values of
10847 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10848 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10849 Vmac_pass_control_to_system.
10850
108512002-08-10 Kenichi Handa <handa@etl.go.jp>
10852
10853 * coding.c (unencodable_char_position): New function.
10854 (Funencodable_char_position): New function.
10855 (syms_of_coding): Defsubr Funencodable_char_position.
10856
108572002-08-10 Andrew Choi <akochoi@shaw.ca>
10858
10859 * mac.c (sys_select) [MAC_OSX]: New function.
10860
10861 * macterm.c (MakeMeTheFrontProcess): New function.
10862 (mac_initialize): Call MakeMeTheFrontProcess.
10863
10864 * s/darwin.h: Define select to sys_select.
10865
108662002-08-09 Richard M. Stallman <rms@gnu.org>
10867
10868 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10869
108702002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10871
10872 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10873 end of the buffer.
10874
108752002-08-08 Ken Raeburn <raeburn@mit.edu>
10876
10877 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10878
10879 * puresize.h (BASE_PURESIZE): Increase to 910000.
10880
108812002-08-08 Kenichi Handa <handa@etl.go.jp>
10882
10883 * coding.c (Ffind_operation_coding_system): For write-region, if
10884 VISIT is a filename, make it the target.
10885
108862002-08-07 Richard M. Stallman <rms@gnu.org>
10887
10888 * alloc.c (mark_object): Detect long lists for debugging.
10889 (mark_object_loop_halt): New variable.
10890
10891 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10892
10893 * data.c (Fmake_variable_frame_local): Doc fix.
10894
108952002-08-01 David Ponce <david@dponce.com>
10896
10897 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10898 (malloc_widget_value, free_widget_value)
10899 (w32_free_submenu_strings): Use them.
10900
10901 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10902 (push_menu_pane, push_menu_item, single_keymap_panes)
10903 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10904 (single_submenu, set_frame_menubar)
10905 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10906
10907 (Fx_popup_menu): Don't show pop up menu until preceding one is
10908 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10909
10910 * w32menu.c: Changes adapted from xmenu.c
10911 (set_frame_menubar): First parse all submenus,
10912 then make widget_value trees from them.
10913 Don't allocate any widget_value objects
10914 until we are done with the parsing.
10915 (parse_single_submenu): New function.
10916 (digest_single_submenu): New function.
10917 (single_submenu): Function deleted, replaced by those two.
10918
109192002-08-04 Andrew Choi <akochoi@shaw.ca>
10920
10921 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10922 returns a valid window pointer before proceeding for keyDown and
10923 autoKey events.
10924
109252002-08-03 Andrew Choi <akochoi@shaw.ca>
10926
10927 * macterm.c (USE_CARBON_EVENTS): New macro.
10928 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10929 (x_iconify_frame): Call CollapseWindow.
10930 (Vmac_reverse_ctrl_meta): New variable.
10931 (Vmac_wheel_button_is_mouse_2): New variable.
10932 (init_mac_drag_n_drop): New function.
10933 (mac_do_receive_drag): New function.
10934 (mac_handle_service_event): New function.
10935 (init_service_handler): New function.
10936 (mac_to_emacs_modifiers): New function.
10937 (mac_event_to_emacs_modifiers): New function.
10938 (mac_get_mouse_btn): New function.
10939 (mac_convert_event_ref): New function.
10940 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10941 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10942 mac_get_mouse_btn.
10943 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10944
10945 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10946 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10947 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10948 TOOL_BAR_EVENT for MAC_OS as well.
10949 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10950 as for WINDOWS_NT.
10951 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10952
10953 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10954
109552002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10956
10957 * xdisp.c (forward_to_next_line_start): Fix a condition that
10958 lead to a newline being skipped.
10959
109602002-08-02 Andrew Choi <akochoi@shaw.ca>
10961
10962 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10963
109642002-08-01 Richard M. Stallman <rms@gnu.org>
10965
10966 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10967
109682002-07-31 Andrew Choi <akochoi@shaw.ca>
10969
10970 * macfns.c: #undef init_process before #define-ing it.
10971
10972 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10973 HAVE_CARBON is defined.
10974
109752002-07-31 Richard M. Stallman <rms@gnu.org>
10976
10977 * xmenu.c (set_frame_menubar): First parse all submenus,
10978 then make widget_value trees from them.
10979 Don't allocate any widget_value objects
10980 until we are done with the parsing.
10981 (parse_single_submenu): New function.
10982 (digest_single_submenu): New function.
10983 (single_submenu): Function deleted, replaced by those two.
10984
109852002-07-30 Juanma Barranquero <lektu@terra.es>
10986
10987 * w32proc.c (syms_of_ntproc): Fix docstring of
10988 `w32-get-true-file-attributes'.
10989
109902002-07-28 Richard M. Stallman <rms@gnu.org>
10991
10992 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10993 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10994
10995 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10996
10997 * keyboard.c (make_lispy_event):
10998 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10999 Explicitly clear up_modifier in event->modifiers.
11000
110012002-07-27 Richard M. Stallman <rms@gnu.org>
11002
11003 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
11004
11005 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
11006 for bar cursor.
11007
110082002-07-26 Kenichi Handa <handa@etl.go.jp>
11009
11010 * coding.c (detect_coding_iso2022): While checking a byte sequence
11011 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
11012 it in the normal loop.
11013
110142002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
11015
11016 * xterm.c (expose_overlaps): New function.
11017 (expose_window): Use it to fix the display of overlapping rows.
11018
11019 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
11020
110212002-07-23 Ken Raeburn <raeburn@gnu.org>
11022
11023 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
11024 since it only depends on XUINT.
11025
11026 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
11027 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
11028 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
11029 Macros deleted.
11030
11031 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
11032 its value over other approaches.
11033 * sysdep.c (start_of_data): Don't define the function if a macro
11034 form has been defined.
11035
110362002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
11037
11038 * xdisp.c (redisplay_updating_p): New variable.
11039 (init_iterator): Don't free realized faces when
11040 redisplay_updating_p is set.
11041 (redisplay_internal): Set redisplay_updating_p while updating
11042 the display.
11043
110442002-07-23 Richard M. Stallman <rms@gnu.org>
11045
11046 * editfns.c (Fmessage): Treat "" like nil.
11047
110482002-07-23 Kenichi Handa <handa@etl.go.jp>
11049
11050 * xdisp.c (face_before_or_after_it_pos):
11051 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
11052
110532002-07-22 Juanma Barranquero <lektu@terra.es>
11054
11055 * callproc.c (init_callproc) [DOS_NT]:
11056 Initialize Vshared_game_score_directory to nil.
11057 (syms_of_callproc) [DOS_NT]: Likewise.
11058
110592002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
11060
11061 * xdisp.c (display_line): Replace an abort with xassert.
11062
110632002-07-21 Richard M. Stallman <rms@gnu.org>
11064
11065 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
11066 and END_UNCHANGED when setting buffer_unchanged_p.
11067 Use current_matrix_up_to_date_p to decide whether to use
11068 try_cursor_movement.
11069
11070 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
11071
11072 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
11073
11074 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
11075 Set to nil if dir does not exist.
11076 (syms_of_callproc): Init unconditionally and simply.
11077
11078 * buffer.c (Fbuffer_list): Doc fix.
11079
110802002-07-21 Ken Raeburn <raeburn@gnu.org>
11081
11082 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
11083
11084 * buffer.c (mmap_realloc): When shrinking, make sure number of
11085 pages to unmap is rounded towards zero.
11086
11087 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
11088 (XSETINT): Deleted.
11089
11090 * m/att3b.h (XINT): Don't define.
11091 (VALBITS, VALMASK, XTYPE): Deleted.
11092 (DATA_SEG_BITS): Define.
11093 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
11094 ARRAY_MARK_FLAG): Deleted.
11095 (DATA_SEG_BITS): Define.
11096 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
11097 (DATA_SEG_BITS): Define.
11098
110992002-07-20 Richard M. Stallman <rms@gnu.org>
11100
11101 * print.c (print_error_message): New args CONTEXT and CALLER.
11102 Calls changed.
11103
11104 * lisp.h (print_error_message): Declare new args.
11105
11106 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
11107 and CONTEXT to print_error_message, don't print them here.
11108 For a Quit, don't use Vsignaling_function.
11109 Call message_log_maybe_newline.
11110
11111 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
11112
111132002-07-20 Kim F. Storm <storm@cua.dk>
11114
11115 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
11116
111172002-07-19 Ken Raeburn <raeburn@gnu.org>
11118
11119 * bytecode.c (struct byte_stack): Pointers into byte string now
11120 point to const.
11121 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
11122 const.
11123 * charset.h (BCOPY_SHORT): Source pointer now points to const.
11124 * coding.c (encode_eol, detect_coding, detect_eol):
11125 (decode_coding, encode_coding, detect_coding_system):
11126 Source strings now treated as const.
11127 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
11128 modify Lisp string contents.
11129 * coding.h (decode_coding, encode_coding, detect_coding,
11130 detect_eol): Declarations updated.
11131 * composite.c (compose_chars_in_text): Treat Lisp string contents
11132 as const.
11133 * dispnew.c (safe_bcopy): Source pointer now points to const.
11134 * lisp.h (STRING_COPYIN): New macro.
11135 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
11136 (internal_with_output_to_temp_buffer): Declarations updated.
11137 * print.c (temp_output_buffer_setup):
11138 (internal_with_output_to_temp_buffer): Buffer name argument is now
11139 pointer to const.
11140 * sound.c (struct sound_device): Function pointer field "write"
11141 buffer argument now points to const.
11142 (vox_write): Buffer argument points to const.
11143 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
11144 contents as const.
11145 * sysdep.c (emacs_write): Buffer pointer now const.
11146 * term.c (encode_terminal_code): Buffer pointer now const.
11147 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
11148 (x_face_list_fonts, x_update_menu_appearance):
11149 (hash_string_case_insensitive): Treat Lisp string contents as const.
11150
111512002-07-19 Juanma Barranquero <lektu@terra.es>
11152
11153 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
11154
11155 * fileio.c (syms_of_fileio): Likewise.
11156 (Ffile_name_as_directory): Fix argument name in docstring.
11157 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
11158
111592002-07-18 Richard M. Stallman <rms@gnu.org>
11160
11161 * data.c (Fdefalias): Doc fix.
11162
111632002-07-17 Dave Love <fx@gnu.org>
11164
11165 * intervals.h (text_property_stickiness): Use P_.
11166
11167 * ccl.c: Remove `emacs' conditionals.
11168 (ccl_backtrace_table): Fix size spec.
11169 (ccl_driver): Fix type errors.
11170
111712002-07-16 Ken Raeburn <raeburn@gnu.org>
11172
11173 * alloc.c (xstrdup, make_string, make_unibyte_string)
11174 (make_multibyte_string, build_string): String pointer args now
11175 point to const.
11176 * charset.c (find_charset_in_text, c_string_width):
11177 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
11178 * fileio.c (report_file_error):
11179 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
11180 (count_combining_before, count_combining_after, insert_1_both):
11181 (insert, insert_and_inherit, insert_string):
11182 (insert_before_markers, insert_before_markers_and_inherit):
11183 * lread.c (intern, oblookup, hash_string):
11184 * minibuf.c (temp_echo_area_glyphs):
11185 * search.c (fast_c_string_match_ignore_case):
11186 * sysdep.c (emacs_open, set_file_times):
11187 * xfaces.c (xstricmp):
11188 * xdisp.c (store_frame_title, string_char_and_length):
11189 (message_dolog, message2, message2_nolog, set_message): Likewise.
11190 (set_message_1): Cast message string argument to const pointer.
11191 * editfns.c (general_insert_function): Insertion function now
11192 takes pointer to const for input data.
11193 * charset.h (find_charset_in_text, c_string_width):
11194 (parse_str_as_multibyte): Declarations updated.
11195 * dispextern.h (xstricmp): Declaration updated.
11196 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
11197 (count_size_as_multibyte, count_combining_before):
11198 (count_combining_after, insert_1, insert_1_both, message_dolog):
11199 (insert, insert_and_inherit, insert_before_markers)
11200 (insert_before_markers_and_inherit, set_message, message2):
11201 (message2_dolog, build_string, make_string, make_unibyte_string):
11202 (make_multibyte_string, intern, oblookup, report_file_error):
11203 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
11204 (emacs_open, xstrdup): Declarations updated.
11205 * systime.h (set_file_times): Declaration updated.
11206
11207 * charset.c (find_charset_in_text, lisp_string_width): Use const
11208 for pointer to lisp string data.
11209 * charset.h (FETCH_STRING_CHAR_ADVANCE):
11210 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
11211 * coding.c (Ffind_coding_systems_region_interval):
11212 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
11213 (Fmake_directory_internal, Fdelete_directory):
11214 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
11215 * fontset.c (font_family_registry, fs_query_fontset):
11216 (list_fontsets):
11217 * frame.c (Fframe_parameter):
11218 * keyboard.c (cmd_error_internal):
11219 * keymap.c (Fdescribe_buffer_bindings):
11220 * lread.c (complete_filename_p, openp):
11221 * minibuf.c (Fminibuffer_complete_word):
11222 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
11223 (face_before_or_after_it_pos, next_element_from_string):
11224 (get_overlay_arrow_glyph_row, display_mode_element):
11225 (decode_mode_spec_coding):
11226 * xterm.c (same_x_server): Likewise.
11227
11228 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
11229 settings of non-existent fields.
11230
11231 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
11232 copy a lisp value.
11233
11234 * lread.c (Fintern_soft): Use string macros instead of
11235 Lisp_String fields.
11236 * keyboard.c (echo_char, parse_modifiers_uncached):
11237 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
11238 * textprop.c (validate_interval_range, interval_of): Likewise.
11239
11240 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
11241
11242 * charset.h (FETCH_STRING_CHAR_ADVANCE)
11243 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
11244 XSTRING()->size_byte.
11245
11246 * lisp.h (SDATA, SREF): Produce rvalue.
11247 (SSET): New macro.
11248 * alloc.c (make_event_array): Use SSET for storing into a string.
11249 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
11250 a string.
11251 * casefiddle.c (casify_object): Use SSET.
11252 * charset.h (FETCH_STRING_CHAR_ADVANCE)
11253 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
11254 address of string contents.
11255 * data.c (Faref): Use SDATA.
11256 (Faset): Use SDATA, SSET.
11257 * dired.c (directory_files_internal): Use SSET.
11258 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
11259 (Fread_file_name): Use SREF, SSET.
11260 * fns.c (concat): Use SSET.
11261 (concat, Fdelete): Use SDATA.
11262 * insdel.c (insert_from_string_1): Use SDATA.
11263 * keyboard.c (Fevent_convert_list): Use SREF.
11264 * lread.c (Fload): Use SDATA, SSET.
11265 * macfns.c (validate_x_resource_name): Use SSET.
11266 * process.c (status_message): Use SSET.
11267 * search.c (wordify): Use SDATA.
11268 (Freplace_match): Use SREF.
11269 * w32fns.c (validate_x_resource_name): Use SSET.
11270 * xfns.c (validate_x_resource_name): Use SSET.
11271 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
11272
112732002-07-16 Richard M. Stallman <rms@gnu.org>
11274
11275 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
11276
11277 * xdisp.c (reconsider_clip_changes):
11278 Don't test prevent_redisplay_optimizations_p.
11279 (redisplay_internal): Test prevent_redisplay_optimizations_p
11280 along with clip_changed in some cases.
11281 (try_window_id): Likewise.
11282 (redisplay_window): New local var buffer_unchanged_p.
11283
11284 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
11285
11286 * process.c (create_process): Test USG_SUBTTY_WORKS.
11287 (process_send_signal): Clean up handling of GID.
11288 Detect errors in ioctls meant to set GID.
11289
11290 * window.c (temp_output_buffer_show):
11291 Don't set prevent_redisplay_optimizations_p.
11292
112932002-07-15 Juanma Barranquero <lektu@terra.es>
11294
11295 * eval.c (Fdefvaralias): Add docstring argument.
11296
112972002-07-15 Ken Raeburn <raeburn@gnu.org>
11298
11299 * lisp.h (STRING_INTERVALS): Produce rvalue.
11300 (STRING_SET_INTERVALS): New macro.
11301 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
11302 * fns.c (Fstring_as_multibyte): Likewise.
11303 * intervals.c (balance_possible_root_interval, delete_interval)
11304 (create_root_interval, copy_intervals_to_string): Likewise.
11305 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
11306 instead of 0.
11307
113082002-07-14 Ken Raeburn <raeburn@gnu.org>
11309
11310 * lisp.h (STRING_SET_CHARS): New macro.
11311 (SCHARS, SBYTES): Produce rvalues.
11312 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
11313 * fns.c (concat): Likewise.
11314 * lread.c (read_vector): Likewise.
11315
11316 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
11317 (STRING_SET_UNIBYTE): New macro.
11318 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
11319 length of -1) changed to use STRING_SET_UNIBYTE.
11320 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11321 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
11322 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
11323 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
11324 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
11325 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
11326 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
11327 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
11328 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11329 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
11330 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
11331 STRING_BYTES or indirection changed to SCHARS, SBYTES,
11332 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
11333 unchanged for now.
11334
113352002-07-13 Kim F. Storm <storm@cua.dk>
11336
11337 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
11338
113392002-07-12 Richard M. Stallman <rms@gnu.org>
11340
11341 * fileio.c (Fwrite_region): Doc fix.
11342
11343 * print.c (print_error_message): Don't handle Vsignaling_function here.
11344
11345 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
11346 (command_loop_1): Avoid certain actions after memory-full error.
11347
11348 * eval.c (Fsignal): Don't call cancel_hourglass.
11349 For a memory-full error, don't call Vsignal_hook_function
11350 and don't set Vsignaling_function.
11351
11352 * process.c (process_send_signal): Add abort call.
11353
113542002-07-11 Markus Rost <rost@math.ohio-state.edu>
11355
11356 * keymap.c (Fkey_binding): Fix typo.
11357
113582002-07-11 Richard M. Stallman <rms@gnu.org>
11359
11360 * alloc.c (Vmemory_full): New variable.
11361 (Vmemory_signal_data): Renamed from memory_signal_data.
11362 Uses changed.
11363 (syms_of_alloc): Defvar them.
11364 (memory_full, buffer_memory_full): Set Vmemory_full.
11365
11366 * lisp.h (Vmemory_full): Add declaration.
11367 (current_column, indented_beyond_p): Change declaration.
11368
11369 * indent.c (last_known_column): Declare as double, not float.
11370 (current_column, current_column_1, string_display_width)
11371 (position_indentation): Return `double'.
11372 (indented_beyond_p): Arg `column' is `double'. Callers changed.
11373
11374 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
11375 (back_to_previous_visible_line_start)
11376 (reseat_at_next_visible_line_start, next_element_from_buffer):
11377 Use `double', not `float', when calling indented_beyond_p.
11378
11379 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
11380
11381 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
11382
113832002-07-11 Juanma Barranquero <lektu@terra.es>
11384
11385 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
11386 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
11387 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
11388 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
11389 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
11390 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
11391
113922002-07-10 Juanma Barranquero <lektu@terra.es>
11393
11394 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
11395 All callers changed.
11396
113972002-07-09 Stefan Monnier <monnier@cs.yale.edu>
11398
11399 * data.c (Fdefalias): Add an optional `docstring' argument.
11400 (set_internal, Fsetq_default): Use XCAR/XCDR.
11401
11402 * composite.c (HASH_VALUE, HASH_KEY):
11403 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
11404
114052002-07-09 Kenichi Handa <handa@etl.go.jp>
11406
11407 * callproc.c (Fcall_process): Fix previous change.
11408
114092002-07-07 Stefan Monnier <monnier@cs.yale.edu>
11410
11411 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
11412 Add support for hash-tables.
11413 (Ftry_completion): Return t even if the string appears multiple times.
11414
11415 * fns.c (Fnconc): Use XCDR.
11416 (Fprovide): Use CONSP and XCDR.
11417 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11418 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
11419 (Fmake_hash_table): Accept `:size nil'.
11420 (Fmakehash): Delete: moved to subr.el.
11421 (syms_of_fns): Don't defsubr makehash.
11422
11423 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11424 (HASH_TABLE_SIZE): Move from fns.c.
11425
114262002-07-07 Richard M. Stallman <rms@gnu.org>
11427
11428 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
11429 Instead just return 0 when there is something to be done.
11430 (try_scrolling): If make_cursor_line_fully_visible returns 0,
11431 retry scrolling as if cursor were off the bottom.
11432 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
11433 return CURSOR_MOVEMENT_MUST_SCROLL.
11434 (redisplay_window): If make_cursor_line_fully_visible returns 0,
11435 go to try_to_scroll.
11436
11437 * buffer.c (Fbuffer_local_value): Store current value into its binding
11438 so we get the up-to-date value for the binding that is loaded.
11439
11440 * eval.c (Fdefmacro): Doc fix.
11441
114422002-07-05 Dave Love <fx@gnu.org>
11443
11444 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
11445 correctly.
11446
11447 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
11448 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
11449 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
11450 CCL_LookupCharConstTbl.
11451 (syms_of_ccl): Defvar translation-hash-table-vector.
11452
114532002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11454
11455 * xdisp.c: Remove unused variable `face'.
11456
114572002-07-04 Juanma Barranquero <lektu@terra.es>
11458
11459 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
11460 obsolescence information.
11461
114622002-07-03 Andrew Choi <akochoi@shaw.ca>
11463
11464 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
11465 pattern. Search cache first.
11466 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
11467 for Japanese font.
11468 (XLoadQueryFont): Use it.
11469
114702002-07-02 Richard M. Stallman <rms@gnu.org>
11471
11472 * keymap.c (Fdefine_key): Doc fix.
11473
11474 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
11475
114762002-07-02 Juanma Barranquero <lektu@terra.es>
11477
11478 * keymap.c (syms_of_keymap): Fix typo.
11479
114802002-07-01 Andrew Choi <akochoi@shaw.ca>
11481
11482 * s/darwin.h: Define POSIX_SIGNALS.
11483
11484 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
11485 and FSRefMakePath to convert FSSpec returned with Apple Event to
11486 Posix pathname.
11487 (mac_initialize) [TARGET_API_MAC_CARBON]:
11488 Call init_required_apple_events and disable the `Quit' menu item
11489 provided automatically by the Carbon Toolbox.
11490
114912002-07-01 Dave Love <fx@gnu.org>
11492
11493 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
11494 for K&R.
11495
11496 * xterm.c: Fix prototype for K&R.
11497
11498 * term.c (costs_set): Declare static, non-initialized for pcc.
11499
115002002-07-01 Richard M. Stallman <rms@gnu.org>
11501
11502 * keyboard.c (timer_last_idleness_start_time): New variable.
11503 (timer_start_idle): Set that.
11504 (read_key_sequence): Use that to reset timer_idleness_start_time
11505 to previous value.
11506
11507 * window.c (Frecenter): With arg, set optional_new_start.
11508
11509 * xdisp.c (redisplay_internal): Make optional_new_start really work.
11510
11511 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
11512 buffer for completion.
11513
115142002-06-29 Ken Raeburn <raeburn@gnu.org>
11515
11516 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
11517
115182002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11519
11520 * keyboard.c (readable_filtered_events): New function that filters
11521 FOCUS_IN_EVENT depending on parameter.
11522 (readable_events): Calls readable_filtered_events, not filtering
11523 FOCUS_IN_EVENT.
11524 (get_filtered_input_pending): New function, filtering parameter passed
11525 to readable_filtered_events.
11526 (get_input_pending): Calls get_filtered_input_pending, not filtering
11527 FOCUS_IN_EVENT.
11528 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
11529 FOCUS_IN_EVENT.
11530
11531 * xterm.h (struct x_output): Add focus_state.
11532
11533 * xterm.c (x_focus_changed): New function.
11534 (x_detect_focus_change): New function.
11535 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
11536 EnterNotify and LeaveNotify to track X focus changes.
11537
115382002-06-28 Andreas Schwab <schwab@suse.de>
11539
11540 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
11541
115422002-06-27 Kim F. Storm <storm@cua.dk>
11543
11544 * xdisp.c: (mode_line_string_list, mode_line_string_face)
11545 (mode_line_string_face_prop): New variables.
11546 (store_mode_line_string): New function.
11547 (display_mode_element): Use store_mode_line_string to
11548 add mode-line string elements to mode_line_string_list
11549 when mode_line_string_list is non-nil.
11550 (Fformat_mode_line): Now returns propertized string by
11551 default. New arg NO-PROPS to ignore properties.
11552 (decode_mode_spec): Only add two dashes for %- in propertized
11553 mode-line string.
11554 (syms_of_xdisp): Init and staticpro mode_line_string_list.
11555
115562002-06-27 Stefan Monnier <monnier@cs.yale.edu>
11557
11558 * minibuf.c (minibuffer_completion_contents): Add return type.
11559
115602002-06-27 Juanma Barranquero <lektu@terra.es>
11561
11562 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
11563
115642002-06-26 Juanma Barranquero <lektu@terra.es>
11565
11566 * fileio.c (read_file_name_cleanup): Add missing return.
11567
115682002-06-26 Richard M. Stallman <rms@gnu.org>
11569
11570 * window.c (Frecenter): Don't set force_start flag.
11571
11572 * minibuf.c (do_completion, Fminibuffer_complete_word)
11573 (Fminibuffer_completion_help): Complete just the text before point.
11574 (minibuffer_completion_contents): New function.
11575
11576 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
11577
11578 * frame.c (frames_bury_buffer): Function deleted.
11579
115802002-06-25 Miles Bader <miles@gnu.org>
11581
11582 * callint.c (Fcall_interactively): When checking to see if doprnt hit
11583 the end of callint_message, allow for a terminating '\0'.
11584
115852002-06-24 Juanma Barranquero <lektu@terra.es>
11586
11587 * w32select.c: Include composite.h
11588
11589 * w16select.c: Likewise.
11590
115912002-06-24 Kenichi Handa <handa@etl.go.jp>
11592
11593 * callproc.c (Fcall_process): If code detection is necessary,
11594 call detect_coding directly here.
11595
11596 * coding.c (detect_eol): Preserve coding->cmp_data.
11597
11598 * w16select.c (Fw16_get_clipboard_data):
11599 * w32fns.c (w32_to_x_font):
11600 * w32select.c (Fw32_get_clipboard_data):
11601 * xselect.c (selection_data_to_lisp_data):
11602 * xterm.c (XTread_socket): Disable composition handling.
11603
116042002-06-24 Stefan Monnier <monnier@cs.yale.edu>
11605
11606 * print.c (temp_output_buffer_setup): Kill all local variables.
11607
116082002-06-22 Stefan Monnier <monnier@cs.yale.edu>
11609
11610 * lread.c (Fread): Remove redundant and imprecise declaration.
11611
11612 * xfns.c (check_x_display_info): Use check_x_frame.
11613
11614 * .gdbinit (xprintsym): Use the new `xname' field.
11615 (xsymbol): Use it.
11616
116172002-06-22 Jason Rumney <jasonr@gnu.org>
11618
11619 * w32fns.c (file_dialog_callback): New function.
11620 (Fx_file_dialog): Allow selecting directories as well as files.
11621
116222002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11623
11624 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
11625 OpenBSD. Add support for mipseb-*-netbsd* machines.
11626
116272002-06-17 Andrew Choi <akochoi@shaw.ca>
11628
11629 * macterm.c (mac_scroll_area): Set foreground and backcolor to
11630 black and white before scrolling. Restore frame background and
11631 foreground color after scrolling.
11632 (do_window_update): Call XClearWindow before calling expose_frame.
11633 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
11634 FRAME_FOREGROUND_PIXEL of frame.
11635
11636 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11637 test Mac command key as <ALT> key.
11638
116392002-06-17 Stefan Monnier <monnier@cs.yale.edu>
11640
11641 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
11642
11643 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
11644 Lookup keys in function-key-map immediately so that key-translation-map
11645 can be applied earlier.
11646 Remove function_key_possible and key_translation_possible, replaced
11647 by checking `keytran_start < t'.
11648
11649 * .gdbinit (xsymbol): Use the new `xname' field.
11650
116512002-06-17 Andrew Choi <akochoi@shaw.ca>
11652
11653 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11654 test Mac command key as <ALT> key.
11655
11656 * mac.c (do_applescript): Call initialize_applescript if necessary
11657 when first called. Dispose of result_desc only when there is no error.
11658 (Fdo_applescript): Use %d format specifier instead of %ld.
11659
116602002-06-16 Andrew Choi <akochoi@shaw.ca>
11661
11662 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
11663 of FrontWindow for cases keyDown and autoKey.
11664
11665 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
11666 Vdefault_fontset to Monaco with mac-roman coding.
11667
11668 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
11669 init_process before and after inclusion of Carbon/Carbon.h, resp.
11670
11671 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
11672 cursor_gc.
11673 (add_font_name_table_entry): New function.
11674 (init_font_name_table): Use add_font_name_table_entry; add italic,
11675 bold, and bold-italic entries for truetype fonts.
11676
11677 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
11678 for Mac too.
11679 (try_font_list) [MAC_OS]: If no font matches given registry, try
11680 fonts with any registry matching face_family.
11681 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
11682
11683 * s/darwin.h: If autoconf detects the Ncurses library, define
11684 LIBS_TERMCAP to -lncurses to use it.
11685
116862002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
11687
11688 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
11689
116902002-06-15 Richard M. Stallman <rms@gnu.org>
11691
11692 * window.c (Fset_window_configuration): Explicitly preserve
11693 the point value that new_current_buffer had at the start.
11694
116952002-06-14 Juanma Barranquero <lektu@terra.es>
11696
11697 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
11698 Fix typos.
11699
117002002-06-14 Kim F. Storm <storm@cua.dk>
11701
11702 * insdel.c (insert_1_both, insert_from_string_1)
11703 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
11704 insert happened in the end_unchanged region. Otherwise, the
11705 redisplay may be confused and duplicate the last line in the
11706 buffer [seen after save-buffer when require-final-newline==t].
11707
117082002-06-13 Jason Rumney <jasonr@gnu.org>
11709
11710 * w32.c (init_environment): Remove EMACSLOCKDIR.
11711 (stat): Swap _S_IFDIR and _S_IFREG.
11712
117132002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11714
11715 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
11716 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
11717 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
11718 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
11719 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
11720 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
11721 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
11722 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
11723 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
11724 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
11725 SELECTION_REQUEST_EVENT, selection_clear_event to
11726 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
11727 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
11728 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
11729 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
11730 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
11731 no_event to NO_EVENT.
11732
117332002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11734
11735 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
11736
117372002-06-12 Stefan Monnier <monnier@cs.yale.edu>
11738
11739 * intervals.c (textget): Don't forget to `return'.
11740 (lookup_char_property): Use XCAR/XCDR.
11741
117422002-06-12 Juanma Barranquero <lektu@terra.es>
11743
11744 * xdisp.c (Fformat_mode_line): Fix typo.
11745
117462002-06-12 Kim F. Storm <storm@cua.dk>
11747
11748 * xdisp.c (Fformat_mode_line): New function.
11749 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
11750 (store_frame_title_char, store_frame_title): Use unconditionally.
11751 (init_xdisp): Defsubr Fformat_mode_line.
11752 Initialize frame_title_buf etc. unconditionally.
11753
117542002-06-11 Stefan Monnier <monnier@cs.yale.edu>
11755
11756 * keyboard.c (read_key_sequence):
11757 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
11758 things through those maps after downcasing events.
11759 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
11760 applies after function-key-map.
11761 Make sure that keytran can be done in the middle in the sequence.
11762 Be careful not to throw away events past the one we downcase.
11763
11764 * lread.c (read_integer): Remove unused var `tem'.
11765 (read1): Fix int/Lisp_Object mixup.
11766
11767 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
11768
117692002-06-11 Richard M. Stallman <rms@gnu.org>
11770
11771 * keyboard.c (readable_events): Ignore any number of
11772 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
11773
117742002-06-09 Miles Bader <miles@gnu.org>
11775
11776 * xfaces.c (Ftty_supports_face_attributes_p): New function.
11777 (parse_rgb_list, tty_lookup_color): New functions.
11778 (tty_defined_color): Use `tty_lookup_color' to do all the work.
11779 (color_distance, Fcolor_distance): New functions.
11780 (TTY_SAME_COLOR_THRESHOLD): New macro.
11781 (Qtty_color_standard_values): New variable.
11782 (syms_of_xfaces): Initialize new vars & functions.
11783
117842002-06-08 Colin Walters <walters@verbum.org>
11785
11786 * textprop.c (Vchar_property_alias_alist): New variable.
11787 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
11788
11789 * intervals.c (lookup_char_property): New function for looking up
11790 overlay and text properties, created from textget.
11791 (textget): Use it.
11792
11793 * intervals.h (lookup_char_property): Declare.
11794 (Vchar_property_alias_alist): Declare.
11795
11796 * buffer.c (Foverlay_get): Use lookup_char_property.
11797
117982002-06-07 Sam Steingold <sds@gnu.org>
11799
11800 * xselect.c (lisp_data_to_selection_data): Fix last change:
11801 *data_ret is not a Lisp string, while unibyte_string is.
11802
118032002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
11804
11805 * xselect.c (lisp_data_to_selection_data): Fix last change:
11806 set size_ret.
11807
118082002-06-07 Andreas Schwab <schwab@suse.de>
11809
11810 * m/amdx86-64.h: New file.
11811
118122002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11813
11814 * fns.c (Fstring_make_unibyte): Doc fix.
11815
11816 * xselect.c (lisp_data_to_selection_data): If the requested type
11817 is STRING, call string_make_unibyte to encode the selected text
11818 as a string.
11819
11820 * window.c (Fset_window_hscroll): Doc fix.
11821
118222002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11823
11824 * fileio.c (choose_write_coding_system):
11825 Call select-safe-coding-system properly.
11826
118272002-06-03 Richard M. Stallman <rms@gnu.org>
11828
11829 * xdisp.c (message_with_string): Error if STRING is not a string.
11830
11831 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11832
11833 * fileio.c (choose_write_coding_system): Pass FILE arg to
11834 Vselect_safe_coding_system_function.
11835
118362002-06-03 Ken Raeburn <raeburn@gnu.org>
11837
11838 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11839
118402002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11841
11842 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11843 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11844 * keymap.c (describe_command): Likewise.
11845 * minibuf.c (read_minibuf): Likewise.
11846
11847 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11848 Cast `current_column' return value to int.
11849 (back_to_previous_visible_line_start)
11850 (reseat_at_next_visible_line_start, next_element_from_buffer):
11851 Cast `indented_beyond_p' 3rd arg to float.
11852
11853 * indent.c (last_known_column): Now a float.
11854 (current_column_1, position_indentation, current_column)
11855 (string_display_width): Return float.
11856 (Fcurrent_column): Cast `current_column' return value to int.
11857 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11858 (indented_beyond_p): Third arg now a float.
11859 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11860
11861 * lisp.h (current_column): Now returns float.
11862 (indented_beyond_p): 3rd arg now a float.
11863
118642002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11865
11866 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11867 is Qcompound_text_with_extensions.
11868
11869 * xselect.c (lisp_data_to_selection_data): Always set selection
11870 type as string if x_encode_text returns streingp non-NULL.
11871
11872 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11873
118742002-05-30 Richard M. Stallman <rms@gnu.org>
11875
11876 * window.c (Fset_window_configuration): Correct the handling
11877 of point in current buffer, to work with multiple windows.
11878
118792002-05-29 Colin Walters <walters@verbum.org>
11880
11881 * lread.c (Fread_from_string): Don't depend on order of evaluation
11882 for C function parameters.
11883
118842002-05-28 Richard M. Stallman <rms@gnu.org>
11885
11886 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11887 way for blinked-off state and for a nonselected window.
11888
11889 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11890 instead, see if the new start pos is at beginning of line.
11891
11892 * fileio.c (Fwrite_region): If START is a string, don't
11893 make any annotations.
11894
11895 * eval.c (syms_of_eval): Doc fix.
11896
118972002-05-28 Colin Walters <walters@debian.org>
11898
11899 * emacs.c (USAGE1): Add --no-splash.
11900 (standard_args): Ditto.
11901
119022002-05-28 Colin Walters <walters@gnu.org>
11903
11904 * lread.c (readchar_count): New variable.
11905 (readchar): Increment it.
11906 (unreadchar): Decrement it.
11907 (read_multibyte): Decrement it.
11908 (Vread_with_symbol_positions): New variable.
11909 (Vread_symbol_positions_list): New variable.
11910 (read_internal_start): New function, created from Fread and
11911 Fread_from_string. Handle Vread_symbol_positions_list and
11912 Vread_with_symbol_positions.
11913 (readevalloop, Fread, Fread_from_string): Use it.
11914 (read1): Use readchar_count to add symbol positions to
11915 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11916 (syms_of_lread): DEFVAR_LISP and initialize them.
11917
11918 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11919 (substitute_object_recurse, substitute_object_in_subtree)
11920 (substitute_in_interval): Prototype.
11921 (read_multibyte): Return c if it's less than zero.
11922
119232002-05-28 Kim F. Storm <storm@cua.dk>
11924
11925 * fileio.c (Fread_file_name_internal): Added brute-force
11926 speed up for using predicate file-directory-p.
11927
119282002-05-28 Kim F. Storm <storm@cua.dk>
11929
11930 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11931 New variables.
11932 (syms_of_fileio): DEFVAR_LISP them.
11933 (read_file_name_cleanup): New unwind function.
11934 (Fread_file_name_internal): Only return completions satifying
11935 Vread_file_name_predicate. Temporarily unwind protect and rebind
11936 default-directory while checking completions against the predicate.
11937 (Fread_file_name): Added PREDICATE argument. Specbind it to
11938 Vread_file_name_predicate during completion.
11939 Call Vread_file_name_function to read the file name if non-nil.
11940
11941 * lisp.h (Fread_file_name): Now has 6 args.
11942
11943 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11944 predicate for Fread_file_name when reading directory name.
11945 Supply Qnil for predicate in other calls to Fread_file_name.
11946
119472002-05-26 Miles Bader <miles@gnu.org>
11948
11949 * term.c (tty_capable_p): New function.
11950 * dispextern.h (tty_capable_p): New function declaration.
11951 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11952 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11953
119542002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11955
11956 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11957 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11958 (Vwrite_region_annotate_functions): Docstring fix.
11959
119602002-05-23 Kim F. Storm <storm@cua.dk>
11961
11962 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11963 phys_cursor's hpos is overwritten. This is still not completely
11964 correct, as it doesn't really make sense to use hpos at all to
11965 get the cursor glyph (as that is relative to the width of the
11966 characters on the line, which may have changed during the update).
11967
119682002-05-22 Jason Rumney <jasonr@gnu.org>
11969
11970 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11971 Lisp_Object.
11972 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11973 Use modified enumfont_t struct.
11974
11975 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11976
11977 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11978 Handle the `hbar' cursor type.
11979 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11980
11981 * w32fns.c (Qhbar): New variable.
11982 (x_specified_cursor_type): Use it.
11983
119842002-05-21 Ken Raeburn <raeburn@gnu.org>
11985
11986 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11987 now, when the address is needed.
11988
119892002-05-21 Colin Walters <walters@gnu.org>
11990
11991 * Makefile.in (shortlisp): Add font-core.el.
11992
119932002-05-20 Richard M. Stallman <rms@gnu.org>
11994
11995 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11996
11997 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11998 equivalent key bindings here.
11999
120002002-05-20 Ken Raeburn <raeburn@gnu.org>
12001
12002 Change symbol structure to contain a lisp object for the symbol
12003 name:
12004 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
12005 object field named "xname".
12006 (SYMBOL_NAME): New macro.
12007 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
12008 name field.
12009 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
12010 (mark_object, gc_sweep): Use symbol xname field and XSTRING
12011 instead of name field.
12012 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
12013 SYMBOL_NAME instead of XSYMBOL and name field.
12014 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
12015 instead of XSYMBOL and name field.
12016 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
12017 and SYMBOL_NAME instead of XSYMBOL and name field.
12018 * coding.c (Fread_coding_system, code_convert_region1)
12019 (code_convert_string1, code_convert_string_norecord)
12020 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
12021 XSYMBOL and name field.
12022 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
12023 (Fmake_variable_buffer_local, Fmake_local_variable)
12024 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
12025 of XSYMBOL and name field.
12026 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
12027 XSYMBOL and name field.
12028 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
12029 instead of XSYMBOL and name field.
12030 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
12031 XSYMBOL and name field.
12032 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
12033 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
12034 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
12035 instead of XSYMBOL and name field.
12036 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
12037 (parse_modifiers, apply_modifiers, Fevent_convert_list)
12038 (parse_solitary_modifier, Fexecute_extended_command):
12039 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
12040 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
12041 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
12042 of XSYMBOL and name field.
12043 (describe_command, describe_translation): Use SYMBOL_NAME and
12044 assignment instead of XSYMBOL and name field and XSETSTRING.
12045 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
12046 instead of XSYMBOL and name field.
12047 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
12048 name field and XSETSTRING.
12049 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
12050 of XSYMBOL and name field.
12051 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
12052 assignment instead of XSYMBOL and name field and XSETSTRING.
12053 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
12054 XSTRING instead of XSYMBOL and name field.
12055 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
12056 and XSTRING instead of XSYMBOL and name field.
12057 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
12058 and XSTRING instead of XSYMBOL and name field.
12059 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
12060 XSTRING instead of XSYMBOL and name field.
12061 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
12062 of XSYMBOL and name field.
12063 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
12064 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
12065
120662002-05-19 Ken Raeburn <raeburn@gnu.org>
12067
12068 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
12069 and XCDR real rvalues in most configurations.
12070
12071 * buffer.c (fix_overlays_in_range, fix_overlays_before):
12072 Don't take the address of the cdr part of a cons cell; instead, track
12073 the parent cell and call XSETCDR, or set the variable for the head
12074 of the list if we haven't started down the list yet.
12075
120762002-05-19 Richard M. Stallman <rms@gnu.org>
12077
12078 * doc.c (reread_doc_file): Don't ask for confirmation.
12079
120802002-05-18 Jason Rumney <jasonr@gnu.org>
12081
12082 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
12083 (xbm_load_image): Use it.
12084 (xbm_load): Ditto.
12085 (xbm_read_bitmap_data): Reverted to xfns.c version.
12086 From David Ponce <david@dponce.com>.
12087
120882002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
12089
12090 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
12091 2.02 and later.
12092
120932002-05-16 Juanma Barranquero <lektu@terra.es>
12094
12095 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
12096
120972002-05-15 Stefan Monnier <monnier@cs.yale.edu>
12098
12099 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
12100 meaningful test.
12101 (read_char_minibuf_menu_prompt): Fix typo.
12102
121032002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
12104
12105 * eval.c (Fcommandp): Doc fix.
12106
121072002-05-13 Stefan Monnier <monnier@cs.yale.edu>
12108
12109 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
12110 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
12111 (Fset_keymap_parent): Gcpro a bit more.
12112 (access_keymap): Gcpro around meta_map call and around the main loop.
12113 (get_keyelt): Gcpro when following indirect references.
12114 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
12115 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
12116 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
12117 Remove useless ad-hoc remap code.
12118
121192002-05-13 Richard M. Stallman <rms@gnu.org>
12120
12121 * search.c (search_buffer): Give up boyer moore search if inverse
12122 translation change charset_base.
12123
121242002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
12125
12126 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
12127 characters is carried over from the previous block of text, adjust
12128 coding->produced to account for the extra character.
12129
121302002-05-11 Andreas Schwab <schwab@suse.de>
12131
12132 * coding.c (intersection): Keep the elements of the returned list
12133 in the same order as in the first list.
12134
121352002-05-11 Kim F. Storm <storm@cua.dk>
12136
12137 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
12138 only update cmm_size if realloc actually succeeds.
12139 Testing with initial size of 2 elements revealed that using
12140 realloc on GNU/Linux would cause a random trap in xmalloc
12141 later on, so I rewrote the code to use malloc/bcopy/free instead
12142 of realloc.
12143
121442002-05-10 Jason Rumney <jasonr@gnu.org>
12145
12146 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
12147
121482002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
12149
12150 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
12151 parens, to ensure correct evaluation order.
12152
121532002-05-10 Kim F. Storm <storm@cua.dk>
12154
12155 * keymap.c (Vemulation_mode_map_alists): New variable.
12156 (syms_of_keymap): DEFVAR_LISP it.
12157 (current_minor_maps): Process keymap alists in that list before
12158 minor-mode-overriding-map-alist and minor-mode-map-alist.
12159
121602002-05-09 Richard M. Stallman <rms@gnu.org>
12161
12162 * search.c (Freplace_match): Doc fix.
12163
121642002-05-09 Kim F. Storm <storm@cua.dk>
12165
12166 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
12167 Enlarge cursor rectangle drawn around image with non-zero relief.
12168
12169 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
12170 Enlarge cursor rectangle drawn around image with non-zero relief.
12171
12172 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
12173 Enlarge cursor rectangle drawn around image with non-zero relief.
12174
121752002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
12176
12177 * xselect.c (lisp_data_to_selection_data): Don't set selection
12178 type if comes from the Lisp object's car. If the selection
12179 contains a pure ASCII text, always return QSTRING as its type.
12180
121812002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12182
12183 * mac.c (mac-cut-function): Doc fix.
12184
121852002-05-05 Richard M. Stallman <rms@gnu.org>
12186
12187 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
12188
121892002-05-04 Jason Rumney <jasonr@gnu.org>
12190
12191 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
12192 for event-click-count.
12193
12194 * process.c (init_process): Only add server subfeature if we can
12195 use non-blocking I/O.
12196
121972002-05-04 Andrew Choi <akochoi@shaw.ca>
12198
12199 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
12200 repeatedly.
12201
122022002-05-03 Jason Rumney <jasonr@gnu.org>
12203
12204 * process.c (Fmake_network_process): Only support server sockets
12205 when we can make them non-blocking.
12206
12207 * s/ms-w32.h (HAVE_SELECT): Define.
12208
12209 * w32.h (FILE_NDELAY): New flag.
12210
12211 * w32.c (sys_getpeername, fcntl): New functions.
12212 (_sys_read_ahead): Temporarily block on non-blocking sockets.
12213
12214 * w32proc.c: include sys/file.h.
12215
122162002-05-03 Colin Walters <walters@verbum.org>
12217
12218 * callproc.c (Vgame_score_directory): Renamed to
12219 Vshared_game_score_directory.
12220
122212002-04-30 Richard M. Stallman <rms@gnu.org>
12222
12223 * s/gnu.h [emacs]: Include stdio.h.
12224 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
12225
12226 * eval.c (do_autoload): Error if called while preparing to dump.
12227
12228 * fns.c (Frequire): Error if need to load while preparing to dump.
12229
122302002-04-28 Colin Walters <walters@verbum.org>
12231
12232 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
12233 Default to "~/.emacs.d/games".
12234
122352002-04-29 Stefan Monnier <monnier@cs.yale.edu>
12236
12237 * lread.c (openp): Change arg exec_only to predicate.
12238 (build_load_history): Use XCAR/XCDR.
12239 (Flocate_file_internal): New fun.
12240 (syms_of_lread): Defsubr it.
12241 (Fload): Update call to openp.
12242
12243 * lisp.h (openp): Update prototype.
12244
12245 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
12246 * w32proc.c (sys_spawnve):
12247 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
12248 * w32.c (check_windows_init_file):
12249 * sound.c (Fplay_sound_internal):
12250 * process.c (Fstart_process):
12251 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
12252 * mac.c (run_mac_command):
12253 * emacs.c (init_cmdargs):
12254 * callproc.c (Fcall_process): Update call to openp.
12255
12256 * textprop.c (remove_properties): Don't use XCAR without CONSP.
12257
12258 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
12259
122602002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12261
12262 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
12263 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
12264
122652002-04-28 Richard M. Stallman <rms@gnu.org>
12266
12267 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
12268
12269 * eval.c (Fcommandp): New arg for_call_interactively.
12270 * lisp.h (Fcommandp): Declare new arg.
12271
122722002-04-28 Jason Rumney <jasonr@gnu.org>
12273
12274 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
12275
12276 * w32.c (stat, fstat): Use file index information to generate
12277 inodes for directories where available.
12278
122792002-04-26 Andrew Choi <akochoi@shaw.ca>
12280
12281 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
12282 [HAVE_CARBON]: Include Mac object files.
12283
12284 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
12285 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
12286 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
12287 MAC_OSX, and MAC_OS instead of macintosh.
12288
12289 * editfns.c [MAC_OS8]: Include stdio.h.
12290
12291 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
12292
12293 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
12294 Apple Monaco.
12295
12296 * process.c (QCfamily, QCfilte): Declare extern.
12297 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
12298 calling select.
12299
12300 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
12301
12302 * tparam.c [MAC_OSX]: Don't define BC and UP.
12303
12304 * config.in [HAVE_CARBON]: Add.
12305
12306 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
12307 Move here from mac/src and mac/inc.
12308
12309 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
12310
123112002-04-26 Gerd Moellmann <gerd@gnu.org>
12312
12313 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
12314 Compute phys_cursor_width from the x position returned
12315 by x_draw_glyhs, which is cheaper.
12316 (x_display_and_set_cursor): Compute the buffer-local value
12317 of `cursor-in-non-selected-windows' only when needed.
12318
123192002-04-25 Gerd Moellmann <gerd@gnu.org>
12320
12321 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
12322 cursor on a stretch glyph has a width that depends on
12323 x_stretch_cursor_p.
12324
123252002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12326
12327 * abbrev.c (abbrev-start-location): Doc fix.
12328
12329 * indent.c (Fvertical_motion): Fix last change.
12330
123312002-04-25 Gerd Moellmann <gerd@gnu.org>
12332
12333 * indent.c (Fvertical_motion): Move to the start of the line
12334 containing PT before moving up or down.
12335
123362002-04-24 Gerd Moellmann <gerd@gnu.org>
12337
12338 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
12339 case of writing a whole row, more or less analogous to the case of
12340 writing only parts of a row.
12341
12342 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
12343 0 for NO_CURSOR.
12344
12345 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
12346
123472002-04-23 Colin Walters <walters@verbum.org>
12348
12349 * buffer.c (syms_of_buffer): Doc fix.
12350
123512002-04-23 Gerd Moellmann <gerd@gnu.org>
12352
12353 * xterm.c (notice_overwritten_cursor): Handle the special case
12354 of the cursor being in the first blank non-text line at the
12355 end of a window.
12356
12357 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
12358 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
12359 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
12360 bar cursors only, to make phys_cursor_width contain what its name
12361 suggests.
12362 (notice_overwritten_cursor): Consider the cursor image erased if
12363 the output area intersects the cursor image in y-direction.
12364
123652002-04-23 Simon Marshall <simon@gnu.org>
12366
12367 * xfns.c (x_set_mouse_color): Change default for cross_cursor
12368 to XC_hand2.
12369
123702002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12371
12372 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
12373
123742002-04-22 Kim F. Storm <storm@cua.dk>
12375
12376 * textprop.c (remove_properties): Fixed trap for malformed plist.
12377
123782002-04-22 Richard M. Stallman <rms@gnu.org>
12379
12380 * cmds.c (Fend_of_line): Handle intangible text in mid line.
12381
12382 * window.c (make_window): Initialize height_fixed_p,
12383 last_cursor_off_p, and p->cursor_off_p slots.
12384
123852002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12386
12387 * fns.c (use-dialog-box): Doc fix.
12388
123892002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12390
12391 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
12392 variables `row', `i' and `area'.
12393 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
12394 toolkit library.
12395
123962002-04-19 Stefan Monnier <monnier@cs.yale.edu>
12397
12398 * xfaces.c (clear_font_table): Don't free the default font of
12399 a frame even if it's on another display.
12400 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
12401 that could be Qt.
12402
124032002-04-19 Juanma Barranquero <lektu@terra.es>
12404
12405 * indent.c (Fmove_to_column): Remove unused local variable
12406 `next_boundary_byte'.
12407 (current_column_1): Likewise.
12408
124092002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
12410
12411 * msdos.c (Qhbar): New variable.
12412 (syms_of_msdos): Intern and staticpro it.
12413 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
12414 cursor type.
12415
124162002-04-19 Dave Lambert <dlambert@acm.org>
12417
12418 Theses change implement an underscore-like (`hbar') cursor.
12419
12420 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12421
12422 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
12423 Handle the `hbar' cursor type.
12424 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12425
12426 * xfns.c (Qhbar): New variable.
12427 (syms_of_xfns): Intern and staticpro it.
12428 (x_specified_cursor_type): Handle `hbar' cursor.
12429
12430 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
12431 not defined.
12432
124332002-04-18 Richard M. Stallman <rms@gnu.org>
12434
12435 * textprop.c (remove_properties): New arg LIST allows scanning
12436 either a list or a plist.
12437 (interval_has_some_properties_list): New function, like
12438 interval_has_some_properties using list instead of plist.
12439 All callers changed.
12440 (Fremove_list_of_text_properties): New function.
12441 (syms_of_textprop): Defsubr it.
12442
124432002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12444
12445 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
12446
124472002-04-17 Juanma Barranquero <lektu@terra.es>
12448
12449 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
12450
124512002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12452
12453 * window.c (coordinates_in_window): Don't report on margin area
12454 if its width is zero.
12455
124562002-04-16 Jason Rumney <jasonr@gnu.org>
12457
12458 * w32fns.c (Fx_file_dialog): Decode file name before using.
12459
12460 * w32term.c (construct_drag_n_drop): Likewise.
12461
124622002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
12463
12464 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
12465 store load-history in pure space.
12466
12467 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
12468
124692002-04-16 Stefan Monnier <monnier@cs.yale.edu>
12470
12471 * xterm.c (Qlatin_1, Qutf_8): New vars.
12472 (syms_of_xterm): Initialize them.
12473 (XTread_socket): Eliminate incorrect optimization that tried to avoid
12474 decoding the output of X*LookupString.
12475 Always use latin-1 to decode the output of XLookupString.
12476 Try Xutf8LookupString if XmbLookupString failed.
12477
12478 * region-cache.c (new_region_cache): Use BEG.
12479
124802002-04-16 Gerd Moellmann <gerd@gnu.org>
12481
12482 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
12483 configuration files.
12484 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
12485 returns 0.
12486
124872002-04-15 Andreas Schwab <schwab@suse.de>
12488
12489 * config.in: Regenerated using autoheader.
12490
12491 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
12492 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
12493 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
12494 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
12495 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
12496 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
12497 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
12498 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
12499 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
12500 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
12501 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
12502 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
12503 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
12504 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
12505 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
12506 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
12507 STACK_DIRECTION, now set by autoconf.
12508
125092002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12510
12511 * dispnew.c (marginal_area_string): Sort arguments.
12512
12513 * dispextern.h (marginal_area_string): Add prototype.
12514
125152002-04-13 Richard M. Stallman <rms@gnu.org>
12516
12517 * fileio.c (Finsert_file_contents):
12518 Don't call temp_output_buffer_setup--do just part, by hand.
12519
12520 * coding.c (run_pre_post_conversion_on_str):
12521 Don't call temp_output_buffer_setup--do just part, by hand.
12522
12523 * keyboard.c (command_loop_1): Don't call start_hourglass
12524 or cancel_hourglass when executing a macro.
12525
12526 * marker.c (count_markers): New function.
12527
12528 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
12529 grow without limit. Move recently used elements to the front.
12530
125312002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
12532
12533 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
12534
125352002-04-12 Gerd Moellmann <gerd@gnu.org>
12536
12537 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
12538 rows marginal areas.
12539 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
12540 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
12541
12542 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
12543
125442002-04-12 Dave Love <fx@gnu.org>
12545
12546 * dispnew.c (marginal_area_string): New.
12547
12548 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
12549 (Qleft_margin, Qright_margin): Declare.
12550 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
12551
12552 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
12553 note_mode_line_highlight and extended.
12554
12555 * keyboard.c (Qleft_margin, Qright_margin): Declare.
12556 (make_lispy_event): Deal with mouse events in margins.
12557
125582002-04-12 Stefan Monnier <monnier@cs.yale.edu>
12559
12560 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
12561
12562 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
12563 than deactivating the mark if tmm is set to `lambda'.
12564 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
12565 Use a single event for HELP_EVENT.
12566 (Fexecute_extended_command): Save last_point_position.
12567
125682002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12569
12570 * lisp.h (Fpropertize): Add prototype.
12571
12572 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
12573
125742002-04-10 Colin Walters <walters@verbum.org>
12575
12576 * config.in: Add HAVE_SHARED_GAME_DIR.
12577
12578 * callproc.c: (Vgame_score_directory): New variable.
12579 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
12580
125812002-04-10 Richard M. Stallman <rms@gnu.org>
12582
12583 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
12584
125852002-04-09 Stefan Monnier <monnier@cs.yale.edu>
12586
12587 * minibuf.c (read_minibuf): Use empty_string.
12588 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
12589 Short-circuit the search as soon as it "failed".
12590 (Fall_completions): Allow lambda forms and lists of strings for alist.
12591 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
12592 when require_match is nil.
12593 (Ftest_completion): Rename from `test_completion' and export to elisp.
12594 Call the predicate also when alist is a list.
12595 Obey Vcompletion_regexp_list.
12596 (do_completion, Fminibuffer_complete_and_exit): Use it.
12597 (Fassoc_string): Rename from `assoc_for_completion'.
12598 Allow list of strings as well and export to elisp.
12599
126002002-04-08 Stefan Monnier <monnier@cs.yale.edu>
12601
12602 * puresize.h (BASE_PURESIZE): Increase to 900KB.
12603
126042002-04-08 Juanma Barranquero <lektu@terra.es>
12605
12606 * w32.c (sys_accept): Don't hide variable `s'.
12607
126082002-04-05 Gerd Moellmann <gerd@gnu.org>
12609
12610 * callint.c (Fcall_interactively): Use INTEGERP instead of
12611 NUMBERP for checking Vhistory_length.
12612
126132002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12614
12615 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
12616 Doc fix to reflect it.
12617
126182002-04-04 Richard M. Stallman <rms@gnu.org>
12619
12620 * xdisp.c (display_mode_element): New arg RISKY.
12621 Disregard text props found or specified within a variable
12622 that isn't marked risky-local-variable.
12623 (Qrisky_local_variable): New variable.
12624 (syms_of_xdisp): Init and staticpro it.
12625
126262002-04-04 Stefan Monnier <monnier@cs.yale.edu>
12627
12628 * undo.c (record_point): New fun.
12629 (record_delete, record_insert): Use it.
12630
126312002-04-03 Juanma Barranquero <lektu@terra.es>
12632
12633 * doc.c (Fdocumentation): Add missing parentheses.
12634 (Fdocumentation_property): Likewise.
12635
126362002-04-03 Stefan Monnier <monnier@cs.yale.edu>
12637
12638 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
12639 data is 0, just return nil.
12640
126412002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
12642
12643 * msdos.c (syms_of_msdos): Fix last change with
12644 mouse_autoselect_window.
12645
126462002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12647
12648 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
12649 mouse_autoselect_window.
12650
126512002-04-02 Stefan Monnier <monnier@cs.yale.edu>
12652
12653 * keyboard.c (make_lispy_event): Handle unknown keysyms together
12654 with system-specific keysyms. Use it also for unknown function keys.
12655
12656 * doc.c (reread_doc_file): Return whether reload was attempted.
12657 (Fdocumentation, Fdocumentation_property): Don't try to reload
12658 if the doc is 0 and only ask once.
12659
12660 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
12661
126622002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
12663
12664 * keyboard.c (read_char): If the event was Qselect_window,
12665 restore timer_idleness_start_time to its previous value.
12666
12667 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
12668
126692002-04-01 Stefan Monnier <monnier@cs.yale.edu>
12670
12671 * region-cache.c (new_region_cache): Use BEG.
12672
12673 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
12674 Use BEG and BEG_BYTE.
12675
12676 * doc.c (get_doc_string): Return nil if the location is wrong.
12677 (reread_doc_file): New fun.
12678 (Fdocumentation, Fdocumentation_property):
12679 Call it if get_doc_string fails.
12680 (Fsnarf_documentation): Make it work for a dumped Emacs.
12681
12682 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
12683 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
12684
12685 * charset.c (Fstring): Allow 0 arguments.
12686
12687 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
12688
12689 * process.c (DATAGRAM_CONN_P, list_processes_1)
12690 (Fprocess_datagram_address, Fset_process_datagram_address)
12691 (Fset_network_process_options, server_accept_connection):
12692 Fix some int/Lisp_Object confusions (thank you union types).
12693
126942002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12695
12696 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
12697
12698 * w32term.c: Likewise.
12699 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
12700
12701 * keyboard.c (Qselect_window): New symbol.
12702 (head_table): Use it.
12703 (keys_of_keyboard): Bound select-window event to handle-select-window.
12704 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
12705
12706 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
12707 (last_window): New variable.
12708 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
12709 (note_mouse_movement): Remove reimplemented code in #if 0.
12710 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
12711 Emacs windows.
12712
12713 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
12714
127152002-03-31 Gerd Moellmann <gerd@gnu.org>
12716
12717 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
12718 Callers changed.
12719
127202002-03-30 Richard M. Stallman <rms@gnu.org>
12721
12722 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
12723 loop whenever it stops making progress.
12724
12725 * widget.c (set_frame_size): Don't call change_frame_size.
12726
127272002-03-30 Gerd Moellmann <gerd@gnu.org>
12728
12729 * dispnew.c (direct_output_for_insert):
12730 Call mark_window_display_accurate.
12731
127322002-03-29 Jason Rumney <jasonr@gnu.org>
12733
12734 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
12735
127362002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
12737
12738 * Makefile.in (lread.o): Depend on coding.h.
12739
12740 * lread.c (openp, Fload): Encode the file name before passing it
12741 to `stat', `access', and `emacs_open'.
12742 (openp): GCPRO the encoded file name. Don't recompute Lisp
12743 strings unnecessarily.
12744
127452002-03-29 Kim F. Storm <storm@cua.dk>
12746
12747 * fns.c (Flax_plist_put): Doc fix.
12748
127492002-03-28 Miles Bader <miles@gnu.org>
12750
12751 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
12752
127532002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12754
12755 * process.c (set-network-process-options): Add usage.
12756 (make-network-process): Doc fix.
12757
127582002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
12759
12760 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
12761
127622002-03-26 Richard M. Stallman <rms@gnu.org>
12763
12764 * fns.c (Fsubstring_no_properties): New function.
12765 (Flax_plist_get, Flax_plist_put): New functions.
12766 (syms_of_fns): defsubr them.
12767
12768 * xdisp.c (update_menu_bar): Test only update_mode_lines;
12769 don't test or alter w->update_mode_line.
12770
12771 * window.c (Fdisplay_buffer): Doc fix.
12772
127732002-03-24 Richard M. Stallman <rms@gnu.org>
12774
12775 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
12776
127772002-03-24 Gerd Moellmann <gerd@gnu.org>
12778
12779 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
12780 (Fdefmacro): Handle `(declare ...)'.
12781 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
12782 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
12783
127842002-03-24 Jason Rumney <jasonr@gnu.org>
12785
12786 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
12787 (xbm_file_p): Add prototypes.
12788 (xbm_format, xbm_image_p): Sync with xfns.c.
12789 (reflect_byte): New function.
12790 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
12791 (xbm_load_image): Create bitmaps with a depth of 1.
12792 (init_xfns): Enable XBM images.
12793
127942002-03-23 Jason Rumney <jasonr@gnu.org>
12795
12796 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
12797 correctly. Do not pass up_modifier to keyboard buffer.
12798
12799 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
12800
128012002-03-22 Stefan Monnier <monnier@cs.yale.edu>
12802
12803 * Makefile.in (bootstrapclean): New target.
12804 (bootstrap-temacs, bootstrap-doc): Remove.
12805 (bootstrap-emacs): Use a bog-standard `temacs'.
12806 Don't bother to build a DOC file.
12807
12808 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12809
12810 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12811 in temacs even if !CANNOT_DUMP.
12812 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12813
12814 * alloc.c (check_pure_size): Only output a warning.
12815
128162002-03-22 Jason Rumney <jasonr@gnu.org>
12817
12818 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12819 supported.
12820
12821 * w32term.c (zv_bits): Declare as short, for word alignment.
12822 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12823 (syms_of_w32term): Define x-use-underline-position-properties.
12824
12825 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12826 (clear_image_cache): Block input, fix logic, clear matrices in
12827 all frames that share this cache.
12828
128292002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12830
12831 * emacs.c (main): Update the Copyright year in the blurb printed
12832 by "emacs --version".
12833
12834 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12835
12836 * xterm.c (XTread_socket): If XK_ISO_Lock and
12837 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12838 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12839
128402002-03-21 Kim F. Storm <storm@cua.dk>
12841
12842 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12843 menu-bar bindings in keymap and local-map properties _are_ used.
12844 But try keymap property first in accordance with 2002-01-03 patch.
12845 Added comment describing why this is not always reliable.
12846 (tool_bar_items): Ditto for tool-bar.
12847
128482002-03-21 Jason Rumney <jasonr@gnu.org>
12849
12850 * w32fns.c (x_clear_image_1): Disable color table code.
12851
128522002-03-21 Kim F. Storm <storm@cua.dk>
12853
12854 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12855 removed the wrong version of the DEFUN macro; fixed it.
12856
12857 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12858 Fmember rather than Fmemq).
12859 (Fprovide): Check that subfeatures is a list.
12860
12861 * process.c (QCfeature, QCdatagram): Removed variables.
12862 (QCtype, Qdatagram): New variables.
12863 (network_process_featurep): Removed function.
12864 (Fmake_network_process): Removed :feature check.
12865 Use :type 'datagram instead of :datagram t to create a datagram
12866 socket. This allows us to add other connection types (e.g. raw
12867 sockets) later in a consistent manner.
12868 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12869 supported subfeatures for feature make-network-process.
12870 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12871 Intern and staticpro QCtype and Qdatagram.
12872 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12873
12874 * xfns.c: (QCtype): Remove duplicate declaration and
12875 initialization (is now declared in process.c).
12876
12877 * w32fns.c: (QCtype): Remove duplicate declaration and
12878 initialization (is now declared in process.c).
12879
128802002-03-21 Richard M. Stallman <rms@gnu.org>
12881
12882 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12883 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12884 when jumping to `fail' to avoid undoing reg changes in the
12885 last iteration of the loop.
12886 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12887
12888 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12889 Depend on process.h.
12890
128912002-03-20 Jason Rumney <jasonr@gnu.org>
12892
12893 Most of the following changes are still conditional on HAVE_IMAGES
12894 which is not set by default on Windows.
12895
12896 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12897
12898 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12899 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12900 (four_corners_best, x_clear_image_1, x_clear_image)
12901 (x_alloc_image_color, postprocess_image)
12902 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12903 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12904 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12905
12906 * w32gui.h (struct XImage): Define.
12907
12908 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12909 extract mouse co-ordinates.
12910
129112002-03-20 Jason Rumney <jasonr@gnu.org>
12912
12913 * w32.c (init_winsock): Dynamically load new server and UDP
12914 socket functions.
12915 (socket_to_fd): New function.
12916 (sys_socket): Use it.
12917 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12918 (sys_recvfrom, sys_sendto): New wrapper functions.
12919
12920 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12921 and initialization.
12922
12923 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12924
129252002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12926
12927 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12928 Don't use "sun" as a variable, it's a predefined constant on Sun
12929 machines.
12930
129312002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12932
12933 * bytecode.c (Fbyte_code): Revert last change.
12934
129352002-03-19 Kim F. Storm <storm@cua.dk>
12936
12937 * makefile.w32-in (LIBS): Add $(WSOCK32).
12938 From David Ponce <dponce@voila.fr>.
12939
129402002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12941
12942 * process.c (wait_reading_process_input): Move variables `pname'
12943 and `pnamelen' down where they are used.
12944
12945 * bytecode.c (Fbyte_code): Discard unused computed value to
12946 prevent gcc warning.
12947
12948 * lisp.h (Fplist_member): Add prototype.
12949
129502002-03-18 Kim F. Storm <storm@cua.dk>
12951
12952 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12953 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12954
12955 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12956 Remove explicit GNU_LINUX settings for datagram support.
12957
129582002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12959
12960 * process.c (Fmake_network_process): Remove unused variable `sa'.
12961 Doc fix. Add usage:.
12962 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12963
129642002-03-17 Richard M. Stallman <rms@gnu.org>
12965
12966 * xdisp.c (cursor_type_changed): New variable.
12967 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12968 Clear it when clearing windows_or_buffers_changed.
12969 (try_cursor_movement, redisplay_window, try_window_id)
12970 (try_window_reusing_current_matrix): Test cursor_type_changed
12971 along with windows_or_buffers_changed.
12972
12973 * window.h (cursor_type_changed): New variable.
12974
12975 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12976 not update_mode_lines, and always set it to 1.
12977
12978 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12979 if no frames needed redrawing.
12980
129812002-03-17 Kim F. Storm <storm@cua.dk>
12982
12983 The following changes add support for network server processes,
12984 datagram connections, and local (unix) sockets.
12985
12986 * process.h (struct Lisp_Process): New member log.
12987 Doc fix: Member command used to indicate stopped network process.
12988 Doc fix: Member childp contains plist for network process.
12989 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12990
12991 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12992 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12993 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12994 New variables.
12995 (NETCONN1_P): New macro.
12996 (DATAGRAM_SOCKETS): New conditional symbol.
12997 (datagram_address): New array.
12998 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12999 (status_message): Use concat3.
13000 (Fprocess_status): Add `listen' status to doc string. Return `stop'
13001 for a stopped network process.
13002 (Fset_process_buffer): Update contact plist for network process.
13003 (Fset_process_filter): Ditto. Don't enable input for stopped
13004 network processes. Server must listen, even if filter is t.
13005 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
13006 New functions.
13007 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
13008 (Fprocess_contact): Added KEY argument. Handle datagrams.
13009 (list_processes_1): Optionally show only processes with the query
13010 on exit flag set. Dynamically adjust column widths. Omit tty
13011 column if not needed. Report stopped network processes.
13012 Identify server and datagram network processes.
13013 (Flist_processes): New optional arg `query-only'.
13014 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
13015 (conv_lisp_to_sockaddr, set_socket_options)
13016 (network_process_featurep, unwind_request_sigio): New helper functions.
13017 (Fprocess_datagram_address, Fset_process_datagram_address):
13018 (Fset_network_process_options): New lisp functions.
13019 (Fopen_network_stream): Removed. Now defined in simple.el.
13020 (Fmake_network_process): New lisp function. Code is based on previous
13021 Fopen_network_stream, but heavily reworked with new property list based
13022 argument list, support for datagrams, server processes, and local
13023 sockets in addition to old client-only functionality.
13024 (server_accept_connection): New function.
13025 (wait_reading_process_input): Use it to handle incoming connects.
13026 Do not enable input on a new connection if process is stopped.
13027 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
13028 (send_process): Handle datagram sockets.
13029 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
13030 network process is indicated by setting command field to t .
13031 (Fprocess_send_eof): No-op if datagram connection.
13032 (Fstatus_notify): Don't read input for a stream server socket or a
13033 stopped network process.
13034 (init_process): Initialize datagram_address array.
13035 (syms_of_process): Intern and staticpro new variables, defsubr new
13036 functions.
13037
130382002-03-16 Jason Rumney <jasonr@gnu.org>
13039
13040 * w32fns.c (w32_to_all_x_charsets): Return correct type in
13041 startup case.
13042
130432002-03-16 Richard M. Stallman <rms@gnu.org>
13044
13045 * xdisp.c (redisplay_internal, redisplay_windows):
13046 Use list_of_error to call internal_condition_case_1.
13047 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
13048 so as to catch all errors with no possibility of debugger redisplay.
13049 (list_of_error): New variable.
13050 (syms_of_xdisp): Init and staticpro it.
13051
13052 * print.c (print_object): Delete `\ ' from printed rep of frame.
13053
130542002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
13055
13056 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
13057 until its implementation is fixed.
13058
130592002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13060
13061 * xfns.c (png_load): Remove unused variable `gamma_str'.
13062
130632002-03-14 Richard M. Stallman <rms@gnu.org>
13064
13065 * xfns.c (x_real_positions): Handle failure in XQueryTree.
13066
130672002-03-14 Miles Bader <miles@gnu.org>
13068
13069 * intervals.c (adjust_for_invis_intang): New function.
13070 (set_point_both): Use `adjust_for_invis_intang' to do most of the
13071 work for dealing with invisible+intangible regions. Do so before
13072 and after both forward and backward movements, to handle both
13073 front-sticky and rear-sticky cases.
13074 * textprop.c (text_property_stickiness): Function moved here from
13075 `editfns.c'.
13076 * intervals.h (text_property_stickiness): New declaration.
13077 * editfns.c (char_property_eq): Function removed.
13078 (text_property_stickiness): Function moved to `textprop.c'.
13079
130802002-03-13 Jason Rumney <jasonr@gnu.org>
13081
13082 * config.in: Add STRFTIME_NO_POSIX2.
13083
13084 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
13085 and %OX when underlying strftime does not.
13086
130872002-03-13 Stefan Monnier <monnier@cs.yale.edu>
13088
13089 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
13090 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
13091 line) to avoid annoying flicker.
13092 (xm_scroll_callback): Get rid of the now unnecessary kludge.
13093 (XTread_socket): Mark it static.
13094
13095 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
13096
130972002-03-13 Kim F. Storm <storm@cua.dk>
13098
13099 * puresize.h (BASE_PURESIZE): Increase to 775000.
13100
131012002-03-12 Juanma Barranquero <lektu@terra.es>
13102
13103 * editfns.c (syms_of_editfns): Fix typo.
13104
131052002-03-12 Gerd Moellmann <gerd@gnu.org>
13106
13107 * xsmfns.c: Include stdio.h because termhooks.h needs it.
13108 Include termopt.h for interrupt_input.
13109
131102002-03-11 Andreas Schwab <schwab@suse.de>
13111
13112 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
13113
131142002-03-11 Gerd Moellmann <gerd@gnu.org>
13115
13116 * xterm.c (note_mouse_movement): Put code for
13117 x_autoselect_window_p in #if 0.
13118
13119 * lread.c (Fload): Don't assume that message_with_string uses the
13120 string it is given like a C string.
13121
131222002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13123
13124 * xterm.h (x_session_check_input, x_session_initialize): Declare.
13125
13126 * xterm.c: (XTread_socket): Add call to x_session_check_input and
13127 x_session_have_connection.
13128 (x_initialize): Add call to x_session_initialize.
13129
13130 * termhooks.h (enum event_kind): Add save_session_event.
13131
13132 * keyboard.c: Add Emacs event save_session_event.
13133
13134 * emacs.c (main): Add call to syms_of_xsmfns.
13135
13136 * lisp.h (syms_of_xsmfns): Declare extern.
13137
13138 * config.in: Add HAVE_X_SM.
13139
13140 * Makefile.in (LIBXT): Add -lSM -lICE
13141 if HAVE_X_SM and not USE_X_TOOLKIT.
13142 (XOBJ): New file xsmfns.c added.
13143
13144 * xsmfns.c: New file for X session management.
13145
131462002-03-09 Jason Rumney <jasonr@gnu.org>
13147
13148 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
13149 read-only when setting modified time.
13150
131512002-03-08 Gerd Moellmann <gerd@gnu.org>
13152
13153 * xdisp.c (move_it_vertically_backward): At the end of the function,
13154 when moving forward by lines, treat terminal frames specially.
13155
13156 * keyboard.c (echo_char): Make sure to add a separator between
13157 keys even if echo_dash hasn't been called.
13158
13159 * xdisp.c: Use new string macros.
13160 (update_echo_area): Pass number of bytes to message3 instead of
13161 number of chars.
13162 (set_message_1): Don't access a string's size_byte directly.
13163 (decode_mode_spec_coding): Use number of bytes of eoltype string
13164 instead number of chars.
13165
13166 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
13167
131682002-03-08 Juanma Barranquero <lektu@terra.es>
13169
13170 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
13171 24-bit.
13172
131732002-03-06 Jason Rumney <jasonr@gnu.org>
13174
13175 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
13176
131772002-03-06 Gerd Moellmann <gerd@gnu.org>
13178
13179 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
13180 (cancel_echoing, echo_length, echo_truncate): Changed to
13181 work with new kboard definition.
13182 (echo_now): Use message3_nolog instead of message2_nolog.
13183
13184 * alloc.c (mark_kboards): Mark echo_string.
13185
13186 * keyboard.h (ECHOBUFSIZE): Removed.
13187 (struct kboard): Member echoptr removed, member echobuf renamed
13188 to echo_string.
13189
13190 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
13191 message3 instead of message2 to display the message using STRING's
13192 text properties.
13193
131942002-03-05 Andreas Schwab <schwab@suse.de>
13195
13196 * xdisp.c (hscroll_margin): Change to EMACS_INT.
13197
131982002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
13199
13200 * frame.c (default-frame-alist): Explain that setting it doesn't
13201 affect existing frames.
13202
132032002-03-05 Stefan Monnier <monnier@cs.yale.edu>
13204
13205 * indent.c (skip_invisible): Fix my brain fart.
13206
13207 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
13208
132092002-03-04 Stefan Monnier <monnier@cs.yale.edu>
13210
13211 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
13212 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
13213 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
13214 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
13215 and variables to use EMACS_INT instead of just int.
13216
13217 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
13218
132192002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
13220
13221 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
13222 environment, pass it down with corrected value.
13223
132242002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13225
13226 * lread.c (read_filtered_event): Do not call start_hourglass
13227 before returning.
13228
132292002-03-04 Juanma Barranquero <lektu@terra.es>
13230
13231 * w32term.c (x_display_and_set_cursor): Fix typo.
13232
132332002-03-03 Richard M. Stallman <rms@gnu.org>
13234
13235 * fileio.c (Fmake_temp_name): Doc fix.
13236
132372002-03-03 Gary Wong <gtw@gnu.org>
13238
13239 * termcap.c [!emacs]: Replace ospeed for building standalone
13240 libtermcap, for binary compatibility.
13241
13242 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
13243
132442002-03-03 Richard M. Stallman <rms@gnu.org>
13245
13246 * xrdb.c (file_p): Rename arg `path' to `filename'.
13247
13248 * abbrev.c (Fexpand_abbrev): Increment plist as use count
13249 only if it is an integer.
13250
13251 * xfns.c (png_load): Set screen_gamma based on f->gamma.
13252 If png_get_sRGB gives an answer, call png_set_gamma
13253 using the default image gamma value.
13254
13255 * lread.c (read1): When reading from a file, default string to
13256 multibyte only if it has some multibyte characters.
13257
13258 * print.c (print_object): Output multibyte chars 128...255
13259 using \x even if ! print_escape_multibyte.
13260
13261 * xdisp.c (display_mode_element): Move the places where
13262 bytepos, charpos, this, and lisp_string are set.
13263 Use lisp_string to set bytepos.
13264
13265 * xdisp.c (redisplay_internal):
13266 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
13267
13268 * xdisp.c (display_mode_element): Merge properties specified with
13269 :propertize onto those that come with the string.
13270
132712002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
13272
13273 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
13274 automatic-hscrolling. Users changed.
13275 <hscroll-margin>: Renamed from automatic-hscroll-margin.
13276 Users changed.
13277 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
13278
132792002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
13280
13281 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
13282
132832002-03-02 Kim F. Storm <storm@cua.dk>
13284
13285 * window.c (Fminibuffer_selected_window): New function.
13286 (syms_of_window): Defsubr it.
13287
132882002-03-01 Kim F. Storm <storm@cua.dk>
13289
13290 * window.h (struct window): New member phys_cursor_width.
13291
13292 * window.c (make_window, replace_window): Init phys_cursor_width.
13293
13294 * xterm.c (x_display_and_set_cursor): Blink box cursor using
13295 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13296
13297 * w32term.c (x_display_and_set_cursor): Blink box cursor using
13298 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13299
13300 * lisp.h (GCPRO6): New macro.
13301
13302 * process.c (Fopen_network_stream): Use GCPRO6.
13303
133042002-03-01 Kim F. Storm <storm@cua.dk>
13305
13306 * process.c (Qconnect, Qfailed): New variables.
13307 (syms_of_process): Intern and staticpro them.
13308 (Fprocess_status): Document connect and failed return values.
13309 [NON_BLOCKING_CONNECT]: New conditional.
13310 (connect_wait_mask, num_pending_connects): New variables.
13311 (status_message): Convert Qfailed status.
13312 (Fopen_network_stream): Added support for non-blocking connect.
13313 New optional args: filter, sentinel, non_blocking. Doc updated.
13314 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
13315 (deactivate_process): Handle pending non-blocking connect.
13316 (wait_reading_process_input): Poll for status of non-blocking
13317 connects. Exec sentinel directly when connect succeeds.
13318 (status_notify): Don't read process output if not yet connected.
13319
133202002-02-28 Kim F. Storm <storm@cua.dk>
13321
13322 * window.c: (minibuf_selected_window): Renamed from
13323 Vminibuf_selected_window. Users changed.
13324 (syms_of_window): Staticpro it.
13325
133262002-02-26 Kim F. Storm <storm@cua.dk>
13327
13328 The following changes add a new Vminibuf_selected_window variable
13329 which is similar to Vminibuf_scroll_window, but which is only set
13330 on entry to the minibuffer (from a non-minibuffer window):
13331
13332 * window.c: (Vminibuf_selected_window): New variable.
13333 (struct save_window_data): New member minibuf_selected_window.
13334 (Fset_window_configuration): Restore Vminibuf_selected_window.
13335 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
13336 Set minibuf_scroll_window member to nil if minibuf_level is 0.
13337 (compare_window_configurations): Compare minibuf_selected_window.
13338
13339 * window.h: (Vminibuf_selected_window): Declare extern.
13340
13341 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
13342 entry to minibuffer or on entry from a non-minibuffer window.
13343
13344 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
13345 Vminibuf_selected_window instead of Vminibuf_scroll_window.
13346
13347 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
13348 instead of Vminibuf_scroll_window when deciding in which window
13349 the region should be highlighted. Consequently, the region remains
13350 highlighteded even when a completion buffer is also displayed.
13351
133522002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
13353
13354 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
13355
13356 * xselect.c (Qcompound_text_with_extensions): Renamed from
13357 Qcompound_text_no_extensions.
13358 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
13359
133602002-02-26 Juanma Barranquero <lektu@terra.es>
13361
13362 * w32proc.c (syms_of_ntproc): Doc fix.
13363
133642002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13365
13366 * intervals.h: Include "dispextern.h" unconditionally.
13367
133682002-02-24 Jason Rumney <jasonr@gnu.org>
13369
13370 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
13371 and disp-table.elc.
13372 (lisp): Add emacs-lisp/backquote.elc.
13373
133742002-02-24 Kim F. Storm <storm@cua.dk>
13375
13376 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
13377 The validation of the event type was too strict as it didn't
13378 allow string events; buffer names are used in bindings for
13379 menu-bar-select-buffer (see `menu-bar-update-buffers').
13380
133812002-02-23 Kim F. Storm <storm@cua.dk>
13382
13383 The following changes rework my patch of 2002-02-06 which
13384 added command remapping by entering the commands directly into
13385 the keymaps. Now, command remapping uses an explicit `remap'
13386 prefix in the keymaps, i.e. [remap COMMAND].
13387
13388 * keymap.c (Qremap, remap_command_vector): New variables.
13389 (is_command_symbol): Removed function.
13390 (Fdefine_key): No longer accept a symbol for KEY.
13391 Added validation of [remap COMMAND] argument for KEY.
13392 The DEF is no longer required to be a symbol when remapping a command.
13393 (Fremap_command): New function to remap command through keymaps.
13394 (Flookup_key): Perform command remapping initiated by
13395 Fremap_command directly for speed.
13396 (Fkey_binding): Use Fremap_command for command remapping.
13397 (where_is_internal): Handle new command remapping representation.
13398 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
13399 staticpro them. Defsubr Fremap_command.
13400
13401 * keymap.h (Fremap_command): Declare extern.
13402 (is_command_symbol): Remove extern.
13403
13404 * keyboard.c (command_loop_1): Use Fremap_command for command
13405 remapping; now try command remapping for all symbols.
13406
134072002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13408
13409 * coding.h (run_pre_post_conversion_on_str): Add prototype.
13410
134112002-02-23 Jason Rumney <jasonr@gnu.org>
13412
13413 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
13414 on the string before encoding it.
13415 (Fw32_get_clipboard_data): Run post-read-conversion on the string
13416 after decoding it.
13417
13418 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
13419
134202002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13421
13422 * w32term.c (enter_timestamp): Remove unused static variable to
13423 prevent warning.
13424
13425 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
13426
134272002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13428
13429 * w16select.c (Fw16_get_clipboard_data): Fix last change.
13430
13431 * xselect.c (selection_data_to_lisp_data): Fix last change.
13432
134332002-02-22 Jason Rumney <jasonr@gnu.org>
13434
13435 * w32term.h (struct w32_output): New member menu_command_in_progress.
13436
13437 * w32menu.c (menubar_selection_callback): Free the menu and
13438 clear the menu_command_in_progress flag.
13439
13440 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
13441 (menu_free_timer): New variable.
13442 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
13443 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
13444 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
13445 menu command is in progress.
13446 <WM_COMMAND>: Set the menu_command_in_progress flag.
13447 Kill any menu_free_timer that is running.
13448
13449 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
13450 Call ExtTextOutA rather than ExtTextOut.
13451
134522002-02-22 Eli Zaretskii <eliz@gnu.org>
13453
13454 * puresize.h (BASE_PURESIZE): Increase to 755000.
13455
134562002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13457
13458 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
13459 on the string before encoding it.
13460 (Fw16_get_clipboard_data): Run post-read-conversion on the string
13461 after decoding it.
13462
134632002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13464
13465 Support for ICCCM Extended Segments in X selections:
13466
13467 * xselect.c <Qcompound_text_no_extensions>: New variable.
13468 (syms_of_xselect): Intern and staticpro it.
13469 (selection_data_to_lisp_data): Run post-read-conversion on decoded
13470 selection text.
13471 (lisp_data_to_selection_data): If next-selection-coding-system is
13472 compound-text-no-extensions, set the type of selection to be
13473 compound-text.
13474
13475 * xterm.h (x_encode_text): Update prototype.
13476
13477 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
13478 callers changed. If SELECTIONP is non-zero, run the
13479 pre-write-conversion function before encoding the selection text.
13480
134812002-02-21 Kim F. Storm <storm@cua.dk>
13482
13483 * frame.c (syms_of_frame): Change mouse-highlight default to t.
13484
13485 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
13486 Correct composing of language-change event.
13487
134882002-02-20 Kim F. Storm <storm@cua.dk>
13489
13490 * keyboard.c (menu_bar_items): Don't include keymap or local-map
13491 bindings at PT when building menu (the menu is not updated often
13492 enough for this to work reliable).
13493 (tool_bar_items): Likewise.
13494 (current_active_maps): Removed unused (and buggy) function.
13495
134962002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13497
13498 * xfns.c (gif_load): Use correct width and height for GIF images.
13499
135002002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
13501
13502 * floatfns.c (Fatan): Accept an optional second arg and call
13503 atan2 if passed 2 args.
13504
135052002-02-18 Jason Rumney <jasonr@gnu.org>
13506
13507 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
13508
135092002-02-17 Jason Rumney <jasonr@gnu.org>
13510
13511 * w32term.c (x_autoselect_window_p): New variable.
13512 (syms_of_w32term): DEFVAR_BOOL and initialize it.
13513 (note_mouse_movement): Use it.
13514
13515 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
13516
13517 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
13518
13519 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13520 New variables.
13521 (syms_of_w32fns): Intern and staticpro them.
13522 (x_frame_parms) <"fullscreen">: New parameter.
13523 (x_fullscreen_move, x_set_fullscreen): New functions.
13524 (x_set_frame_parameters): Support Qfullscreen.
13525 (x_real_positions): Save x/y_pixels_diff frame params.
13526 (x_figure_window_size): Support full-screen frames.
13527 (Fx_create_frame): Default the fullscreen parameter.
13528
13529 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
13530 (x_fullscreen_adjust): New functions.
13531 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
13532 fullscreen. Call x_check_fullscreen_move, and set the
13533 want_fullscreen member of output_data.w32
13534 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
13535
13536 * w32term.h: New enum for FULLSCREEN_* constants.
13537 (struct w32_output): New members want_fullscreen, x_pixels_diff,
13538 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
13539 (x-fullscreen-adjust): New prototype.
13540
135412002-02-17 Kim F. Storm <storm@cua.dk>
13542
13543 * frame.c: (Vmouse_highlight): New variable.
13544 (syms_of_frame): DEFVAR_LISP it.
13545
13546 * frame.h: (Vmouse_highlight): Declare extern.
13547
13548 * xterm.h (struct x_display_info): Add mouse_face_hidden.
13549
13550 * xterm.c (disable_mouse_highlight): Removed variable.
13551 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13552 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13553 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
13554 and on after keyboard input.
13555 (x_term_init): Initialize mouse_face_hidden.
13556
13557 * msdos.h (struct display_info): Add mouse_face_hidden.
13558
13559 * msdos.c (disable_mouse_highlight): Removed variable.
13560 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13561 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13562 (internal_terminal_init): Initialize mouse_face_hidden.
13563 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
13564 and on after keyboard input.
13565
13566 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
13567
13568 * w32term.c (disable_mouse_highlight): Removed variable.
13569 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
13570 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13571 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
13572 and on after keyboard input.
13573 (w32_initialize_display_info): Initialize mouse_face_hidden.
13574
135752002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
13576
13577 * msdos.c (last_mouse_window): New variable.
13578 (dos_rawgetc): Fix last change--if the mouse is in the same window
13579 as recorded in last_mouse_window, don't select this window.
13580
13581 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
13582
13583 * msdos.c (x_autoselect_window_p): New variable.
13584 (syms_of_msdos): Defvar it.
13585 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
13586 which the last mouse movement occured, unless it is already selected.
13587
13588 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
13589 New variables.
13590 (syms_of_xdisp): DEVFAR them.
13591 (hscroll_window_tree): Use automatic_hscroll_margin and
13592 Vautomatic_hscroll_step to compute the amount of window scrolling.
13593
135942002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13595
13596 * xterm.c (x-autoselect-window): New variable.
13597 (note_mouse_movement): Use it.
13598
13599 * keyboard.c: Do not include "systime.h" twice.
13600
136012002-02-15 Andreas Schwab <schwab@suse.de>
13602
13603 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
13604
13605 * alloc.c (NSTATICS): Increase to 1280.
13606
136072002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
13608
13609 * alloc.c (NSTATICS): Bump to 1026.
13610
13611 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
13612 (Vx_super_keysym): New variables.
13613 (syms_of_xterm): DEFVAR_LISP them.
13614 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
13615 variables to determine which keys to use for the various modifiers.
13616
136172002-02-13 Kim F. Storm <storm@cua.dk>
13618
13619 * window.c: (Vmode_line_in_non_selected_windows): Removed.
13620 (mode_line_in_non_selected_windows): New variable.
13621 (syms_of_window): DEFVAR_BOOL it.
13622
13623 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
13624 Use mode_line_in_non_selected_windows.
13625 (mode_line_in_non_selected_windows): Declare extern.
13626 (Vmode_line_in_non_selected_windows): Removed extern.
13627
136282002-02-13 Richard M. Stallman <rms@gnu.org>
13629
13630 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
13631 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
13632 (Fclear_this_command_keys): Doc fixes.
13633
13634 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
13635 (update_face_from_frame_parameter): Increment face_change_count
13636 and windows_or_buffers_changed to force redisplay using changed faces.
13637
13638 * xdisp.c (QCpropertize): New variable.
13639 (mode_line_proptrans_alist): New variable.
13640 (display_mode_element): New arg PROPS; all calls changed.
13641 Implement this, for strings.
13642 Handle literal output of strings by sharing the
13643 main-line code for strings, using local var `literal'.
13644 Handle :propertize feature.
13645 (syms_of_xdisp): Initialze and staticpro QCpropertize and
13646 mode_line_proptrans_alist.
13647
136482002-02-11 Kim F. Storm <storm@cua.dk>
13649
13650 * window.c: (Vmode_line_in_non_selected_windows): New variable.
13651 (syms_of_window): DEFVAR_LISP it.
13652
13653 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
13654 (CURRENT_MODE_LINE_FACE_ID): Use it.
13655 (Vmode_line_in_non_selected_windows): Declare extern.
13656
13657 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
13658 to get mode line face.
13659
136602002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
13661
13662 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
13663 variables; cus-start.el doesn't need them anymore.
13664
136652002-02-09 Kim F. Storm <storm@cua.dk>
13666
13667 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
13668 reduction. This fixes a display problem where stray newlines were
13669 inserted in the window (corrected by C-l). Clarified code (IMHO).
13670
136712002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
13672
13673 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
13674
13675 * xdisp.c (display_mode_lines): Fix last change.
13676
136772002-02-09 Jason Rumney <jasonr@gnu.org>
13678
13679 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
13680 match each other.
13681 (w32_load_system_font): Prevent Cleartype fonts from loading.
13682 (Fx_show_tip): Ensure tip frames are above other topmost windows.
13683
136842002-02-09 Kim F. Storm <storm@cua.dk>
13685
13686 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
13687 (CURRENT_MODE_LINE_HEIGHT): Use it.
13688 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
13689
13690 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
13691 (pos_visible_p, handle_face_prop): Likewise.
13692 (display_mode_lines): Likewise, but for the real selected window.
13693 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
13694
13695 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
13696 in non-selected windows.
13697 (realize_basic_faces): Realize it.
13698 (syms_of_term): Intern and staticpro it.
13699
137002002-02-08 Kim F. Storm <storm@cua.dk>
13701
13702 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
13703 Changed mail addresses to emacs-devel@gnu.org.
13704
137052002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
13706
13707 * fileio.c (Fsubstitute_in_file_name): If the file name includes
13708 ~user, and there's no such user, don't discard everything before ~user.
13709
13710 * floatfns.c (Fround): Doc fix.
13711
137122002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13713
13714 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
13715
137162002-02-07 Stefan Monnier <monnier@cs.yale.edu>
13717
13718 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
13719
137202002-02-07 Kim F. Storm <storm@cua.dk>
13721
13722 * keymap.c (where_is_internal): Only check whether definition is
13723 remapped if it fulfills is_command_symbol.
13724
137252002-02-07 Andreas Schwab <schwab@suse.de>
13726
13727 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
13728
13729 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
13730
137312002-02-06 Kim F. Storm <storm@cua.dk>
13732
13733 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
13734 defining command remapping. Doc updated.
13735 (Flookup_key): Remap command through keymap if KEY is a symbol.
13736 (is_command_symbol): New function.
13737 (Fkey_binding): Use it. New optional argument NO-REMAP.
13738 Doc updated. Callers changed. Perform command remapping via
13739 recursive call unless that arg is non-nil.
13740 (where_is_internal): New argument no_remap. Callers changed.
13741 Call recursively to find original key bindings for a remapped
13742 comand unless that arg is non-nil.
13743 (Fwhere_is_internal): New optional argument NO-REMAP.
13744 Doc updated. Callers changed. Pass arg to where_is_internal.
13745
13746 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
13747 (is_command_symbol): Added prototype.
13748
13749 * keyboard.c (Vthis_original_command): New variable.
13750 (syms_of_keyboard): DEFVAR_LISP it.
13751 (command_loop_1): Set it, and perform command remapping.
13752
137532002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13754
13755 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
13756
137572002-02-06 Jason Rumney <jasonr@gnu.org>
13758
13759 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
13760
137612002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
13762
13763 * charset.c (get_charset_id): Use if-else instead of ?:.
13764
137652002-02-06 Richard M. Stallman <rms@gnu.org>
13766
13767 * filelock.c (S_ISLNK): Define if not defined.
13768
137692002-02-03 Richard M. Stallman <rms@gnu.org>
13770
13771 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
13772
13773 * lread.c (read1): Redesign strategy for force_multibyte and
13774 force_singlebyte. Now is_multibyte records whether read_buffer
13775 is multibyte. Encountering any multibyte character makes it so.
13776
137772002-02-02 Stefan Monnier <monnier@cs.yale.edu>
13778
13779 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
13780 with the same sequence, map that sequence to f10 rather than f0.
13781
137822002-02-03 Andreas Schwab <schwab@suse.de>
13783
13784 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
13785 latter never being defined on GNU/Linux.
13786
137872002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
13788
13789 * xfaces.c (realize_default_face): Don't set the weight and slant of
13790 the default face to Qnormal, unless these attributes are unspecified.
13791
137922002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13793
13794 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
13795 Call cancel_hourglass unconditionally.
13796
13797 * eval.c (Fsignal): Remove duplicated declaration of
13798 the variable `display_hourglass_p'.
13799
138002002-01-31 Richard M. Stallman <rms@gnu.org>
13801
13802 * editfns.c (region_limit): Nicer error message.
13803
13804 * coding.c (decode_composition_emacs_mule):
13805 Give up if NCOMPONENT gets too large to index `component'.
13806
13807 * callint.c (check_mark): New arg to specify clearer error message.
13808 Callers changed.
13809
138102002-01-27 Richard M. Stallman <rms@gnu.org>
13811
13812 * minibuf.c (Fcompleting_read): Doc fix.
13813
138142002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13815
13816 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13817 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13818 Fix doc-strings.
13819
138202002-01-26 Richard M. Stallman <rms@gnu.org>
13821
13822 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
13823
13824 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13825 and scroll_up_aggressively.
13826
138272002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13828
13829 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
13830
138312002-01-25 Stefan Monnier <monnier@cs.yale.edu>
13832
13833 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13834 (Fprevious_property_change, Fprevious_single_property_change):
13835 Stay within the narrowed-buffer boundaries.
13836
138372002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
13838
13839 * term.c (Ftty_display_color_cells): New function.
13840 (syms_of_term): Defsubr it.
13841 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13842 argument name to DISPLAY. Doc fix.
13843
13844 * dispextern.h: Add prototype for set_tty_color_mode and
13845 tty_setup_colors.
13846
138472002-01-24 Jason Rumney <jasonr@gnu.org>
13848
13849 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13850 If region left to draw is not what was expected, mark the frame as
13851 garbaged.
13852
13853 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13854 Combine the regions returned by BeginPaint and GetUpdateRect.
13855
138562002-01-23 Jason Rumney <jasonr@gnu.org>
13857
13858 * w32term.c (x_update_window_begin): Only hide caret if
13859 w32_use_visible_system_caret is set.
13860 (x_update_window_end): Only show caret if
13861 w32_use_visible_system_caret is set.
13862 (syms_of_w32term): Handle SystemParametersInfo call failing.
13863
13864 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
13865
138662002-01-22 Richard M. Stallman <rms@gnu.org>
13867
13868 * unexelf.c (unexec): Define n so as to cause compilation error
13869 for the code where people have often written n instead of nn.
13870
13871 * .gdbinit (hookpost-run): Defined.
13872
138732002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13874
13875 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
13876
138772002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13878
13879 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13880 if fullscreen is being set.
13881
138822002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13883
13884 * minibuf.c (Fminibuffer_contents)
13885 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13886 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
13887
138882002-01-21 Richard M. Stallman <rms@gnu.org>
13889
13890 * window.c (check_frame_size): Fix minimum height calculation.
13891
138922002-01-20 Ken Raeburn <raeburn@gnu.org>
13893
13894 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13895 height before comparison.
13896 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
13897
138982002-01-20 Jason Rumney <jasonr@gnu.org>
13899
13900 * w32term.c (w32_system_caret_width): Remove.
13901 (w32_use_visible_system_caret): New user flag.
13902 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13903 Windows reports a screen reader running.
13904 (x_update_window_begin): Hide the system caret.
13905 (x_update_window_end): Show the system caret.
13906 (x_display_and_set_cursor): Don't draw a cursor when
13907 w32_use_visible_system_caret is set. Do not adjust width.
13908
13909 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13910 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13911 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13912 the user requests it. Use system default width when creating.
13913 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
13914
13915 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13916 New window messages.
13917
139182002-01-20 Richard M. Stallman <rms@gnu.org>
13919
13920 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
13921
139222002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13923
13924 * doprnt.c (doprnt1): Fix typos in error call.
13925
139262002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
13927
13928 * unexelf.c (unexec) [__sgi]: Support the .got sections.
13929
139302002-01-20 Jason Rumney <jasonr@gnu.org>
13931
13932 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13933 that Windows returns. If a double check fails, try to guess how
13934 ExtTextOut is going to act.
13935
13936 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13937 in place of stricmp.
13938 (w32_list_synthesized_fonts): Removed.
13939 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13940 (struct enumfont_t): New element; list.
13941 (enum_font_cb2): List all style and charset variations of a font.
13942 (Fw32_select_font): New optional argument; include_proportional.
13943 Exclude vertical fonts. Exclude proportional fonts unless
13944 include_proportional is non-nil.
13945 (w32_enable_synthesized_fonts): Change to a boolean.
13946 (Fw32_send_sys_command): Doc fix.
13947
139482002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13949
13950 * dispnew.c (update_frame): Move the variable `tem' to the block
13951 where it is used.
13952
139532002-01-19 Jason Rumney <jasonr@gnu.org>
13954
13955 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13956 call to face-set-after-frame-default.
13957
139582002-01-18 Richard M. Stallman <rms@gnu.org>
13959
13960 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13961 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
13962
139632002-01-17 Richard M. Stallman <rms@gnu.org>
13964
13965 * window.c (enlarge_window): When exceeding size of parent,
13966 directly delete all the siblings instead of trying to resize it.
13967
139682002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13969
13970 * term.c (set_tty_color_mode): Remove unused variable `tem'.
13971
139722002-01-16 Henrik Enberg <henrik@enberg.org>
13973
13974 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
13975
139762002-01-16 Kim F. Storm <storm@cua.dk>
13977
13978 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13979 is invisible. This can happen if cursor is on top line of a
13980 window, and we switch to a buffer with a header line.
13981
13982 * w32term.c (x_erase_phys_cursor): Ditto.
13983
139842002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13985
13986 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13987 `dont_resize' only when used.
13988
13989 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
13990
139912002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
13992
13993 * xdisp.c (display_mode_element): When computing charpos, depend
13994 on multibyteness of elt, not the text in field.
13995
139962002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13997
13998 * buffer.c (Fkill_all_local_variables):
13999 Increment `update_mode_lines' only once.
14000
140012002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14002
14003 * lisp.h (adjust_after_replace_noundo)
14004 (Fupdate_coding_systems_internal): Add prototypes.
14005
14006 * sound.c (Fplay_sound): Initialize header_size also for :data case.
14007
140082002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
14009
14010 Support for the --color command-line argument and tty-color-mode
14011 frame parameter:
14012
14013 * term.c (tty_default_color_capabilities, tty_setup_colors)
14014 (set_tty_color_mode): New functions.
14015 (term_init): Call tty_default_color_capabilities.
14016 (Qtty_color_mode_alist): New variable.
14017 (syms_of_term): Intern and staticpro it.
14018
14019 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
14020 frames.
14021 (do_switch_frame): For termcap frames, switch the tty
14022 color mode as specified by the frame's parameters.
14023 (Qtty_color_mode): New variable.
14024 (syms_of_frame): Intern and staticpro it.
14025
14026 * emacs.c (USAGE2): Add the --color option.
14027 (standard_args): Ditto.
14028
140292002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14030
14031 * xterm.h (struct x_output): New members want_fullscreen,
14032 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
14033 y_pixels_outer_diff.
14034 New enum for FULLSCREEN_* constants.
14035 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
14036 is NULL.
14037 (x_fullscreen_adjust): Add prototype.
14038
14039 * emacs.c (USAGE2): Add the new full-screen arguments.
14040 (standard_args): Ditto.
14041
14042 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
14043 New variables.
14044 (syms_of_xfns): Intern and staticpro them.
14045 (x_frame_parms) <"fullscreen">: New parameter.
14046 (x_fullscreen_move, x_set_fullscreen): New functions.
14047 (x_set_frame_parameters): Support for Qfullscreen.
14048 (x_real_positions): More accurate computation of the frame position.
14049 (x_figure_window_size): Support full-screen frames.
14050 (Fx_create_frame): Default the fullscreen parameter.
14051
14052 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
14053 (XTread_socket) <Expose>: Call x_check_fullscreen.
14054 <ConfigureNotify>: Don't resize to fullscreen.
14055 Call x_check_fullscreen_move, and set the want_fullscreen member of
14056 output_data.x.
14057
140582002-01-13 Jason Rumney <jasonr@gnu.org>
14059
14060 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
14061 for mice with more than 3 buttons.
14062
14063 * w32term.c (parse_button): New parameter xbutton. Callers changed.
14064 (w32_read_socket): Handle new "XBUTTON" messages.
14065
14066 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
14067 (syms_of_w32fns): DEFVAR_BOOL it.
14068 (w32_wnd_proc): Handle new "XBUTTON" messages.
14069
140702002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14071
14072 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
14073
140742002-01-13 Andreas Schwab <schwab@suse.de>
14075
14076 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
14077
140782002-01-12 Andreas Schwab <schwab@suse.de>
14079
14080 * .gdbinit (xbuffer): Remove address operator since data is now a
14081 pointer.
14082
140832002-01-11 Richard M. Stallman <rms@gnu.org>
14084
14085 * insdel.c (adjust_after_replace_noundo): New function.
14086
14087 * coding.c (code_convert_region): Don't copy old text if undo disabled.
14088
140892002-01-09 Jason Rumney <jasonr@gnu.org>
14090
14091 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
14092 when checking for multiple frames.
14093
140942002-01-08 Richard M. Stallman <rms@gnu.org>
14095
14096 * window.c (delete_window): Rewrite the code for changing the
14097 selected window to handle the case where WINDOW is not a leaf.
14098
140992002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
14100
14101 * process.c (send_process): Set src_multibyte to 1 after the call
14102 top setup_coding_system, not before the call.
14103
141042002-01-07 Jason Rumney <jasonr@gnu.org>
14105
14106 * xmenu.c (set_frame_menubar, xmenu_show):
14107 (xdialog_show): Initialize wv->help to Qnil.
14108
14109 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
14110 (w32_dialog_show): Initialize wv->help to Qnil.
14111
141122002-01-06 Jason Rumney <jasonr@gnu.org>
14113
14114 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
14115
14116 * w32menu.c (w32_menu_display_help): Revert last change.
14117
14118 * xmenu.c (menu_highlight_callback): Revert last change.
14119
141202002-01-06 Andreas Schwab <schwab@suse.de>
14121
14122 * insdel.c (make_gap_larger): Make sure buffer size does not
14123 overflow range of int.
14124
141252002-01-05 Jason Rumney <jasonr@gnu.org>
14126
14127 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14128 OVERLAPS_P.
14129
14130 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
14131
14132 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
14133 to the left or to the right of the pointer, put it against
14134 the left screen edge.
14135 (x_frame_parms): Add missing braces around initializer.
14136
14137 * w32term.c (x_setup_relief_colors): Don't compute an image's
14138 background color if it doesn't have a Pixmap.
14139 (notice_overwritten_cursor): Don't depend on
14140 output_cursor and updated_area. Compare pixel coordinates with
14141 window's cursor pixel coordinates.
14142 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
14143 Call notice_overwritten_cursor with new arg list.
14144 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
14145 unconditionally.
14146 (x_draw_image_relief): Use predefined macro instead of
14147 constant when the value of `tool_bar_button_relief' is negative.
14148
14149 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
14150
141512002-01-04 Richard M. Stallman <rms@gnu.org>
14152
14153 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
14154
141552002-01-03 Richard M. Stallman <rms@gnu.org>
14156
14157 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
14158 (Fkey_binding): Try the `keymap' property map first.
14159 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
14160 minor mode bindings.
14161
141622002-01-03 Kim F. Storm <storm@cua.dk>
14163
14164 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
14165
141662002-01-02 Richard M. Stallman <rms@gnu.org>
14167
14168 * keyboard.c (read_key_sequence): Handle the keymap property
14169 before minor mode maps.
14170
14171 * editfns.c (Fformat): Update thissize from field_width
14172 based on the actual width, in the string case.
14173
141742002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14175
14176 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
14177 when used as truth value to prevent gcc warnings.
14178
14179 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
14180 * w32proc.c: Include <config.h>.
14181
141822002-01-01 Andreas Schwab <schwab@suse.de>
14183
14184 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
14185 not EMACS_INT, to make them compatible with DEFVAR_INT.
14186 * lisp.h (max_specpdl_size): Adjust declaration.
14187
141882002-01-01 Richard M. Stallman <rms@gnu.org>
14189
14190 * print.c (print_object): Test print_escape_nonascii only for
14191 unibyte strings.
14192 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
14193 when outputting to a multibyte buffer.
14194
141952001-12-29 Richard M. Stallman <rms@gnu.org>
14196
14197 * print.c (print_object): In multibyte string, use hex escapes.
14198 Use octal only for unibyte strings.
14199 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
14200
14201 * lread.c (read_escape): New arg BYTEREP for reporting whether
14202 escape forces unibyte or multibyte.
14203 (read1): When reading a string, take note of that info.
14204
142052001-12-29 Ken Raeburn <raeburn@gnu.org>
14206
14207 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
14208 comparison to test lisp value returned by Fget.
14209
142102001-12-29 Richard M. Stallman <rms@gnu.org>
14211
14212 * lisp.h (max_specpdl_size): Add declaration.
14213
14214 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
14215
14216 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
14217 Handle modifier bits. Correct typo in error message.
14218
142192001-12-28 Richard M. Stallman <rms@gnu.org>
14220
14221 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
14222 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
14223 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
14224 Update calls to Fdefine_abbrev.
14225 (write_abbrev): Update for changed data format.
14226 Don't list "system" abbrevs.
14227 (Fexpand_abbrev): Update use count with new data format.
14228 (describe_abbrev): Update for changed data format.
14229 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
14230
14231 * config.in (HAVE_MBSINIT): Add #undef.
14232
14233 * strftime.c (mbsinit): Define as no-op if not available.
14234
14235 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
14236 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
14237
14238 * keymap.c (Flookup_key): Error message if key has wrong data type.
14239 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
14240 (exclude_key): New variable.
14241
142422001-12-28 Gerd Moellmann <gerd@gnu.org>
14243
14244 * xterm.c (x_setup_relief_colors): Don't compute an image's
14245 background color if it doesn't have a Pixmap.
14246
14247 * xterm.c (notice_overwritten_cursor): Don't depend on
14248 output_cursor and updated_area. Compare pixel coordinates with
14249 window's cursor pixel coordinates.
14250 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
14251 Call notice_overwritten_cursor with new arg list.
14252 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
14253 unconditionally.
14254
14255 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
14256 height of the cursor line to the amount to scroll.
14257
142582001-12-27 Richard M. Stallman <rms@gnu.org>
14259
14260 * intervals.c (set_point_both): The position after an invisible,
14261 intangible character is not an acceptable stopping point.
14262
142632001-12-27 Ken Raeburn <raeburn@gnu.org>
14264
14265 * window.c (enlarge_window): In new preserve_before code, convert
14266 CURBEG from lisp object to integer before doing arithmetic.
14267
142682001-12-27 Richard M. Stallman <rms@gnu.org>
14269
14270 * bytecode.c (Fbyte_code): Undo previous change.
14271
142722001-12-26 Kim F. Storm <storm@cua.dk>
14273
14274 * keyboard.c (record_char): Ignore duplicate help-echo events only
14275 separated by mouse-movement. When tracking mouse, only record
14276 first and last mouse-movement event in same window.
14277 Don't record mouse-movement events in keyboard macros.
14278
142792001-12-25 Richard M. Stallman <rms@gnu.org>
14280
14281 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
14282 (Fenlarge_window): New arg PRESERVE_BEFORE.
14283
14284 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
14285 instead of Fstring_as_unibyte.
14286
142872001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14288
14289 The following changes remove mocklisp support:
14290
14291 * mocklisp.h, mocklisp.c: Files removed.
14292
14293 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
14294 `Qmocklisp' and `Qmocklisp_arguments'.
14295 Remove prototype of syms_of_mocklisp.
14296
14297 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
14298
14299 * callint.c: Do not include mocklisp.h.
14300 (Fcall_interactively): Do not test for mocklisp case.
14301
14302 * eval.c: Remove variables `Qmocklisp_arguments',
14303 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
14304 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
14305 Do not test for mocklisp case.
14306 (Fwhile): Remove unused variable `tem'.
14307 (syms_of_eval): Remove variable `moclisp-arguments'.
14308
14309 * data.c (wrong_type_argument): Remove mocklisp case.
14310
14311 * doc.c (Fdocumentation): Remove mocklisp case.
14312
14313 * emacs.c (main): Do not call syms_of_mocklisp.
14314
143152001-12-21 Richard M. Stallman <rms@gnu.org>
14316
14317 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
14318 to the left or to the right of the pointer, put it against
14319 the left screen edge.
14320
143212001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
14322
14323 * Makefile.in (distclean): Remove .gdbinit if we are building
14324 outside the source tree.
14325
143262001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
14327
14328 * w32.c (emacs_root_dir): New function.
14329
14330 * msdos.c (emacs_root_dir): New function.
14331
14332 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
14333 of the current drive as the fallback for default_directory.
14334
14335 * dired.c (file_name_completion): Run the elements of
14336 completion-ignored-extensions through ENCODE_FILE.
14337
14338 * lisp.h (scmp): Remove prototype, since it's now a static
14339 function private to dired.c.
14340
143412001-12-18 Richard M. Stallman <rms@gnu.org>
14342
14343 * dired.c (scmp): Function moved from minibuf.c.
14344 Delete multibyte handling--used only on encoded strings.
14345
14346 * minibuf.c (scmp): Function moved to dired.c.
14347
14348 * fns.c (merge): Add QUIT call.
14349
143502001-12-18 Dave Love <fx@gnu.org>
14351
14352 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
14353 language/georgian.el.
14354
143552001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
14356
14357 * Makefile.in (lisp, shortlisp): Synchronize with changes to
14358 lisp/Makefile.in:DONTCOMPILE.
14359
143602001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14361
14362 * xdisp.c (window_box_height): Do not return negative values.
14363 From Gerd Moellmann <gerd@gnu.org>.
14364
14365 * keyboard.c (head_table): Add missing braces around initializer.
14366
14367 * term.c (keys): Likewise.
14368
14369 * xfns.c (x_frame_parms, visual_classes): Likewise.
14370
143712001-12-17 Sam Steingold <sds@gnu.org>
14372
14373 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
14374 patch (COMPOSING_P, not COMPOSING).
14375
143762001-12-17 Richard M. Stallman <rms@gnu.org>
14377
14378 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
14379
14380 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
14381 before calling decode_coding.
14382
14383 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
14384
14385 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
14386 instead of only for COMPOSITION_DISABLED.
14387
143882001-12-16 Richard M. Stallman <rms@gnu.org>
14389
14390 * alloc.c (pure_alloc): After overflow, allocate just a small block.
14391
14392 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
14393
14394 * buffer.h (struct buffer): New field `display_error_modiff'.
14395 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
14396
14397 * window.c (Frecenter): Clear display_error_modiff field.
14398
14399 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
14400 Call redisplay_window, but not if display_error_modiff field says no.
14401 (redisplay_window_error): New function.
14402 (displayed_buffer): New variable.
14403 (redisplay_internal, redisplay_windows): Call the new functions
14404 instead of redisplay_window directly.
14405
144062001-12-15 Richard M. Stallman <rms@gnu.org>
14407
14408 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
14409
144102001-12-14 Andrew Innes <andrewi@gnu.org>
14411
14412 * makefile.w32-in (EMACSLOADPATH): Define.
14413 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
14414 (bootstrap-temacs): Remove dependency on bootstrap-clean.
14415
144162001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
14417
14418 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
14419 parameter have a numeric value all the time.
14420
14421 * w32fns.c (x_report_frame_params): Likewise.
14422
144232001-12-12 Richard M. Stallman <rms@gnu.org>
14424
14425 * fileio.c (Fwrite_region): Doc fix.
14426
14427 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
14428 (redisplay_internal): Call clear_image_cache only for window terminals.
14429
144302001-12-12 Gerd Moellmann <gerd@gnu.org>
14431
14432 * xdisp.c (move_it_vertically_backward): Change heuristic
14433 for the case that we didn't move far enough initially.
14434
14435 * window.c (Frecenter): Simplify computation in the case of window
14436 system frames and ARG < 0; use window_box_height.
14437
144382001-12-11 Richard M. Stallman <rms@gnu.org>
14439
14440 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
14441 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
14442
144432001-12-11 Andrew Innes <andrewi@gnu.org>
14444
14445 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
14446 arg is negative.
14447
144482001-12-11 Richard M. Stallman <rms@gnu.org>
14449
14450 * m/hp800.h: Split the __hpux conditional into the parts
14451 that are right for GNU/Linux too and the parts that are not.
14452 Use the former if GNU_LINUX.
14453 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
14454
14455 * s/gnu-linux.h (GNU_LINUX): Defined.
14456
144572001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14458
14459 * macros.c, msdos.c, w16select.c: Change doc-string comments to
14460 `new style' [w/`doc:' keyword].
14461
144622001-12-10 Jason Rumney <jasonr@gnu.org>
14463
14464 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
14465 before using.
14466
144672001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14468
14469 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
14470 keyword].
14471
144722001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
14473
14474 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
14475
14476 * s/hpux10.h (srand48): Don't undefine.
14477
144782001-12-09 Jason Rumney <jasonr@gnu.org>
14479
14480 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
14481 Add comment to explain where the struct came from.
14482 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
14483 (add_menu_item): Process pop-up menus first to avoid memory leak.
14484 (add_menu_item, w32_menu_display_help): Use `help' field as
14485 Lisp_Object.
14486 (w32_free_submenu_strings): Only free owner-drawn strings.
14487
144882001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14489
14490 * COPYING: Moved back.
14491
14492 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
14493 Add parentheses around && within ||.
14494
14495 * indent.c (compute_motion): Likewise.
14496
14497 * intervals.c (merge_properties_sticky): Likewise.
14498
14499 * coding.c (setup_coding_system, shrink_encoding_region)
14500 (Fdecode_sjis_char): Likewise.
14501
145022001-12-07 Andreas Schwab <schwab@suse.de>
14503
14504 * xdisp.c (display_mode_element): Don't read past end of string if
14505 it ends with '%'.
14506
14507 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
14508 can hold.
14509
14510 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
14511 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
14512 type changed to Lisp_Object.
14513 (syms_of_data): DEFVAR_LISP them.
14514
145152001-12-07 Richard M. Stallman <rms@gnu.org>
14516
14517 * callproc.c (init_callproc): Set Vdata_directory based on the source
14518 location whenever Emacs was run uninstalled.
14519
145202001-12-06 Paul Eggert <eggert@twinsun.com>
14521
14522 * config.in (HAVE_WORKING_VFORK): New #undefs.
14523 * process.c (create_process):
14524 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
14525 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
14526 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
14527 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
14528 * m/intel386.h (HAVE_VFORK): Likewise.
14529 * m/mips-siemens.h (HAVE_VFORK): Likewise.
14530 * m/mips.h (HAVE_VFORK): Likewise.
14531 * s/freebsd.h (vfork): Remove #define.
14532 * s/lynxos.h (HAVE_VFORK): Remove #undef.
14533 * s/usg5-4-2.h: Fix comment about vfork.
14534
145352001-12-06 Richard M. Stallman <rms@gnu.org>
14536
14537 * s/hpux10.h (random): Add undef.
14538 (HAVE_RANDOM): Define it just once.
14539
145402001-12-06 Stefan Monnier <monnier@cs.yale.edu>
14541
14542 * eval.c: Undo last change: the standard syntax is not wanted.
14543
145442001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
14545
14546 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
14547 scroll bars of the frame before deleting the frame itself. If the
14548 frame has a widget, delete the frame with XtDestroyWidget, and do
14549 not call XDestroyWindow before that.
14550
145512001-12-06 Kim F. Storm <storm@cua.dk>
14552
14553 * xfns.c (x_report_frame_params): Return actual fringe widths.
14554
14555 * w32fns.c (x_report_frame_params): Return actual fringe widths.
14556
145572001-12-05 Andrew Innes <andrewi@gnu.org>
14558
14559 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
14560 excessively large.
14561
14562 * insdel.c (make_gap_larger): New function.
14563 (make_gap_smaller): New function.
14564 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
14565 Call make_gap_smaller if arg is negative.
14566
145672001-12-04 Stefan Monnier <monnier@cs.yale.edu>
14568
14569 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
14570 Pass a dummy argument when calling interrupt_signal.
14571 (parse_menu_item): Mark disabled items before checking for empty def.
14572 (read_char_minibuf_menu_prompt): Make safety more visible.
14573 (read_key_sequence): Add a `first_unbound' variable.
14574 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
14575 unbound prefix as soon as we can detect it.
14576
14577 * doc.c (Fsnarf_documentation): Add prototype.
14578 (get_doc_string): Handle negative arguments.
14579 (Fdocumentation): Use AREF and ASIZE.
14580 Move the calls to get_doc_string to a single place.
14581 Don't confuse an interactive-spec for a docstring reference.
14582 (Fdocumentation_property): Take advantage of the fact that
14583 get_doc_string now ignores the sign of the docstring position.
14584
14585 * eval.c: Use standard syntax for usage in docstrings.
14586
145872001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14588
14589 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
14590
145912001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14592
14593 * xterm.c (x_draw_image_relief): Use predefined macro instead of
14594 constant when the value of `tool_bar_button_relief' is negative.
14595
145962001-12-02 Richard M. Stallman <rms@gnu.org>
14597
14598 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
14599 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
14600
14601 * fileio.c (read_non_regular): Delete Fsignal call.
14602
146032001-12-01 Stefan Monnier <monnier@cs.yale.edu>
14604
14605 * lisp.h (run_hook_list_with_args): Undo last change.
14606
146072001-12-01 Gerd Moellmann <gerd@gnu.org>
14608
14609 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
14610
146112001-12-01 Jason Rumney <jasonr@gnu.org>
14612
14613 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
14614
14615 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
14616 [!WM_MOUSELEAVE]: Define.
14617
14618 * w32menu.c (current_popup_menu, get_menu_item_info):
14619 (set_menu_item_info): New vars.
14620 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
14621 (w32_menu_show): Set current_popup_menu.
14622 (add_menu_item): Allocate new strings for owner-drawn menu items
14623 and help strings.
14624 Use owner-draw for disabled menu items again.
14625 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
14626 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
14627
14628 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
14629 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
14630 <WM_EXITMENULOOP>: Free menu strings.
14631 <WM_MOUSELEAVE>: Stop tracking mouse.
14632 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
14633
14634 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
14635 and mouse face.
14636
146372001-12-01 Kim F. Storm <storm@cua.dk>
14638
14639 The following changes add left-fringe and right-fringe
14640 frame parameters to adjust fringe widths, or remove one or
14641 both fringes.
14642
14643 * frame.h (struct frame): Remove trunc_area_pixel_width and
14644 trunc_area_cols fields.
14645 (Qleft_fringe, Qright_fringe): Declare.
14646 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
14647
14648 * frame.c (Qleft_fringe, Qright_fringe): New vars.
14649 (syms_of_frame): Initialize them.
14650
14651 * window.c (coordinates_in_window): Handle separate left and right
14652 fringe widths.
14653
14654 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
14655 and fringe_cols fields.
14656 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
14657 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
14658 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
14659 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
14660 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
14661 (x_compute_fringe_widths): Add prototype.
14662
14663 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
14664 fill fringe evenly with small dashes.
14665 (x_draw_fringe_bitmap): Clear background if necessary. Align and
14666 clip the new ZV bitmap to avoid jitter between rows.
14667 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
14668 background. Don't draw fringe bitmaps if fringe width is zero.
14669 (x_compute_fringe_widths): New function.
14670 (x_new_font, x_set_window_size_1): Use it.
14671
14672 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
14673 (x_set_frame_parameters): Process `font' parameter before other
14674 parameters as fringe widths depend on it.
14675 (x_set_fringe_width): New function.
14676 (x_figure_window_size): Use x_compute_fringe_widths.
14677 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
14678 parameters.
14679
14680 * widget.c (set_frame_size): Use x_compute_fringe_widths.
14681 (EmacsFrameSetCharSize): Ditto.
14682
14683 * w32term.h: Merged changes from xterm.h.
14684 * w32term.c: Merged changes from xterm.c.
14685 * w32fns.c: Merged changes from xfns.c.
14686
146872001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14688
14689 * COPYING: Removed.
14690
146912001-11-29 Dave Love <fx@gnu.org>
14692
14693 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
14694 extra extra slot.
14695 (detect_coding_mask): Fix call of detect_coding_iso2022.
14696
146972001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14698
14699 * fileio.c (file-name-coding-system)
14700 (default-file-name-coding-system): Doc fix (links to referenced
14701 variables added).
14702
147032001-11-28 Stefan Monnier <monnier@cs.yale.edu>
14704
14705 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
14706 Add dummy uses of gcproN variables.
14707
14708 * category.c (describe_category, describe_category_1)
14709 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
14710 (syms_of_category): Don't defsubr Sdescribe_categories.
14711
147122001-11-28 Richard M. Stallman <rms@gnu.org>
14713
14714 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
14715
14716 * Makefile.in (lispdir): New variable, referring to build dir.
14717 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
14718
147192001-11-28 Andrew Innes <andrewi@gnu.org>
14720
14721 * w32menu.c (w32_menu_display_help): Actually add the new argument
14722 OWNER.
14723
147242001-11-28 Jason Rumney <jasonr@gnu.org>
14725
14726 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
14727 menu items. From David Ponce <dponce@wanadoo.fr>.
14728 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
14729 conditionally.
14730 (w32_menu_display_help): New argument OWNER. Rewritten to store a
14731 help event in the owner frame's keyboard buffer.
14732
14733 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
14734 (Fx_show_tip): Don't subtract last width from row width.
14735
14736 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
14737 (w32_read_socket): Use EQ to compare frames.
14738
147392001-11-28 Gerd Moellmann <gerd@gnu.org>
14740
14741 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14742 OVERLAPS_P.
14743
147442001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14745
14746 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
14747 `gcpro3' and `gcpro4'.
14748
14749 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
14750
147512001-11-28 Stefan Monnier <monnier@cs.yale.edu>
14752
14753 * ccl.c: Use AREF and ASIZE.
14754
147552001-11-27 Stefan Monnier <monnier@cs.yale.edu>
14756
14757 * lisp.h (run_hook_list_with_args): Remove.
14758 (LIST_END_P): Fix call to wrong_type_argument.
14759 (make_fixnum_or_float): Use EMACS_INT rather than int.
14760
147612001-11-26 Stefan Monnier <monnier@cs.yale.edu>
14762
14763 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
14764 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
14765
14766 * eval.c: Use AREF and ASIZE.
14767 (Ffetch_bytecode): Add the file name to the error message.
14768
14769 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
14770 which match the end of the file-name.
14771 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
14772 is not a valid env var, but leave it as is instead.
14773
14774 * keymap.c (access_keymap): Handle t bindings like nil bindings.
14775 Make nil bindings in char-tables transparent.
14776 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
14777
147782001-11-26 Richard M. Stallman <rms@gnu.org>
14779
14780 * textprop.c (set_text_properties_1): Allow START, END in either order.
14781 Do nothing if range is empty.
14782
14783 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
14784
14785 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
14786 (clean): Not here.
14787
147882001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14789
14790 * textprop.c (set_text_properties_1): Clearly mark that the
14791 interval should not be empty.
14792
14793 * intervals.c (graft_intervals_into_buffer):
14794 Don't call set_text_properties_1 on an empty interval.
14795
147962001-11-25 Richard M. Stallman <rms@gnu.org>
14797
14798 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
14799
14800 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
14801 don't lose the data in it.
14802
148032001-11-25 Juanma Barranquero <lektu@terra.es>
14804
14805 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
14806
14807 * buffer.c (Fkill_buffer): Likewise.
14808
14809 * print.c (temp_output_buffer_setup): Likewise.
14810
148112001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14812
14813 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
14814
148152001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
14816
14817 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14818 Niemitalo <kon@iki.fi>.
14819
148202001-11-25 Jason Rumney <jasonr@gnu.org>
14821
14822 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
14823
14824 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14825 (Fx_show_tip): Block input during frame creation.
14826 (Fx_show_tip, Fx_hide_tip): Enable.
14827
148282001-11-24 Richard M. Stallman <rms@gnu.org>
14829
14830 * lread.c (Fload): Detect recursive load error for more than 3
14831 nestings of the same file.
14832 (Vrecursive_load_depth_limit): Variable deleted.
14833 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
14834
148352001-11-24 Jason Rumney <jasonr@gnu.org>
14836
14837 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14838 mouse position if either left or top is not specified.
14839
14840 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14841 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14842 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14843 (my_create_tip_window): Assign tip_window.
14844 (x_create_tip_frame): Use same defaults as X.
14845 (compute_tip_xy): Remove unused variable. Use full screen width.
14846 (Fx_show_tip): Do not double height. Call ShowWindow directly.
14847
14848 * w32term.c (x_after_update_window_line): Doc fix.
14849 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14850 frames.
14851 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
14852
14853 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14854 for all Windowed systems.
14855
148562001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
14857
14858 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14859 realized, use the initial screen colors to clear the screen.
14860
148612001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14862
14863 * textprop.c (Fset_text_properties): Remove unused variables
14864 `unchanged', `prev_changed', `s' and `len'.
14865
14866 * search.c (Freplace_match): Remove unused variable `inslen'.
14867
14868 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14869
148702001-11-22 Jason Rumney <jasonr@gnu.org>
14871
14872 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14873 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14874 (my_create_tip_window): New function.
14875 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14876 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14877
148782001-11-20 Jason Rumney <jasonr@gnu.org>
14879
14880 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14881 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14882
14883 * w32fns.c (Vw32_system_coding_system): Remove.
14884 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14885
148862001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14887
14888 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14889 after build_annotations.
14890
14891 * syntax.c (describe_syntax): Add dummy arg.
14892 (describe_syntax_1): Update call to describe_vector.
14893
14894 * category.c (describe_category): Add dummy arg.
14895 (describe_category_1): Update call to describe_vector.
14896
14897 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14898 (describe_command, describe_translation): Add dummy second param.
14899 (describe_map): Call elt_describer with two arguments.
14900 (describe_vector_princ): Add `fun' parameter.
14901 Call it instead of the hardcoded `princ'.
14902 (describe_vector): Add arg `args'.
14903 Pass it as a new second argument to elt_describer.
14904
14905 * keymap.h (describe_vector): Update prototype.
14906
14907 * frame.c: Don't include keymap.h any more.
14908 (keys_of_frame): Remove.
14909
14910 * lisp.h (keys_of_frame): Remove declaration.
14911
14912 * emacs.c (main): Don't call `keys_of_frame' any more.
14913
149142001-11-14 Andreas Schwab <schwab@suse.de>
14915
14916 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14917 if defined, 0 otherwise.
14918 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14919 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
14920
149212001-11-19 Richard M. Stallman <rms@gnu.org>
14922
14923 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
14924
149252001-11-18 Jason Rumney <jasonr@gnu.org>
14926
14927 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14928 (x_draw_bar_cursor): If the background color of the glyph under
14929 the cursor equals the frame's cursor color, use the glyph's
14930 foreground color for drawing the bar cursor.
14931 (x_after_update_window_line): Clear internal border in different
14932 circumstances.
14933 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14934 (w32_draw_relief_rect): Correct relief by 1 pixel.
14935 (x_set_glyph_string_background_width):
14936 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14937 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14938 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14939 if cursor_in_non_selected_windows is false.
14940 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14941 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14942 Notice if cursor gets overwritten.
14943 (notice_overwritten_cursor): Renamed from
14944 note_overwritten_text_cursor. Rewritten to take glyph widths
14945 into account, and to take X positions as parameters.
14946 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14947 around call to x_draw_glyphs.
14948 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14949 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14950 color to use for image glyph reliefs.
14951 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14952 (glyph_rect): Remove unused variable `area'.
14953
14954 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14955 some items.
14956 (x_set_internal_border_width): Set frame garbaged when window
14957 doesn't exist yet.
14958 (Fx_create_frame): Accept zero tool_bar_button_relief.
14959 (x_clear_image_1, four_corners_best, image_background)
14960 (image_background_transparent): New functions.
14961 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14962 (gs_format): Add `:background' entry.
14963 (lookup_image): Set IMG's background color if specified.
14964 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14965 when appropriate.
14966 (x_clear_image_1): Reset `background_valid' and
14967 `background_transparent_valid' fields.
14968 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14969 calculating it here. Set IMG's background_transparent field.
14970 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14971 (enum png_keyword_index): Add PNG_BACKGROUND.
14972 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14973 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14974 (enum gif_keyword_index): Add GIF_BACKGROUND.
14975 (enum gs_keyword_index): Add GS_BACKGROUND.
14976 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14977 Pre-calculate image background color where necessary.
14978 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14979 Use display info's n_cbits entry for screen depth.
14980 (Fx_show_tip): Remove unused variables `buffer', `top',
14981 `left', `max_width' and `max_height'.
14982
14983 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
14984
149852001-11-18 Gerd Moellmann <gerd@gnu.org>
14986
14987 * puresize.h (BASE_PURESIZE): Increase to 750000.
14988
149892001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14990
14991 * frame.c (Fframe_live_p): Doc fix.
14992
149932001-11-18 Richard M. Stallman <rms@gnu.org>
14994
14995 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14996 (message_dolog_marker3): New static variables hold three markers.
14997 (syms_of_xdisp): Initialize and staticpro them.
14998 (message_dolog): Use message_dolog_marker1..3 instead of
14999 allocating markers each time. Unchain them when done.
15000
150012001-11-17 Richard M. Stallman <rms@gnu.org>
15002
15003 * doc.c (Fsnarf_documentation): Doc fix.
15004
150052001-11-17 Andreas Schwab <schwab@suse.de>
15006
15007 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
15008
150092001-11-17 Richard M. Stallman <rms@gnu.org>
15010
15011 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
15012
150132001-11-17 Jason Rumney <jasonr@gnu.org>
15014
15015 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
15016
150172001-11-17 Gerd Moellmann <gerd@gnu.org>
15018
15019 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
15020 with invalid position.
15021
150222001-11-16 Richard M. Stallman <rms@gnu.org>
15023
15024 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
15025
15026 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
15027 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
15028 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
15029
15030 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
15031
150322001-11-16 Stefan Monnier <monnier@cs.yale.edu>
15033
15034 * fileio.c (build_annotations): Split off the tail.
15035 (build_annotations_2): New fun. Extracted from build_annotations.
15036 (Fwrite_region): Split the call to build_annotations into two
15037 calls to build_annotations and build_annotations_2.
15038
150392001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15040
15041 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
15042 clear_waiting_for_input with argument.
15043
15044 * xterm.h (x_update_cursor): Remove duplicated prototype.
15045
15046 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
15047
15048 * xterm.c (waiting_for_input): Remove unnecessary declaration.
15049
15050 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
15051
150522001-11-16 Stefan Monnier <monnier@cs.yale.edu>
15053
15054 * fileio.c (choose_write_coding_system): New fun, extracted
15055 from Fwrite_region.
15056 (Fwrite_region): Use it.
15057
15058 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
15059 (funcall_lambda, run_hook_with_args): Make static and add prototype.
15060 (ml_apply, find_handler_clause): Add prototype.
15061
150622001-11-16 Eli Zaretskii <eliz@gnu.org>
15063
15064 * config.in: Add #undef HAVE_COFF_H.
15065
15066 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
15067 Required for ISC 4.1.
15068
150692001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
15070
15071 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
15072 Andrew Wiseman <a.wiseman@btclick.com>.
15073
150742001-11-16 Kim F. Storm <storm@cua.dk>
15075
15076 The following changes are made to clean up the various internal
15077 references to the fringes to actually use the term `fringe' for
15078 them. Previously, they were called `flags areas', `bitmap areas',
15079 `left/right side of windows', or implicitly as `flags' or
15080 `bitmaps':
15081
15082 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
15083 Comments fixed. Use renamed symbols.
15084
15085 * dispnew.c: Comment fix. Use renamed symbols.
15086
15087 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
15088 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
15089 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
15090
15091 * msdos.c: Comment fix.
15092
15093 * w32fns.c: Use renamed symbols.
15094
15095 * w32term.c: Comment fixes. Use renamed symbols.
15096 (fringe_bitmap_type): Renamed from bitmap_type.
15097 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
15098 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
15099 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
15100
15101 * w32term.h: Comment fixes. Use renamed symbols.
15102 (fringes_extra): Renamed from flags_areas_extra.
15103 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
15104 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
15105 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
15106 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
15107 (FRAME_X_LEFT_FRINGE_WIDTH):
15108 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
15109 (FRAME_X_RIGHT_FRINGE_WIDTH):
15110 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
15111
15112 * widget.c: Use renamed symbols.
15113
15114 * window.c: Comment fixes. Use renamed symbols.
15115 (coordinates-in-window-p): Doc fix.
15116
15117 * xdisp.c: Comment fixes. Use renamed symbols.
15118
15119 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
15120
15121 * xfns.c: Use renamed symbols.
15122
15123 * xterm.c: Comment fixes. Use renamed symbols.
15124 (fringe_bitmap_type): Renamed from bitmap_type.
15125 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
15126 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
15127 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
15128
15129 * xterm.h: Comment fixes. Use renamed symbols.
15130 (fringes_extra): Renamed from flags_areas_extra.
15131 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
15132 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
15133 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
15134 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
15135 (FRAME_X_LEFT_FRINGE_WIDTH):
15136 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
15137 (FRAME_X_RIGHT_FRINGE_WIDTH):
15138 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
15139
151402001-11-15 Jason Rumney <jasonr@gnu.org>
15141
15142 * w32menu.c (add-menu-item): Make help_echo and radio buttons
15143 work for most menu items. From David Ponce
15144 <david.ponce@wanadoo.fr>.
15145
151462001-11-15 Gerd Moellmann <gerd@gnu.org>
15147
15148 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
15149 Some x_set_* function expect to be called even if old and new
15150 value are equal.
15151
15152 * xdisp.c (build_desired_tool_bar_string): Accept zero
15153 tool_bar_button_relief.
15154
15155 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
15156
15157 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
15158
15159 * xterm.c (x_draw_bar_cursor): If the background color of the
15160 glyph under the cursor equals the frame's cursor color, use
15161 the glyph's foreground color for drawing the bar cursor.
15162
15163 * dispnew.c (direct_output_forward_char): Fix character/byte
15164 position comparison.
15165
151662001-11-15 Miles Bader <miles@gnu.org>
15167
15168 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
15169 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
15170 Update arguments to find_field.
15171 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
15172 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
15173 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
15174 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
15175
151762001-11-14 Richard M. Stallman <rms@gnu.org>
15177
15178 * editfns.c (Fpropertize): Allow call with 1 arg.
15179
15180 * dispextern.h (image_background, image_background_transparent):
15181 Conditionalize on HAVE_X_WINDOWS.
15182
151832001-11-13 Richard M. Stallman <rms@gnu.org>
15184
15185 * print.c (Fprin1_to_string): Doc fix.
15186
15187 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
15188
15189 * floatfns.c (Fceiling, Ffloor): Doc fixes.
15190
15191 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
15192
15193 * fileio.c (Ffile_accessible_directory_p): Doc fix.
15194
15195 * eval.c (syms_of_eval): Doc fix.
15196
15197 * coding.c (syms_of_coding): Doc fix.
15198
15199 * doc.c (Fsnarf_documentation): Doc fix.
15200
15201 * dispnew.c (syms_of_display): Doc fix.
15202
15203 * category.c (Fget_unused_category): Doc fix.
15204
15205 * buffer.c (syms_of_buffer): Doc fixes.
15206
152072001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
15208
15209 * print.c (prin1, print): Doc fix.
15210
152112001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15212
15213 * fontset.h: Remove declarations of variables
15214 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
15215
15216 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
15217 `Vclip_large_size_font'.
15218
152192001-11-13 Jason Rumney <jasonr@gnu.org>
15220
15221 * w32fns.c: Doc fix.
15222
152232001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15224
15225 * xfaces.c (Fface_attributes_as_vector): Doc fix.
15226
15227 * fns.c: Doc fix.
15228
15229 * emacs.c: Doc fix.
15230
15231 * coding.c: Doc fix.
15232
15233 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
15234 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
15235 `new style' [w/`doc:' keyword].
15236
152372001-11-12 Richard M. Stallman <rms@gnu.org>
15238
15239 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
15240 LeaveNotify events. Only FocusIn and FocusOut do that now.
15241 (x_display_and_set_cursor): Do display hollow cursors in active
15242 minibuffer windows when they are not selected.
15243
152442001-11-12 Jason Rumney <jasonr@gnu.org>
15245
15246 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
15247 * w32term.c: Change doc-string comments to `new style'
15248 [w/`doc:' keyword]. Doc fixes.
15249
15250 * w32fns.c: Don't define max.
15251 (Fx_open_connection): Only execute once.
15252
152532001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15254
15255 * ccl.c: Change macros to use do-while block instead of if-else.
15256 Use braces to follow GNU Coding Standards.
15257
152582001-11-11 Richard M. Stallman <rms@gnu.org>
15259
15260 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
15261
15262 * lread.c (read_escape): Use end_of_file_error for reporting eof.
15263
15264 * insdel.c (replace_range): Use adjust_markers_for_replace
15265 instead of adjust_markers_for_delete and adjust_markers_for_insert.
15266
15267 * intervals.h (set_text_properties, set_text_properties_1): Declare.
15268
15269 * textprop.c (set_text_properties_1): New subroutine
15270 broken out of set_text_properties.
15271 (set_text_properties): Use set_text_properties_1.
15272
15273 * intervals.c (graft_intervals_into_buffer):
15274 Use set_text_properties_1 to clear out properties.
15275
15276 * search.c (Freplace_match): Use replace_range to insert
15277 and delete. Don't request property inheritance from
15278 surrounding text.
15279
152802001-11-10 Jason Rumney <jasonr@gnu.org>
15281
15282 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
15283 vertical fonts. Allow them if face name is explicitly specified.
15284 Do not give up if we find a font that cannot be converted to an xlfd.
15285
152862001-11-10 Gerd Moellmann <gerd@gnu.org>
15287
15288 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
15289 instead of malloc/free.
15290
152912001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15292
15293 * xfaces.c (merge_face_vectors): Use braces to follow GNU
15294 Coding Standards.
15295 (Finternal_set_lisp_face_attribute): Likewise.
15296
15297 * buffer.c (Fbury_buffer): Likewise.
15298
15299 * indent.c (current_column_1): Remove unused variable `prev_col'.
15300
15301 * coding.c (encode_coding): Use precomputed value of `src'.
15302 (encode_coding): Remove unused variable `src_end'.
15303 (code_convert_region): Remove unused variables `count'.
15304
153052001-11-07 Jason Rumney <jasonr@gnu.org>
15306
15307 * w32term.c (x_display_and_set_cursor): Do not move system caret
15308 if cursor_glyph is NULL.
15309
153102001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15311
15312 * keymap.c (access_keymap): Fix compilation error.
15313
153142001-11-07 Miles Bader <miles@gnu.org>
15315
15316 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
15317
153182001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15319
15320 * intervals.c (graft_intervals_into_buffer):
15321 Remove #ifdef'd-out code.
15322 (graft_intervals_into_buffer): Remove unused variable `middle'.
15323
15324 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
15325 code (eval-current-buffer).
15326 Change doc-string comments to `new style' [w/`doc:' keyword].
15327
153282001-11-06 Richard M. Stallman <rms@gnu.org>
15329
15330 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
15331
153322001-11-06 Stefan Monnier <monnier@cs.yale.edu>
15333
15334 * lread.c (read1): Fix behavior with nested backquoting.
15335
15336 * keyboard.c (make_lispy_event): Check integerness and fix
15337 Lisp_Object/int mixup.
15338
153392001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15340
15341 * fns.c (copy_hash_table): Remove unused variable `v'.
15342
15343 * fontset.c (fontset_font_pattern): Remove unused variable
15344 `family_registry'.
15345
15346 * indent.c (current_column_1): Remove unused variable `prev_col'.
15347
153482001-11-05 Richard M. Stallman <rms@gnu.org>
15349
15350 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
15351
15352 * buffer.c (Fkill_buffer): Don't delete auto save file
15353 if buffer is modified.
15354
153552001-11-05 Andrew Innes <andrewi@gnu.org>
15356
15357 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
15358 CHECK_NUMBER_CDR.
15359
153602001-11-05 Richard M. Stallman <rms@gnu.org>
15361
15362 * unexelf.c (unexec): Minor changes; clean up comments.
15363
153642001-11-05 Sam Steingold <sds@gnu.org>
15365
15366 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
15367
153682001-11-05 Andreas Schwab <schwab@suse.de>
15369
15370 * sound.c (sound_perror): Save errno from being clobbered.
15371
153722001-11-05 Dale Hagglund <rdh@yottayotta.com>
15373
15374 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
15375 the program image directly.
15376
153772001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15378
15379 * buffer.h (Fbuffer_local_value): Add prototype.
15380
153812001-11-04 Richard M. Stallman <rms@gnu.org>
15382
15383 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
15384 and CHECK_BUFFER.
15385
15386 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
15387 (record_char): Likewise.
15388
15389 * keyboard.c (make_lispy_event): Don't insist a drag event must
15390 move to a different buffer position. Instead, check for moving at
15391 least double_click_fuzz.
15392
15393 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
15394
15395 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
15396
15397 * indent.c (current_column_1, Fmove_to_column): Separate the code
15398 for display-table glyphs from the code for buffer text, to fix
15399 bugs in the former.
15400
154012001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
15402
15403 * buffer.c (Fbuffer_local_value): New function.
15404 (syms_of_buffer): Defsubr it.
15405
15406 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
15407 value of `cursor-in-non-selected-windows'.
15408
15409 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
15410 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
15411 (syms_of_xdisp): Initialize it.
15412
154132001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15414
15415 * xfns.c (Fx_create_frame): Doc fix.
15416
15417 * coding.c: Change doc-string comments to `new style' [w/`doc:'
15418 keyword].
15419
15420 * eval.c (top_level_value, top_level_set): Remove commented and
15421 #ifdef'd-out code.
15422 (Fdefvar): Fix usage in doc-string.
15423
154242001-11-03 Richard M. Stallman <rms@gnu.org>
15425
15426 * xfns.c: Include unistd.h, if it exists.
15427
15428 * editfns.c: Move the include of ctype.h after unistd.h.
15429
15430 * gmalloc.c: Test BROKEN_PROTOTYPES.
15431
154322001-11-03 Ken Raeburn <raeburn@gnu.org>
15433
15434 * lisp.h (CHECK_STRING_CAR): New macro.
15435 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
15436 treating XCAR and XCDR as lvalues.
15437 (openp): Use CHECK_STRING_CAR.
15438 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
15439
154402001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
15441
15442 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
15443 (SIGMASKTYPE): Define.
15444
15445 * syssignal.h (sigunblock): Don't define if already defined.
15446
154472001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15448
15449 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
15450 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
15451 Fix typos in comments.
15452
15453 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
15454 and #ifdef'd-out code.
15455 Fix and reindent comments.
15456
15457 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
15458
15459 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
15460 argument `i' in macros.
15461
15462 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
15463 `i' in macros.
15464
15465 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
15466 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
15467 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
15468 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
15469 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
15470 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
15471 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
15472 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
15473 in macros.
15474
15475 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
15476 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
15477 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
15478 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
15479 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
15480 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
15481 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
15482 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
15483 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
15484 (remove unused second argument).
15485
154862001-11-02 Stefan Monnier <monnier@cs.yale.edu>
15487
15488 * syntax.c (describe_syntax): New wrapper.
15489 (Finternal_describe_syntax_value): Rename from describe_syntax.
15490 Don't insert space at front and \n at the end.
15491 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
15492
15493 * regex.c (re_wctype): Try to fix some warnings.
15494 (regcomp, regexec): Don't forget the __restrict.
15495
154962001-11-02 Richard M. Stallman <rms@gnu.org>
15497
15498 * textprop.c (Fget_char_property): Doc fix.
15499
155002001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15501
15502 * process.c (Fstart_process): Add usage to doc-string.
15503
15504 * data.c (Fsetq_default): Ditto.
15505
15506 * callint.c (Finteractive): Ditto.
15507
155082001-11-01 Stefan Monnier <monnier@cs.yale.edu>
15509
15510 * macros.c: Don't include keymap.h any more.
15511
155122001-11-01 Richard M. Stallman <rms@gnu.org>
15513
15514 * data.c (Fmake_local_variable): Doc fix.
15515
15516 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
15517 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
15518
15519 * keymap.c (Fdescribe_buffer_bindings): Print character property
15520 bindings along with or instead of the buffer local map.
15521 Make the overriding maps override what they should.
15522
155232001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15524
15525 * window.c (grow_mini_window): Fix typo in comment.
15526
155272001-11-01 Gerd Moellmann <gerd@gnu.org>
15528
15529 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
15530 (XTset_vertical_scroll_bar): Likewise.
15531
15532 * xfns.c (x_build_heuristic_mask): Use four_corners_best
15533 instead of IMAGE_BACKGROUND.
15534
15535 * xfns.c (four_corners_best): Reindent.
15536
15537 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
15538 Handle :box so that it is possible to specify sexprs.
15539
155402001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
15541
15542 * s/hpux11.h: New file.
15543
155442001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15545
15546 * emacs.c (USAGE1): Show command line option --no-window-system
15547 instead of --no-windows in usage.
15548 (standard_args): Rename --no-windows to --no-window-system.
15549 (bug_reporting_address): Follow Emacs coding conventions.
15550
15551 * eval.c (Fcommandp): Doc fix.
15552 Change doc-string comments to `new style' [w/`doc:' keyword].
15553
15554 * frame.c (Fframe_live_p): Doc fix.
15555
15556 * buffer.c (selective-display-ellipses): Doc fix.
15557
155582001-10-31 Gerd Moellmann <gerd@gnu.org>
15559
15560 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
15561
15562 * xfaces.c (realize_x_face): If C is not a single-byte character,
15563 set the face's colors_copied_bitwise_p instead of the defaulted_p
15564 members which have a different meaning.
15565 (free_face_colors): Do nothing for a face whose colors have been
15566 copied bitwise.
15567
15568 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
15569
155702001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15571
15572 * marker.c, mocklisp.c: Change doc-string comments to `new style'
15573 [w/`doc:' keyword].
15574
155752001-10-31 Gerd Moellmann <gerd@gnu.org>
15576
15577 * fns.c (require_unwind): Return Lisp_Object.
15578
155792001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15580
15581 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
15582 (last-input-char): Revert doc-string to be the same as the
15583 doc-string of `last-input-event'.
15584
15585 * xdisp.c: Fix typos in comments.
15586
155872001-10-31 Gerd Moellmann <gerd@gnu.org>
15588
15589 * window.c (grow_mini_window): Handle case that the root
15590 window is already smaller than the nominal mininum height.
15591
155922001-10-30 Stefan Monnier <monnier@cs.yale.edu>
15593
15594 * emacs.c (main): Don't call keys_of_macros any more.
15595
15596 * lisp.h (keys_of_macros): Remove.
15597
15598 * macros.c (keys_of_macros): Remove.
15599
15600 * xfaces.c (Fface_attribute_relative_p): Declare args.
15601
156022001-10-30 Jason Rumney <jasonr@gnu.org>
15603
15604 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
15605 (enum_font_cb2): Ignore fonts with vertical orientation.
15606
156072001-10-30 Richard M. Stallman <rms@gnu.org>
15608
15609 * keyboard.c (Finput_pending_p): Doc fix.
15610
156112001-10-30 Gerd Moellmann <gerd@gnu.org>
15612
15613 * xterm.c (x_after_update_window_line): Don't run the code
15614 clearing in borders for rows whose visible height is 0.
15615
15616 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
15617 resized_p flag is set. If not set, use the much less flickering
15618 method previously used.
15619
15620 * dispnew.c (change_frame_size_1): Set frame's resized_p.
15621
15622 * frame.h (struct frame) <resized_p>: New member.
15623
15624 * lread.c (to_multibyte): Ensure read_buffer is at least twice
15625 as large as the number of bytes to convert.
15626
15627 * lread.c (to_multibyte): New function.
15628 (read1): Use it.
15629
156302001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
15631
15632 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
15633
156342001-10-30 Gerd Moellmann <gerd@gnu.org>
15635
15636 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
15637 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
15638 if the row's fill_line_p is set and drawing the last glyph with
15639 DRAW_IMAGE_{RAISED,SUNKEN}.
15640
15641 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
15642
156432001-10-29 Stefan Monnier <monnier@cs.yale.edu>
15644
15645 * xmenu.c: Include coding.h and charset.h.
15646 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
15647 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
15648 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
15649 Explicitly set wv->help. Use `TRUE' rather than `True'.
15650 (menu_help_callback): Use empty_string.
15651
15652 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
15653 (Fx_popup_dialog): Explicitly init f.
15654 (w32_menu_display_help): Use empty_string.
15655
156562001-10-29 Richard M. Stallman <rms@gnu.org>
15657
15658 * fns.c (Frequire): Detect recursive try to require the same
15659 feature 3 or more levels deep, and get error.
15660 (require_unwind): New subroutine.
15661 (require_nesting_list): New variable.
15662 (syms_of_fns): Init and staticpro it.
15663
15664 * print.c (print_object): Clarify indication of insertion type.
15665
156662001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
15667
15668 * coding.c (syms_of_coding): Document that locale-coding-system is
15669 used for decoding input on X.
15670
15671 * window.c (Fscroll_left, Fscroll_right): Doc fix.
15672
156732001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15674
15675 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
15676 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
15677
156782001-10-29 Gerd Moellmann <gerd@gnu.org>
15679
15680 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
15681 use NO_CURSOR if cursor_in_non_selected_windows is false.
15682
15683 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
15684 the slant attribute if FRAME is t.
15685
15686 * xfns.c (x_set_internal_border_width): Set frame garbaged
15687 when X window doesn't exist yet.
15688
15689 * xterm.c (x_after_update_window_line): Clear internal border
15690 in different circumstances.
15691
15692 * xterm.c (XTread_socket) <KeyPress>: Don't use
15693 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
15694 <handa@etl.go.jp>.
15695
156962001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
15697
15698 * m/ibms390.h: New file. From Adam Thornton
15699 <athornton@sinenomine.net>.
15700
157012001-10-28 Gerd Moellmann <gerd@gnu.org>
15702
15703 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
15704
15705 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
15706 a loop counter.
15707
157082001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15709
15710 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
15711
15712 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
15713 keyword].
15714 Fix typos in comments.
15715
15716 * emacs.c (bug_reporting_address): New function.
15717 Use it when displaying usage message.
15718
15719 * minibuf.c (read_minibuf): Remove unused external declaration of
15720 variable `Qread_only'.
15721
15722 * keymap.c (access_keymap): Remove unused variable `charset'.
15723
157242001-10-28 Miles Bader <miles@gnu.org>
15725
15726 * xfaces.c (merge_face_heights): Handle TO being relative as well.
15727 Remove #ifdef'd-out code.
15728 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
15729 (syms_of_xfaces): Initialize them.
15730
157312001-10-27 Jason Rumney <jasonr@gnu.org>
15732
15733 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
15734 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
15735 position using the system caret.
15736
15737 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
15738 (w32_system_caret_height, w32_system_caret_x)
15739 (w32_system_caret_y): New variables for tracking system caret.
15740 (w32_initialize): Initialize them.
15741 (x_display_and_set_cursor): Make system caret follow the active cursor.
15742
15743 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
15744 New messages types.
15745
15746 * w32term.c (note_mouse_highlight): Clear old help_echo.
15747
157482001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15749
15750 * xterm.c: Fix typo in a comment.
15751
15752 * emacs.c: Fix typos in comments.
15753 Remove unnecessary spaces.
15754 Change doc-string comments to `new style' [w/`doc:' keyword].
15755 (USAGE2): Fix typos in usage string.
15756
15757 * xterm.c: Fix typo in a comment.
15758
15759 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
15760 emacs.c.
15761
157622001-10-27 Gerd Moellmann <gerd@gnu.org>
15763
15764 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
15765 instead of 1/2 line_height in the heuristic for skipping
15766 farther backward when target_y was not reached.
15767
15768 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
15769 Display errno only if non-zero.
15770 (sound_warning): New function.
15771 (vox_configure): Don't treat failing to set sample rate as error.
15772 (various places): Improve error messages.
15773
157742001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
15775
15776 * fileio.c (Faccess_file): Run the argument filename through
15777 Fexpand_file_name, before using it.
15778
15779 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
15780 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
15781
157822001-10-26 Gerd Moellmann <gerd@gnu.org>
15783
15784 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
15785
15786 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15787 Fix clearing in the case of scroll bars on the right.
15788
157892001-10-26 Juanma Barranquero <lektu@terra.es>
15790
15791 * w32gui.h (XImage): Add a dummy typedef.
15792
157932001-10-26 Gerd Moellmann <gerd@gnu.org>
15794
15795 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
15796
157972001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
15798
15799 * frame.c (Fframe_parameter): Fix last change.
15800
15801 * fileio.c: Revert last change (which removed old commented-out
15802 version of expand-file-name). Add a comment that explains why
15803 this old version should not be removed.
15804
158052001-10-25 Gerd Moellmann <gerd@gnu.org>
15806
15807 * frame.c (Fframe_parameter): Fix a bug whereby some
15808 ``artificial'' frame parameters, like `minibuffer' were not
15809 obtained by calling Fframe_parameters.
15810
15811 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15812 cursor differently.
15813
15814 * xdisp.c (move_it_vertically_backward): Compute line height
15815 differently. Add heuristic to try to be more compatible to 20.x.
15816
158172001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15818
15819 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15820
15821 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15822 boolean.
15823
158242001-10-25 Miles Bader <miles@gnu.org>
15825
15826 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15827 BG is a pointer to a structure, not a structure.
15828 (gif_format, png_format): Add missing commas.
15829
158302001-10-24 Richard M. Stallman <rms@gnu.org>
15831
15832 * xfaces.c (Fface_attributes_as_vector): New function.
15833 (syms_of_xfaces): Defsubr it.
15834
158352001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15836
15837 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15838 variable `area'.
15839
158402001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15841
15842 * search.c (scan_newline): Remove unused variable `selective_display'.
15843
158442001-10-25 Miles Bader <miles@gnu.org>
15845
15846 * dispextern.h (struct image): Add `background',
15847 `background_valid', and `background_transparent' fields.
15848 (image_background, image_background_transparent): New declarations.
15849 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15850 * xfns.c (image_background, image_background_transparent)
15851 (four_corners_best): New functions.
15852 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
15853 (gs_format): Add `:background' entry.
15854 (lookup_image): Set IMG's background color if specified.
15855 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15856 when appropriate.
15857 (x_clear_image_1): Reset `background_valid' and
15858 `background_transparent_valid' fields.
15859 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15860 calculating it here. Set IMG's background_transparent field.
15861 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15862 (enum png_keyword_index): Add PNG_BACKGROUND.
15863 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15864 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15865 (enum gif_keyword_index): Add GIF_BACKGROUND.
15866 (enum gs_keyword_index): Add GS_BACKGROUND.
15867 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
15868 Pre-calculate image background color where necessary.
15869 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15870 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15871 color to use for image glyph reliefs.
15872
158732001-10-24 Gerd Moellmann <gerd@gnu.org>
15874
15875 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15876 in full-width rows.
15877
15878 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15879 Fix clearing of area not covered by scroll bar.
15880
158812001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15882
15883 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15884 and `real_start'.
15885 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
15886 (glyph_rect): Remove unused variable `area'.
15887
158882001-10-24 Gerd Moellmann <gerd@gnu.org>
15889
15890 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
15891
15892 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15893 (row_containing_pos): Take additional argument DY.
15894 Treat rows ending in middle of char differently.
15895 (display_line): Handle tabs on window systems differently.
15896
15897 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15898 with additional argument.
15899
15900 * dispextern.h (row_containing_pos): Adjust prototype.
15901
15902 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15903 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15904 (try_window_id, try_window_reusing_current_matrix)
15905 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
15906 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
15907
159082001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15909
15910 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15911 gnuemacs).
15912 (HAVE_BOXES): Fix typo in comment.
15913 (push_menu_pane): Fix typo in comment.
15914
15915 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15916 of `Qwhen'.
15917 (single_display_prop_string_p): Remove unused local declarations
15918 of `Qwhen' and `Qmargin'.
15919 (string_buffer_position): Remove unused variable `around'.
15920 (store_frame_title): Remove unused variable `width'.
15921
15922 * window.c: Don't define max.
15923 (coordinates_in_window): Remove unused variable `uy'.
15924
15925 * widget.c: Don't define max.
15926
15927 * process.c: Don't define max.
15928 (create_process): Remove unused variable `buffer'.
15929
159302001-10-23 Gerd Moellmann <gerd@gnu.org>
15931
15932 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
15933
159342001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15935
15936 * xfaces.c (Finternal_set_lisp_face_attribute)
15937 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15938 frame is on a windowed display.
15939
159402001-10-23 Gerd Moellmann <gerd@gnu.org>
15941
15942 * dispnew.c (sync_window_with_frame_matrix_rows):
15943 Fix handling of windows which aren't full-width, fix handling
15944 of marginal areas.
15945
15946 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
15947
159482001-10-23 Andreas Schwab <schwab@suse.de>
15949
15950 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15951 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15952
159532001-10-23 Gerd Moellmann <gerd@gnu.org>
15954
15955 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
15956 REAL_END. Notice if cursor gets overwritten.
15957 (notice_overwritten_cursor): Take X positions as parameters.
15958 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15959 around call to x_draw_glyphs.
15960
159612001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15962
15963 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15964 instead of C) and usage.
15965
15966 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15967 of C) and usage.
15968
15969 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15970 `left', `max_width' and `max_height'.
15971
159722001-10-23 Gerd Moellmann <gerd@gnu.org>
15973
15974 * xdisp.c (display_line): For a tab continued to the next line,
15975 set row's ends_in_middle_of_char_p.
15976
159772001-10-22 Gerd Moellmann <gerd@gnu.org>
15978
15979 * xdisp.c (display_line): Fix computation of continuation lines
15980 width for TABs.
15981
159822001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15983
15984 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15985 `Qlaplace'.
15986
15987 * fileio.c: Remove unused code.
15988
159892001-10-22 Miles Bader <miles@gnu.org>
15990
15991 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15992 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15993 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15994
159952001-10-21 Jason Rumney <jasonr@gnu.org>
15996
15997 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15998
159992001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
16000
16001 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
16002 (Finsert_string): Avoid the multi-line string literals warning.
16003
160042001-10-22 Miles Bader <miles@gnu.org>
16005
16006 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
16007 (Fdocumentation): Don't use it.
16008 (syms_of_doc): Don't initialize it.
16009
16010 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
16011 * print.c (Fwith_output_to_temp_buffer): Likewise.
16012 * window.c (Fsave_window_excursion): Likewise.
16013 * editfns.c (Fsave_excursion, Fsave_current_buffer)
16014 (Fsave_restriction): Likewise.
16015 * eval.c (Frun_hooks, Frun_hook_with_args)
16016 (Frun_hook_with_args_until_failure)
16017 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
16018 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
16019 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
16020 (Funwind_protect, Fcondition_case): Likewise.
16021 * coding.c (Ffind_operation_coding_system): Likewise.
16022 * keyboard.c (Ftrack_mouse): Likewise.
16023
160242001-10-21 Miles Bader <miles@gnu.org>
16025
16026 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
16027 (Fmake_hash_table): Add usage: string to doc string.
16028 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
16029 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
16030 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
16031 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
16032 (Fml_prefix_argument_loop): Likewise.
16033
160342001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16035
16036 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
16037
16038 * sysdep.c (init_sys_modes): Change doc-string comments to `new
16039 style' [w/`doc:' keyword].
16040
16041 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
16042 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
16043 comments to `new style' [w/`doc:' keyword].
16044
160452001-10-21 Jason Rumney <jasonr@gnu.org>
16046
16047 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
16048
16049 * w32term.c (remember_mouse_glyph): New function.
16050 (w32_mouse_position): Use it.
16051 (note_mouse_movement): If the mouse moved off the glyph, remember
16052 its new position.
16053
16054 * w32term.h (struct w32_output): Correct spelling of x_compatible.
16055 (w32_display_info): Add mouse_face_overlay.
16056
16057 * w32term.c (notice_overwritten_cursor): Renamed from
16058 note_overwritten_text_cursor. Rewritten to take glyph widths into
16059 account.
16060 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
16061 (fast_find_string_pos): New function.
16062 (fast_find_position): Return the correct vpos. Add parameter
16063 STOP. In the final row, stop before glyphs having STOP as object.
16064 Don't consider glyphs that are not from a buffer.
16065 (fast_find_position) [0]: Add a presumably more correct version
16066 for after 21.1.
16067 (expose_window_tree, expose_frame): Don't compute intersections here.
16068 (expose_window): Do it here instead.
16069 (expose_window_tree, expose_window, expose_line): Return 1 when
16070 overwriting mouse-face.
16071 (expose_window): If W is the window currently being updated, mark
16072 the frame garbaged.
16073 (expose_frame): If mouse-face was overwritten, redo it.
16074 (x_use_underline_position_properties): New variable.
16075 (syms_of_xterm): DEFVAR_BOOL it.
16076 (x_draw_glyph_string): Add comment to use it in future.
16077 (x_draw_glyph_string): Restore clipping after drawing box.
16078 Fix a computation of the underline position.
16079 (w32_get_glyph_string_clip_rect): Minor cleanup.
16080 (x_fill_stretch_glyph_string): Remove an assertion.
16081 (x_produce_glyphs): Don't convert multibyte characters
16082 to unibyte characters in unibyte buffers.
16083 (cursor_in_mouse_face_p): New function.
16084 (x_draw_stretch_glyph_string): Use it to choose a different GC
16085 when drawing a cursor within highlighted text. Don't draw
16086 background again if it has already been drawn.
16087 (x_draw_glyph_string_box): Don't draw a full-width
16088 box just because the glyph row's full_width_p flag is set.
16089 (x_draw_glyphs): Fix computation of rightmost x for
16090 full-width rows.
16091 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
16092 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
16093 change bottom shadow accordingly. Some cleanup.
16094 (x_update_window_end): Handle overwritten mouse face
16095 also for tool bar windows.
16096 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
16097 DRAW is DRAW_IMAGE_RAISED.
16098 (clear_mouse_face): Return 1 if text with mouse face was
16099 actually redrawn. Make the function static.
16100 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
16101 optimize away highlighting if we pass over that same overlay again.
16102 (note_mouse_highlight): Call mouse_face_overlay_overlaps
16103 to detect a case where we have to highlight a different region
16104 despite not having left the currently highlighted region.
16105 Set mouse_face_overlay in the x_display_info. Avoid changing the
16106 mouse pointer shape when show_mouse_face has already done it, or
16107 there is no need. Handle mouse-face and help-echo in strings.
16108 (glyph_rect): New function.
16109 (w32_mouse_position): Use it to raise the threshold for mouse
16110 movement event generation.
16111 (w32_initialize_display_info): Initialize the x_display_info's
16112 mouse_face_overlay.
16113 (w32_set_vertical_scroll_bar): Don't clear a zero height
16114 or width area.
16115 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
16116 a widget to zero height.
16117
16118 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
16119 Protect unibyte strings created by replacing their multibyte
16120 equivalents in menu_items.
16121 (w32_menu_show): Don't overwrite an item's name with its key
16122 description in case the description is a multibyte string.
16123 (single_submenu): Some cleanup.
16124
16125 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
16126 (postprocess_image): New function.
16127 (lookup_image): Call it for all image types except PostScript.
16128 (x_kill_gs_process): Call postprocess_image.
16129 (tiff_error_handler, tiff_warning_handler): New functions.
16130 (tiff_load): Install them as handlers.
16131 (x_kill_gs_process): Recognize if someone has cleared the image
16132 cache under us.
16133 (valid_image_p): Protect better against invalid image
16134 specifications. Previous code could signal an error.
16135 (Fx_hide_tip, Fshow_tip): Doc fix.
16136 (Fv_max_tooltip_size): New variable.
16137 (syns_of_xfns): DEFVAR_LISP it.
16138 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
16139 window buffer to *tip* right after creating the frame. Set frame's
16140 window_width. Use a maximum tooltip size specified by
16141 Vx_max_tooltip_size, if that has valid contents.
16142 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
16143 Make sure the tooltip is completely visible.
16144 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
16145 (Fx_create_frame): Adjust the frame's height for presence
16146 of the tool bar before calling x_figure_window_size.
16147 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
16148 when the window gets smaller.
16149 (x_set_foreground_color): Set frame's cursor_pixel.
16150 (x_set_foreground_color, x_set_background_color): Cleaned up.
16151 (x_set_font): Handle case of x_new_fontset returning the same name
16152 as before, although there was a change in fontsets.
16153
161542001-10-21 Miles Bader <miles@gnu.org>
16155
16156 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
16157 (Flogxor): Add usage: string to doc string.
16158 * charset.c (Fstring): Likewise.
16159 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
16160 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
16161
161622001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16163
16164 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
16165
16166 * alloc.c: Reindent DEFUNs with doc: keywords.
16167
16168 * abbrev.c (Finsert_abbrev_table_description): Reindent.
16169
16170 * frame.c: Change doc-string comments to `new style' [w/`doc:'
16171 keyword].
16172
16173See ChangeLog.9 for earlier changes.
16174
16175;; Local Variables:
16176;; coding: iso-2022-7bit
16177;; End:
16178
16179 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
16180 Copying and distribution of this file, with or without modification,
16181 are permitted provided the copyright notice and this notice are preserved.
16182
16183;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4